USF Libraries
USF Digital Collections

Automatic generation of PLC code based on net condition event systems

MISSING IMAGE

Material Information

Title:
Automatic generation of PLC code based on net condition event systems
Physical Description:
Book
Language:
English
Creator:
Sandberg, Natalia
Publisher:
University of South Florida
Place of Publication:
Tampa, Fla.
Publication Date:

Subjects

Subjects / Keywords:
Automated manufacturing systems
Supervisory control theory
Petri nets
Discrete events systems
Ladder logic diagram
Dissertations, Academic -- Industrial Engineering -- Masters -- USF   ( lcsh )
Genre:
bibliography   ( marcgt )
theses   ( marcgt )
non-fiction   ( marcgt )

Notes

Abstract:
ABSTRACT: An important consideration in discrete event dynamic systems control theory is the selection of a suitable modeling formalism that can capture the complex characteristics of the system and the capability to automatically synthesize a controller based on the system model. Net condition event systems are well suited for modeling complex discrete event dynamic systems owing to their input and output structure, which effectively captures the behavior of the physical devices to be monitored and/or controlled. To date, net condition event systems control models have not been extensively applied to highly automated manufacturing systems and there are few guidelines on how to automatically generate Programmable Logic Controller programming languages from net condition event systems models. This research automatically converted net condition event systems control models into Programmable Logic Controller programming language and evaluated the applicability of the proposed methodology in highly automated manufacturing systems using HAS-200 as a test bed.
Thesis:
Thesis (M.S.I.E.)--University of South Florida, 2008.
Bibliography:
Includes bibliographical references.
System Details:
System requirements: World Wide Web browser and PDF reader.
System Details:
Mode of access: World Wide Web.
Statement of Responsibility:
by Natalia Sandberg.
General Note:
Title from PDF of title page.
General Note:
Document formatted into pages; contains 161 pages.
General Note:
Includes vita.

Record Information

Source Institution:
University of South Florida Library
Holding Location:
University of South Florida
Rights Management:
All applicable rights reserved by the source institution and holding location.
Resource Identifier:
aleph - 001984448
oclc - 297560421
usfldc doi - E14-SFE0002347
usfldc handle - e14.2347
System ID:
SFS0026665:00001


This item is only available as the following downloads:


Full Text
xml version 1.0 encoding UTF-8 standalone no
record xmlns http:www.loc.govMARC21slim xmlns:xsi http:www.w3.org2001XMLSchema-instance xsi:schemaLocation http:www.loc.govstandardsmarcxmlschemaMARC21slim.xsd
leader nam Ka
controlfield tag 001 001984448
003 fts
005 20090109130741.0
006 m||||e|||d||||||||
007 cr mnu|||uuuuu
008 090109s2008 flu sbm 000 0 eng d
datafield ind1 8 ind2 024
subfield code a E14-SFE0002347
040
FHM
c FHM
035
(OCoLC)297560421
049
FHMM
090
T56 (ONLINE)
1 100
Sandberg, Natalia.
0 245
Automatic generation of PLC code based on net condition event systems
h [electronic resource] /
by Natalia Sandberg.
260
[Tampa, Fla.] :
b University of South Florida,
2008.
3 520
ABSTRACT: An important consideration in discrete event dynamic systems control theory is the selection of a suitable modeling formalism that can capture the complex characteristics of the system and the capability to automatically synthesize a controller based on the system model. Net condition event systems are well suited for modeling complex discrete event dynamic systems owing to their input and output structure, which effectively captures the behavior of the physical devices to be monitored and/or controlled. To date, net condition event systems control models have not been extensively applied to highly automated manufacturing systems and there are few guidelines on how to automatically generate Programmable Logic Controller programming languages from net condition event systems models. This research automatically converted net condition event systems control models into Programmable Logic Controller programming language and evaluated the applicability of the proposed methodology in highly automated manufacturing systems using HAS-200 as a test bed.
502
Thesis (M.S.I.E.)--University of South Florida, 2008.
504
Includes bibliographical references.
516
Text (Electronic thesis) in PDF format.
538
System requirements: World Wide Web browser and PDF reader.
Mode of access: World Wide Web.
500
Title from PDF of title page.
Document formatted into pages; contains 161 pages.
Includes vita.
590
Adviser: Ali Yalcin, Ph.D.
653
Automated manufacturing systems.
Supervisory control theory.
Petri nets.
Discrete events systems.
Ladder logic diagram.
690
Dissertations, Academic
z USF
x Industrial Engineering
Masters.
773
t USF Electronic Theses and Dissertations.
4 856
u http://digital.lib.usf.edu/?e14.2347



PAGE 1

Automatic Generation of PLC Code Bas ed on Net Condition Event Systems by Natalia Sandberg A thesis submitted in partial fulfillment of the requirement s for the degree of Master of Science in Industrial Engineering Department of Industrial and Ma nagement Systems Engineering College of Engineering University of South Florida Major Professor: Ali Yalcin, Ph.D. Marilyn Barger, Ph.D. Richard Gilbert, Ph.D. William Miller, Ph.D. Date of Approval: March 3, 2008 Keywords: Automated Manufacturing System s, Supervisory Control Theory, Petri Nets, Discrete Events Syst ems, Ladder Logic Diagram Copyright 2008, Natalia Sandberg

PAGE 2

i Table of Contents List of T ables ........................................................................................................iv List of Fi gures....................................................................................................... vi ABSTRACT..........................................................................................................xi Chapter 1: Introducti on........................................................................................1 1.1 Research Goal and Object ives...................................................................2 1.2 Organization of the T hesis ..........................................................................3 1.3 Petri Nets....................................................................................................3 1.3.1 Petri Nets Marking................................................................................5 1.3.2 Petri Nets Enab ling and Firi ng Rule ......................................................6 1.3.3 Petri Ne t Properti es..............................................................................8 1.3.3.1 Petri Ne t Reachabi lity....................................................................8 1.3.3.2 Petri Net Reversibil ity.....................................................................9 1.3.3.3 Petri Net Boundednes s..................................................................9 1.3.3.4 Petri Ne t Safenes s.......................................................................10 1.3.3.5 Petri Net C onservativ eness.........................................................11 1.3.3.6 Petri Ne t Livenes s........................................................................11 1.3.4 Petri Net A nalysis Me thods................................................................12 1.3.4.1 Reachability Tree or Graph ..........................................................13 1.3.4.2 Petri Nets Incidence Ma trix and Stat e Equatio n...........................15 1.4 An Introduction to Net Condition Event System........................................17 1.4.1 Condition and Event Si gnals..............................................................17 1.4.2 Net Condition Event Syst ems.............................................................19 1.4.3 Net Condition Event Syst em Enabling and Firing Ru le.......................20 1.4.4 Net Condition Event System Ex ample................................................24 1.5 Summa ry...................................................................................................29

PAGE 3

ii Chapter 2: Litera ture Revi ew..............................................................................30 2.1 Evolution of Net C ondition Event System.................................................30 2.2 Automatic Generation of Progr ammable Logic Controller Language........37 Chapter 3: DEDS Supervisory C ontrol Synthesis Using NCE S..........................39 3.1 DEDS Supervisory Control Theory ...........................................................39 3.2 Uncontrolled System and Specificat ion M odel.......................................... 41 3.3 Controller Synthes is..................................................................................44 Chapter 4: Verification of the Control Model: Reac hability A nalysis...................49 4.1 SESA ........................................................................................................49 4.2 SESA Tank C ontrol M odel........................................................................ 50 Chapter 5: Controller Implement ation as Ladder Logi c Diagram........................61 5.1 Transformati on Algorit hm..........................................................................61 5.1.1 Tank Transfo rmation Algor ithm..........................................................62 5.2 Algorithm Im plementat ion.........................................................................70 Chapter 6: Supervisory Control Synthesis for t he HAS-200 ...............................71 6.1 HAS-200 Syst em Over view .......................................................................71 6.2 HAS-200 Control Pr oblem Descr iption ......................................................76 6.3 HAS-200 Unc ontrolled Model ....................................................................81 6.3.1 Station 1 Unc ontrolled Mo del.............................................................85 6.3.2 Station 2 Unc ontrolled Mo del.............................................................86 6.3.3 Station 5-10 Un controlled Model ........................................................88 6.4 HAS-200 Contro ller Synt hesis ..................................................................89 6.5 HAS-200 Supervisory C ontroller Veri ficati on............................................98 6.6 HAS-200 Tank Trans formation Algor ithm...............................................107 6.7 HAS-200 Algorithm Implementat ion........................................................122 Chapter 7: Conclusion, Contribut ions, and Future Research ...........................123 7.1 Conclu sions............................................................................................ 123 7.2 Contribut ions........................................................................................... 125 7.3 Future Re search .....................................................................................125

PAGE 4

iii List of Refe rences .............................................................................................127 Appendice s.......................................................................................................133 Appendix A: SESA Reachable States fo r the Tank Cont rol Model ...............134 Appendix B: Tank Algori thm Implement ation................................................140 Appendix C: Stati on 5-10 Layou t..................................................................149 Appendix D: SESA Reachable St ates for the HAS-200 ................................152 About the Author………………………………………………………………End Page

PAGE 5

iv List of Tables Table 1.1: Places and Transition for the Valve Module……..…........................ 25 Table 1.2: Places, Transitions, and C onditions for Interconnected Modules…. 27 Table 1.3: Places, Transitions, and Conditions for the Tank Uncontrolled Model…................. .................. ................ ................ ............... .......... 29 Table 3.1: Reproduction: Places, Transitions, and Conditions for the Tank Uncontrolled Model……………………………………………………... 43 Table 3.2: Places and Transitions for the Tank Specification Model………...... 44 Table 3.3: Places and Transitions for the Tank LC and Specification Model…. 46 Table 3.4: Places, Transitions, Condi tions, and Events for the Tank Control Model................ .................. .................. .................. .................. ........ 48 Table 4.1: Guide for Places and Tr ansitions of the SESA Tank Control Model…………………………………………………………………….. 51 Table 4.2: Places, Transitions, C onditions, and Events for the SESA Tank Control Model................ ............... ................ ................ .............. ...... 56 Table 4.3: Guide for the Places and Transitions for the New SESA Tank Control Model…………………………………………………………… 60 Table 6.1: Places and Transitions fo r Station 1 Uncontrolled Model………….. 84 Table 6.2: Conditions and Events for Station 1 Uncontrolled Model…………... 84

PAGE 6

v Table 6.3: Places, Transitions, C onditions, and Events for Station 1 Uncontrolled Model….……….……………………………………….… 86 Table 6.4: Places, Transitions, C onditions and Events for Station 2 Uncontrolled Model……………………………………………………... 87 Table 6.5: Places, Transitions, Condi tions, and Events for Stations 5-10 Uncontrolled Model……………………………………………………... 89 Table 6.6: Places and Transitions for the HAS-200 LC and Specification Model………………………………………………………………….…. 93 Table 6.7: Conditions and Events fo r the HAS-200 LC a nd Specification Model…………………………………………………………………….. 94 Table 6.8: Places and Transitions for the HAS-200 Contro l Model…………..... 96 Table 6.9: Conditions and Events for the HAS-200 Control Model….......... ...... 97 Table 6.10: Places and Transitions for the SESA HAS-200 Control Model…. 101 Table 6.11: Conditions and Events fo r the SESA HAS-200 Control Model..... 102 Table 6.12: Guide for the Places and Transitions for the SESA HAS-200 Control Model........... .................... .................. .................. ............. 106

PAGE 7

vi List of Figures Figure 1.1: Pe tri Net.............................................................................................4 Figure 1.2: Petri Net /O Matr ix.............................................................................4 Figure 1.3: Ar c Weight..........................................................................................6 Figure 1.4: New Ma rking Equat ions......................................................................7 Figure 1.5: Trans ition Fi re....................................................................................7 Figure 1.6: Reacha ble Mark ing.............................................................................9 Figure 1.7: (a) 2-Bounded Petri Net (b) Unbounded Pe tri Net............................10 Figure 1.8: Safe Petri Net...................................................................................10 Figure 1.9: Petri Net Conservati veness..............................................................11 Figure 1.10: Petri Net Liv eness..........................................................................12 Figure 1.11: Petri Ne t Reachabi lity.....................................................................14 Figure 1.12: Reac hability Tree............................................................................14 Figure 1.13: Petri Ne t Incidence Matrix..............................................................15 Figure 1.14: Inci dence Matr ix.............................................................................16 Figure 1.15: Petri Ne t State E quation.................................................................16 Figure 1.16: Condition and Event Si gnals..........................................................19 Figure 1.17: Spontaneous Transit ions................................................................22 Figure 1.18: Forc ed Transit ions ..........................................................................23 Figure 1.19: Event Signal Fi ring.........................................................................24

PAGE 8

vii Figure 1.20: Tank Filling and Draining Pr ocess..................................................24 Figure 1.21: NCES Model of the Valve Module..................................................25 Figure 1.22: Interconnec tion of M odules ............................................................26 Figure 1.23: NCES Uncont rolled System Model.................................................28 Figure 3.1: Supervisory Control System.............................................................40 Figure 3.2: Reproduction: Tank NC ES Uncontrolled Sy stem Model...................42 Figure 3.3: Tank S pecificati on Model .................................................................43 Figure 3.4: Locki ng Contro ller.............................................................................45 Figure 3.5: Locking Controller Sequentia l Specification fo r Tank Model.............46 Figure 3.6: Tank Control Model ..........................................................................47 Figure 4.1: SESA A nalysis R eport......................................................................50 Figure 4.2: SESA Re achable St ates ...................................................................50 Figure 4.3: Portion of SESA Tank Reachable States.........................................52 Figure 4.4: Portion of SESA Tank Control Model Pertaini ng t7..........................54 Figure 4.5: SESA Tank Control Model ................................................................55 Figure 4.6: SESA Analysis Report for the Tank C ontrol M odel...........................58 Figure 4.7: SESA Reachable State for the Tank C ontrol M odel.........................58 Figure 4.8: Reachability Graph fo r the Tank Cont rol Mode l................................59 Figure 5.1: Transformation Algorithm Fl owchart.................................................62 Figure 5.2: Portion of Tank Control Model Pertaining to Transition t1................63 Figure 5.3: Tank Control Model Inse rt Input Place fo r t1 in LLD.........................64 Figure 5.4: Tank Control Model Inse rt Condition Input for t1 in LLD...................64 Figure 5.5: Tank Control Model Inse rt Output Place for t1 in LLD......................65

PAGE 9

viii Figure 5.6: Tank Control Model Event Output fo r t1 in LLD................................65 Figure 5.7: Portion of Tank Contro l Model Pertaining to Condition C1................65 Figure 5.8: Tank Control Model Insert Input Place for C1 in LLD........................66 Figure 5.9: Tank Control Model Insert Output C1 in LLD .....................................66 Figure 5.10: Tank Control Model Insert Input Place for C4 in LLD......................67 Figure 5.11: Tank Control Model Insert Output C4 in LLD..................................67 Figure 5.12: Ladder Logic Diagram Tank Cont rol M odel....................................68 Figure 5.13: RSLogix Monitor Tags Interf ace for the Tank Control Model..........70 Figure 6.1: H AS-200 Produc ts............................................................................72 Figure 6.2: Automa tion Pyra mid.........................................................................73 Figure 6.3: H AS-200 Syst em..............................................................................75 Figure 6.4: HAS-200 Physical Layout.................................................................76 Figure 6.5: HAS-200 F illing Sequ ence...............................................................77 Figure 6.6: HAS-200 Station 1 Layout ................................................................79 Figure 6.7: HAS-200 Stati ons 2, 3, and 4 Lay out...............................................81 Figure 6.8: Station 1 Uncontrolle d Model...........................................................83 Figure 6.9: Station 1 YR B Uncontroll ed Mode l...................................................85 Figure 6.10: Station 2 YR B Uncontroll ed Model .................................................87 Figure 6.11: Stations 5-10 YRB Uncontro lled M odel..........................................88 Figure 6.12: YRB F illing S equence .....................................................................90 Figure 6.13: YRB Specific ation and LC Modul es................................................92 Figure 6.14: HAS-200 YR B Control Model.........................................................95 Figure 6.15: Portion of SES A Tank Control Model Pertaining t11, t12, and t16.99

PAGE 10

ix Figure 6.16: SESA HAS-200 Control M odel.....................................................100 Figure 6.17: SESA Analysis R eport for H AS-200............................................. 104 Figure 6.18: HAS-200 Reac hability Graph.......................................................105 Figure 6.19: SESA Analysis Repo rt HAS-200 2 Tokens ...................................107 Figure 6.20: SESA Analysis Repo rt HAS-200 3 Tokens ...................................107 Figure 6.21: Portion of H AS-200 Control Model Pertaining to Transition t1......109 Figure 6.22: HAS-200 Control Model Inse rt Input Place fo r t1 in LLD..............109 Figure 6.23: HAS-200 Control Model Insert Condition Inputs for t1 in LLD......109 Figure 6.24: HAS-200 Control Model Insert Output Place fo r t1 in LLD............110 Figure 6.25: HAS-200 Control Model Insert Event Output for t1 in LLD...........110 Figure 6.26: Portion of HAS-200 Control Model Pertaining to Condition C2.....111 Figure 6.27: HAS-200 Control Model Insert Input Place for C1 in LLD..............111 Figure 6.28: HAS-200 Control Model Insert Output C2 in LLD..........................111 Figure 6.29: Ladder Logic Diagram for the HAS-200 Cont rol Model................112 Figure 6.30: RSLogix Monitor Tags Interface for t he HAS-200 ........................122 Figure A.1: SESA Tank Reachable States for the Tank C ontrol Model............134 Figure B.1: Portion of Tank Control Model Pertaining to Transition t2..............140 Figure B.2: Tank Control Model Inse rted Input Place fo r t2 in LLD...................141 Figure B.3: Tank Control Model Insert ed Condition Inputs fo r t2 in LLD...........141 Figure B.4: Tank Control Model Insert ed Output Place for t2 in LLD................142 Figure B.5: Tank Control Model Insert ed Event Output fo r t1 in LLD................142 Figure B.6: ct1 Portion of Tank Control M odel................................................... 143 Figure B.7: Tank Control M odel Inserted Input Place forc 1t in LLD..................143

PAGE 11

x Figure B.8: Tank Control M odel Inserted Event Inputs for c 1t in LLD...............144 Figure B.9: Tank Control Model Inserted Output Place forc 1t in LLD................144 Figure B.10: Tank Control Model Inserted Event Output for c 1t in LLD............145 Figure B.11: l 1tPortion of Tank Control M odel................................................... 145 Figure B.12: Tank Control Model Inserted Event Inputs for l 1t in LLD..............146 Figure B.13: Tank Control Model Inserted Output Place forl 1t in LLD..............146 Figure B.14: Portion of Tank Contro l Model Pertaining Conditions C2 and C3..147 Figure B.15: Tank Control Model Insert Input Place for C2 in LLD....................147 Figure B.16: Tank Control Model Insert Output C2 in LLD................................148 Figure B.17: Tank Control Model Insert Input Place for C3 in LLD....................148 Figure B.18: Tank Control Model Insert Output C3 in LLD................................148 Figure C.1: Stations 5 and 6 Lay out.................................................................149 Figure C.2: Stat ion 7 Lay out.............................................................................150 Figure C.3: Stat ion 8 Lay out.............................................................................150 Figure C.4: Stat ion 9 Lay out.............................................................................151 Figure C.5: Stat ion 10 Lay out...........................................................................151 Figure D.1: SESA HAS-200 Reachable St ates.................................................152

PAGE 12

xi Automatic Generation of PLC Code Bas ed on Net Condition Event Systems Natalia Sandberg ABSTRACT An important consideration in discrete event dynamic systems control theory is the selection of a suitable modeling formalism that can capture the complex characteristics of the syste m and the capability to automatically synthesize a controller based on the system model. Net condition event systems are well suited for modeling complex di screte event dynamic systems owing to their input and output struct ure, which effectively c aptures the behavior of the physical devices to be monitor ed and/or controlled. To date, net condition event systems control models have not been extens ively applied to highly automated manufacturing systems and there are few gu idelines on how to automatically generate Programmable Logic Controlle r programming languages from net condition event systems models. This research automatically converted net condition event systems control models into Programmable Logic Controller programming language and evaluated t he applicability of the proposed methodology in highly automated manuf acturing systems using HAS-200 as a test bed.

PAGE 13

1 Chapter 1: Introduction Discrete event dynamic systems (D EDS) are asynchronous and nondeterministic systems in which state c hanges take place by the occurrence of events rather than time. Such syst ems include manufacturing, robotics, and communications systems. As DEDS become more complex, t he control and coordination of the physical devices that com pose them becomes more im portant. Therefore, in DEDS control theory the selection of a suitable modeling formalism that can capture the complex characteri stics of the system is cr itical. Several modeling formalisms have been introduced to model and control discrete event dynamic systems. Net condition event systems (NCES) are well suited for modeling complex DEDS because they possess the following characteristics: Good graphical interface which facilit ates ease of understanding of the system. Strong mathematical foundat ion for logical analysis. Ease of modification and ma intenance compared with Ladder Logic Diagrams. An input/output structure that a llows the modeling of the physical devices usually found in an automat ed manufacturing environment.

PAGE 14

2 Representation of the system be havior including concurrency, asynchronous behavior, mutual exclusion, etc. Furthermore NCES can be automat ically transformed into a Programmable Logic Controller (PLC) pr ogramming languages. In addition, the desirable logical properties and correctness of these types of PLC programming language can be verified. To date, net condition event systems control models have not been extensively applied to hi ghly automated manufacturing systems. In addition, there are few guideline s on how to automatically generate Programmable Logic Contro ller programming languages based on NCES control models. 1.1 Research Goal and Objectives The goal of this research is to automatically generate a PLC programming language for a complex manufacturing system control model. The objectives are as follows: Develop an algorithm to generat e Ladder Logic Diagram from NCES models. Develop a NCES control model of the HAS-200 system [34] focusing on the container filling sequence. Convert the NCES control m odel to Ladder Logic Diagram and evaluate the applicability of the c onversion methodology by verifying the correctness of the PLC progr amming language obtained from the algorithm.

PAGE 15

3 1.2 Organization of the Thesis The rest of this chapter introduces the fundamental concepts on petri nets (PN) and NCES. A tank filling and drai ning example is used to illustrate the NCES modeling process. The remainder of this thesis is organized into seven chapters. Chapter 2 reviews the literature on NCES and DEDS modeling formalism’s used for the automatic generatio n of PLC programming language. In Chapter 3, the fundam entals of supervisory control theory are introduced along with a NCES control model of the tank filling and draining example of Chapter 1. Chapter 4 presents the analysis tools used to verify the correctness of the tank filling and draining NCES control model from Chapter 3. Chapter 5 introduces a preliminary algorithm to convert NCES model into a PLC programming languages. Furthermore, the tank filling and draining NCES control model from Chapter 1 is transformed into a PLC pr ogramming language usin g the algorithm. Chapter 6 provides a brief introducti on to the HAS-200 system along with a NCES control model for the HAS-200. The NCES control model is analyzed for correctness and transformed into a PLC programming language using the algorithm developed in Chapter 5. Chapter 7 discusses the final conclusions and contributions of this thesis, as we ll as future areas of research. 1.3 Petri Nets A PN [3] is identified as a particula r kind of bipartite graph populated by three types of objects. These objects are places (circles), transitions (boxes), and directed arcs (arrows) connecting plac es to transitions and transitions to

PAGE 16

4 places. A place is an input place of a transition if there is a directed arc connecting this place to a transition. A pl ace is an output place of a transition if there is a directed arc connec ting the transition to the place. Figure 1.1 shows an example of a PN with two places, two transitions and four di rected arcs. In this PN p1 is an input place and p2 is an output place for transition t1. Figure 1.1: Petri Net For Figure 1.1, the input and output plac es are defined in a matrix form as follows: Figure 1.2: Petri Net /O Matrix Notice that the /O matrix show a one to repr esent the existence of an arc connecting a place (transition) to a tr ansition (place) and zero otherwise. The places and transitions are used to represent various aspects of the modeled system. For instance, an input place may represent the availability of a resource, the transitions the resource c hange from available to occupied, and the output place the resource utilization. Another example is that the places and

PAGE 17

5 transition represent the status of a device in a manufacturing process, such as a conveyor belt. If Figure 1.1 represents a conveyor belt status, then p1 means that the conveyor belt is off, t1 is the transition of the c onveyor belt from off to on, p2 means that the conveyor belt is on, and t2 is the transition of the conveyor belt from on to off. A PN is defined by a four tuple PN = (P, T, I, O) where: P is a set of n places where p P T is a set of m transitions, where t T I: P x T N is an input function that defines directed arcs from places to transitions, where N is a set of nonnegative integers. O: P x T N is an output function that defines directed arcs from transitions to places, where N is a set of nonnegative integers. 1.3.1 Petri Nets Marking A PN marking is the number of tokens in each of the net places at any given time. Graphically, a token is repr esented by a small black dot as the one shown in p1 in Figure 1.1. The distributi on of tokens in places defines the current state of the modeled system. Each place may potentially hold either no tokens or a positive number of tokens. The presenc e or absence of a token in a place can indicate whether a condition associated with this place is true or false.

PAGE 18

6 A marking of a PN with n places is represented by an ( n x 1) vector The elements of this vector are denoted as ( p ) and are nonnegative integers representing the number of tokens in the corresponding places. In a PN, o represents the initial marki ng. For example, in the PN model shown in Figure 1.1, o = (1, 0). If I(pj, ti) = K (O(pj, ti) = K ) then there exist K directed arcs connecting place pj to transition ti ( transition ti to place pj ). If I(pj, ti) = 0 (O(pj, ti) = 0 ) then there exists no directed arcs connecting place pj, to transition ti (transition ti to place pj, ). The direct arcs that connect places (transition) to transitions (places) are labeled with weight K as shown in Figure 1.3 The arc weight controls the number of tokens that can travel along the ar c. However, if the arc we ight is one, then the weight label is omitted. A PN is called ordinary [4] if all of its arc weights are one. The PN shown in Figure 1.1 is an ordinary PN. Figure 1.3: Arc Weight 1.3.2 Petri Nets Enabling and Firing Rule Tokens reside in places, travel alo ng arcs and their movement is regulated by transitions. The transition enab ling rule states that a transition ti is said to be enabled if each input place pj of ti contains at least the nu mber of tokens equal to

PAGE 19

7 the weight of the directed ar c. For example in Figure 1. 1, for the token to move from p1 to p2, t1 must be enabled. Tr ansition t1 is enabled because the input place p1 contains one token and the directed arc weight is one. If enabled in a marking, transition ti may or may not fire depending on additional interpretation. When an enabled transition ti fires, the number of tokens equal to the weight of the directed arc connecting pj to ti are removed from input places pj and then deposited in output places pn. The number of tokens deposited in the output places pn should equal the weight of the directed arc connecting ti to pn. Therefore, the firing of transition ti will generate a new marking The new marking is given by: otherwise p t p O P p if t p O p t p P p if t p p pi j i j i j i j) ( 0 ) ( : ) ( ) ( 0 ) ( : ) ( ) ( ) ( Figure 1.4: New Marking Equations For example in Figure 1.3, the firing of transition t1 removes two tokens from input place p1 and deposits two tok ens in p3 and one in p2. The marking for the PN shown in Figure 1.3 is = (2, 0, 0). After t1 fires, the new marking is = (0, 1, 2) as shown in Figure 1.5. Figure 1.5: Transition Fire

PAGE 20

8 1.3.3 Petri Net Properties The importance of modeling a system using PN is the analysis of its properties. PN properties allow one to study the dynamics of the modeled system, in terms of its states and st ate changes. There are two types of properties that can be identif ied in a PN model; the pr operties that depend on the initial marking and are calle d behavioral properties and the properties that do not depend on the initial marking and are called structural properties. For the purpose of this thesis, onl y six behavioral properties will be considered namely reachability, reversibility, boundedness, safeness, conservativeness, and liveness [4]. 1.3.3.1 Petri Net Reachability Reachability is used to determine if the modeled syst em can reach a specific state. From the previous section, one knows that the firing of a transition will change the marking of a PN Therefore, in order to determine if a system will reach a specific state, it is necessary to find the sequence of transition firings that will lead to the desired marking. A marking i is said to be reachable from marking o, if there exist a sequence of tr ansitions firing s that transform o to i. A firing sequence is denoted by = t1, t2,…ti. The set of all possible firing sequences from o is denoted by L ( o) The set of all possible markings reachable from o is called the reachability set and is denoted by R ( o) For example, in the case of the PN show n in Figure 1.6, the firing sequence = (t1, t2)

PAGE 21

9 will transform o = (1, 0, 0) into 2 = (0, 0, 1), hence 2 is said to be reachable from o. Figure 1.6: Reachable Marking 1.3.3.2 Petri Net Reversibility In some manufacturing applications it is necessary that a system returns to its initial state, such ca ses could be a machine failure or an error. A PN is said to be reversible if for each marking i in R ( o) o is reachable from i. An example of a reversible PN is shown in Figure 1.7a, where the initial marking o = (2, 0, 0) is reachable from all the markings ( 1 = (0, 1, 0); 2 = (0, 0, 1)). 1.3.3.3 Petri Net Boundedness A PN is said to be K -bounded if the number of tokens in any place pj, is always less or equal to K, where K is a nonnegative integer number. For example, the PN shown in Figure 1.7(a) is a 2-bounded PN, which means that in any reachable marking, p1, p2 and p3 holds two tokens or less. On the other hand, the PN shown in Figure 1.7(b) is unbounded, because p3 can hold an arbitrarily large number of tokens. Ve rifying that a PN is bounded will guarantee

PAGE 22

10 that the modeled system will have no over flows regardless of what firing sequence is executed. (a) (b) Figure 1.7: (a) 2-Bounded Petri Net (b) Unbounded Petri Net 1.3.3.4 Petri Net Safeness A PN is safe if it is 1-bounded, whic h means that in any reachable marking the number of tokens in each place is one or zero. Notice the difference between safe and ordinary PNs. A safe PN is or dinary, but an Ordinary PN is not always safe. For example, the unbounded PN shown in Figure 1.7b is ordinary; all of its arc weights are equal to one. However, t he PN in Figure 1.7b is not safe. On the other hand, the PN show n in Figure 1.8 is ordinary and safe. In this net, no place can contain more than one token at any reachable marking and all weights are one. p1 t1 p2 p3 t2 Figure 1.8: Safe Petri Net

PAGE 23

11 1.3.3.5 Petri Net Conservativeness A PN is said to be conservative if the number of tokens remains the same for all markings reachable R ( o) from the initial marking i. However, conservativeness can also depend on a weighted vector for cases in which resources need to be combined together fo r a task and later separated after the task is completed. A PN is said to be conservative if there exist a vector w = {w1, w2,…,wn} where n is the number of places and w(p) > 0 for each p P such that the weighted sum of tokens re mains the same for each marking i reachable from the initial marking o. The PN shown in Figure 1.19 is conservative with respect to vector w = {2,1,1,1,1,2}. p1 t1 p2 p3 t2 t4 p4 p5 t3 p6 22 Figure 1.9: Petri Net Conservativeness 1.3.3.6 Petri Net Liveness A PN model is said to be live if all markings i reachable from the initial marking o, are able to fire any transition by progressing through some firing sequence. The existence of liveness in a PN model guarantees a deadlock free system no matter what firing sequence is se lected. There are four different levels of liveness for a transition ti :: L0-live (dead): if there is no firing sequence in L ( o) for which ti can fire. L1-live : if ti can be fired at least once in some firing sequence in L( o).

PAGE 24

12 L2-live : if ti can be fired at least k times in some firing sequence in L ( o) given that k is a positive integer. L3-live : if ti: can be fired infinitely in some firing sequence in L ( o). L4-live : if ti : is L1-live in every marking in R ( o). The transitions in the PN model shown in Figure 1.10 have different levels of liveness. Transition t1, t2, t3, and t4 are L3 L1 L2 and L2 respectively. Figure 1.10: Petri Net Liveness 1.3.4 Petri Net Analysis Methods In the previous section, several proper ties of PNs were introduced. The identification of those properties in a PN model is necessary, because it will establish a relationship with the functi onal properties of the real system. Nevertheless, the use of analysis met hods such as reachability tree and the incidence matrix can study the presence or absence of PN properties. An overview of the two fundam ental methods of analysis will be presented in this section.

PAGE 25

13 1.3.4.1 Reachabilit y Tree or Graph The reachability tree or graph (RG) illustrates all the possible markings of a PN in a tree representation. The RG st arts from the initial marking and obtains all the possible new markings from all the enabled transitions. Then, from each of the new marking it obt ains the next reachable marking. The markings are represented by nodes and the transitions firings by arcs. A reachability tree can become unbounded for two reasons: The existence of duplicate markings Unbounded PNs To eliminate duplicate markings one mu st determine if the current marking is identical to a previous marking If true, is a duplicate marking and becomes a terminal node. A duplicate marking indicates that all possible markings reachable from have already been added to the tree. For unbounded PNs the tree will grow in finitely large. The symbol w is introduced to keep the tree finite. It has the property that for each integer n w > n, w n = w and w w To construct the RG of a PN t he following algorithm can be used: Step 1: Label the initial marking o as the root and tag it “new”. Step 2: While “new” markings exists, do the following: Step 2.1: Select a new marking i Step 2.2: If i .i is identical to a marking on the path from the root to i ., then tag i. “old” and go to another new marking. Step 2.3: If no transit ions are enabled at i., tag i. “dead end.”

PAGE 26

14 Step 2.4: While there exis ts enabled transitions at i ., do the following for each enabled transitions t at i.: Step 2.4.1: Obtain the marking that results from firing t at i .. Step 2.4.2: On the pat h from the root to i if there exists a marking such that ( p ) ( p ) for each place pj and then replace ( p ) by w for each pj such that ( p ) > ( p ). Step 2.4.3: Introduce as a node. Draw an arc with label t from i to and tag “new.” For example the reachability tree for Fi gure 1.11 is shown in Figure 1.12. Figure 1.11: Petri Net Reachability = (2, 0, 0, 0) t1t2 = (0, 2, 1, 0) = ( 0, 0, 0, 2 ) dead end t3t2 = (2, 0, 0, 0) = (0, 0, 0, 2)oldold 0 1 2 2 3 Figure 1.12: Reachability Tree

PAGE 27

15 1.3.4.2 Petri Nets Incidence Matrix and State Equation The incidence matrix is a method to represent and analyze the dynamic behavior of PN by using algebraic equations. The incidence matrix defines all the possible connections between the places and transitions of a PN. The incidence matrix A = [ aij ] is an n x m matrix, where n is the number of transitions and m is the number of places. The entri es are defined as follows: ij ij ija a a Where ija is the weight of t he arc from transition i to its output place j and ija is the weight of the arc from its input place j to transition i In other words, when transition ti fires, ija represents the number of tokens deposited on its output place pj ija represents the number of tokens removed from its output place pn. In order to make sure the incidence matrix properly reflects the structure of a PN, the net must be pure. A PN is said to be pur e if it has no self loops. A self loop means that no transition is both an input and an output of the same place. For example, the incidence ma trix of Figure 1.13 is shown in Figure 1.14. Figure 1.13: Petri Net Incidence Matrix

PAGE 28

16 p1p2p3 t1 -212 t2 2-1-2 =A Figure 1.14: Incidence Matrix The state equation of a PN represent s a change of the distribution of tokens as result of a transitions firing (ma rking, section 1.3.1) This equation is defined as follows: K T 1 k kM A where k= 1, 2, …. k is a m x 1 column vector representing a marking k immediately reachable from marking 1 k after firing a transition ti The k-th firing vector KM, an n x 1 column vector, has only one nonzero entry. This nonzero entry is a 1 in the i-th position that indicates the firing of transition ti in the k-th firing. This 1 entry corresponds to the i-th ro w of the incidence matrix and indicates the change of the marking. For example, Figure 1.15 illu strates the use of the state equation to obtain the new marking (= (0, 1, 2)) after transition t1 in Figure 1.13 fires. Notice that the state equation uses the tr anspose of the incide nce matrix instead of the incidence matrix. 02-22 1=0+1-11 202-20 Figure 1.15: Petri Net State Equation

PAGE 29

17 1.4 An Introduction to Net Condition Event System Net condition event systems (NCES) were developed by Hanisch and Rausch [1] based on the work in Cond ition Event System by Sreenivas and Krogh [2]. NCES are based on an or dinary safe PN extended with an input/output structure. Th is input/output structure pr ovides modularity to the uncontrolled system model, because the design includes a set of predefined modules for physical devices in an automated manufacturing environment such as actuators, pumps, valves, sensors, and stoppers. 1.4.1 Condition and Event Signals Condition Event System s provide a modular modeling formalism for discrete event dynamic syst ems. The modules of each of the devices are interconnected by means of their input/ output behavior to form the uncontrolled system model. The input/output behavior consists of two signals: condition signals and event signals [5, 8]. Condition signals provi de state (place) information to a transition. Condition signals are a piecewise c onstant signal, because they keep transmitting information whether the condition is true or false. A condition signal is true, if there is a token in the place re lated to that condition. A condition signal is false, when there is not a token in the place related to that condition. For example, a manufacturing process with a valve that opens or closes depending on the level of the liquid in the tank. A condition signal can be used to provide information of the state of the level sensor. If p2 in Figure 1.16 represents that

PAGE 30

18 the level sensor is active; then the condi tion signal from place p2 to transition t3 will sent a true signal when the level sens or alarm is active and a false signal when the level sensor is passive. Condition arcs are the ar cs that carry a conditi on signal. Condition arcs connect a place pi in one module to a transition ti in another module. Condition arcs are graphically represent ed by an arc with a black dot at its end instead of an arrow head. Condition arcs can be classified as condition inputs and condition outputs. Condition inputs and outputs are graphically represented by a small box at the border of the module as illustrated in Figure 1.16. Condition outputs are associated with places and wi ll have an incoming condition arc to the box; meanwhile condition inputs are associat ed with transitions and will have an outgoing condition arc from the box as depicted in Figure 1.16. Event signals provide information on st ate transition and ar e null except at a discrete points in time. In other words, an event signal is only true in the instance that the transit ion is fired. The rest of t he time an event signal value is null. Following the tank example previ ously explained, one can conclude that t2 in Figure 1.16 signifies that the transition of the leve l sensor from passive to active. Therefore, the event signal from transition t2 to transition t3 is only true when t2 is fired. Event arcs are the arcs t hat carry an event signal and connect a transition tj in one module to a transition tm in another module. An event arc is graphically represented by an arc with a zigzag symbol in the middle. Event arcs can be classified as event inputs and event outputs. Event outputs and inputs are

PAGE 31

19 graphically represented by a small diamond at the border of the module. Event outputs have an incoming event arc towa rds the diamond as shown in Figure 1.16. The event inputs have an outgoi ng event arc from the diamond as illustrated in Figure 1.16. Figure 1.16: Conditi on and Event Signals 1.4.2 Net Condition Event Systems Condition and event signals are us eful because they are able to characterize the interaction between t he physical components of the system. The model obtained by interconnecting the modules of the physical components by means of condition and event signals is known as net condition event system (NCES) [7]. The NCES consist of a four tuple stru cture as follows: NCES = {PN, CN, EN} where: PN is a PN is the input/output structure CN is the condition signal matrix EN is the event signal matrix

PAGE 32

20 The input/output structur e is defined as follows: = {Cin, Ein, Cout, Eout, Bc, Be, Cs, Dt} where: Cin is a set of r condition inputs Ein is a set of s events inputs Cout is a set of p condition outputs Eout is a set of q events outputs Bc {0,1}r x m is the condition input matrix Be {0,1}s x m is the event input matrix Cs {0,1}n x p is the condition output matrix Dt {0,1}m x q is the event output matrix 1.4.3 Net Condition Event System Enabling and Firing Rule In NCESs, unlike PNs, there are three enabling rules to consider before a transition t is enabled. Marking enabled: A transition tj T is marking enabled, if min ( – Fm (, j)) 0. Transition tj is said to be marking enabled if each input place pi of tj contains at least the number of to kens equal to the weight of the directed arc. The marking enabled and firing rule for NCES follows the same principles as the marking enabled and firing rule for PNs (Section 1.3.1 and 1.3.2). Condition enabled: A transition tj T is condition enabled, if min ( – CN (, j)) 0. Transition tj is said to be condition enabled when each of its

PAGE 33

21 condition inputs places (if any) are marked with a token. However the firing of transition tj will not change the marking of the condition input place. Transitions with an incoming condit ion arc and no event input are known as spontaneous transitions. Spontaneous transition can only be enabled or disabled by condition signals, but they c annot be forced to fire For example in Figure 1.17, transition t3 in m odule 2 is a spontaneous transition. Therefore, transition t3 can only fire if it is marking and condition enabled. Transition t3 is not marking enabled because there is no tok en in p4. However, transition t3 is condition enabled because there is a token in p2, which makes the condition signal true. Notice that the condition signal from p2 is not forcing t3 to fire. Also, notice that the condition signal will remain true (constant signal) as long as the token remains in p2. Transition t1 can fi re because it is marking enabled and the condition signal in p2 doesn’t a ffect the firing of t1. If the initial marking of Figure 1.12 is o = (0, 1, 0, 1), then the reachable marking after firing t1 will be = (1, 0, 0, 1). Notice, that p3 and p4 are not affe cted by the firing of t1. Now, if t3 becomes marking enabled (token in p4) and condition enabled (token in p2), then the marking is = (0, 1, 1, 0). If t3 fires a token is remove from p3 and deposit in p4. The token in p2 remains there. So, the new marking is = (0, 1, 0, 1). Take into consideration that condition arcs can only carry condition signals and no tokens.

PAGE 34

22 Figure 1.17: Spontaneous Transitions Event enabled: The set Te contains all transitions which are connected with tj by an incoming event arc at tj. Te(tj) = {tm / EN (m, j) > 0}. Transition tj is said to be event enabled if there are no event inputs, or if all the transitions tm Te(tj) are marking, condition and event enabled. An event signal can force a transition to fire if enabled. A transition with an incoming event arc is known as a fo rced transition. Furthermore, all forced transitions occur at the same time instant as the event signal which forces the transition to fire. Hence, incoming event signals force transitions to fire if they are marking and condition enable d and the transitions must fire immediately. For example in Figure 1.18, trans ition t3 in module 2 is a forced transition, which means that firing transition t2 will simu ltaneously fire transition t3 if enabled. Transition t3 and t2 are marking enabled be cause there is a token in p4 and p1. Transition t3 does not have an incoming cond ition signal, but t2 does have one. Transition t2 is condition enabled since t here is a token in p5, which makes the condition signal true. The init ial marking of Figure 1.18 is o = (1, 0, 0, 1, 1, 0). If t2 fires, a token is removed from p1 and deposited in p2. Since t3 fires simultaneously, a token will be remov ed from p4 and deposited in p3. The new

PAGE 35

23 marking will be = (0, 1, 1, 0, 1, 0). Take into consideration that events arcs can only carry event signals and not tok ens. Notice, that p5 and p6 are not affected by the firing of t2 and t3. Furthermore, observe that both transition t2 and t3 fire simultaneously creating a new marking in only one step. If p5 did not have a token, then t2 will no longer be condition enabled and will not be able to fire. Figure 1.18: Forced Transitions Another example is shown in Figure 1. 19. Transition t3 must be marking, condition and event enabled to fire. The initial marking for the NCES in Figure 1.19 is o = (1, 0, 0, 1, 1, 0). In this case transition t2 can fire but t3 cannot. Transition t2 and t3 are marking enabled, but t3 is not condition enabled (no token in p6). If transition t2 fires the new marking will be = (0, 1, 0, 1, 1, 0) and the marking of the places in module 2 will remain unchanged until a token comes back to p1 again.

PAGE 36

24 Figure 1.19: Event Signal Firing 1.4.4 Net Condition Event System Example To illustrate the basic concepts of a NCES, let us consider the process depicted in Figure 1.20. The tank is filled with a mixt ure via a pump until the level sense high (LSH) sensor goes into alarm. After which, the draining process starts by opening the valve at the bottom of the tank. The mixture is then sent to the next step of the process. The valve will remain open until the level sense low (LSL) sensor goes into alarm. Subsequently, the valve is closed and the refilling process starts again. Figure 1.20: Tank Filling and Draining Process

PAGE 37

25 In order to develop a NCES model, it is necessary to separately model each of the devices that ar e part of the process. In this case, there are 4 devices: a pump, a valve, a LSL, and a LSH. Each of the 4 models must capture the dynamic behavior of the devices. For example, Figure 1.21 shows the NCES model of the valve module. A description of the places and transitions are shown in Table 1.1. Notice that each transiti on of the module includes a condition signal that is part of the dynamic behavior of the valve. The modeling of the other devices is similar to that of the valve. Figure 1.21: NCES Model of the Valve Module Table 1.1: Places and Transition for the Valve Module After the device models are created, t hey are interconnected by means of their signals to capture the uncontrolled behavior of the system. Lets first examine the interconnection of three modules: the valve module, the LSH module, and the LSL module as shown in Figure 1.22. Table 1.2 gives a brief description of the places, transitions and conditions for the interconnected modules. The problem description dictates that the status of the valve is Valve Module Transition Meaning Place Meaning t1 Valve opening p1 Valve close t2 Valve closing p2 Valve open

PAGE 38

26 dependent on the status of the LSL and LS H. The valve should remain open (closed) until the tank is completely drained (filled). The signal selected to represent this process is a condition signal. Notice that t4 (valve opening) will not fire until condition in 1C (LSH alarm active) is true. For identification purposes the lines representing the conditio n signals are drawn differently. in 2c out 2c out 1cin 1c Figure 1.22: Interconnection of Modules

PAGE 39

27 Table 1.2: Places, Transitions, and Conditions for Interconnected Modules LSL Module Transition Meaning Place Meaning t1 LSL alarm goes passive p1 LSL alarm active t2 LSL alarm goes active p2 LSL alarm passive Valve Module t3 Valve closing p3 Valve opened t4 Valve opening p4 Valve closed LSH Module t5 LSH alarm goes passive p5 LSH alarm active t6 LSH alarm goes active p6 LSH alarm passive Module Conditions Condition Meaning ) C C ( Cout 1 in 1 1 LSH alarm is active ) C C ( Cout 2 in 2 2 LSL alarm is active Figure 1.23 shows the NCES' model for the uncontrolled tank process including the pump. Table 1.3 gives a br ief description of the places, transitions, and conditions for the uncontrolled model. From the tank f illing and draining process description it is known that the valve and pump do not interact. Just like the valve, the pump is only dependent on the status of LSH and LSL. Condition signals are use to interconnect the four modules.

PAGE 40

28 p4 p3 t4 t3 p1 p2 t1 t2 p6 p5 t6 t5 Pump Module Valve Module LSH Module out 1Cout 2Cout 4Cin 4Cin 2Cin 1Cin 3C out 3C p8 p7 t8 t7 LSL Module Figure 1.23: NCES Uncont rolled System Model

PAGE 41

29 Table 1.3: Places, Transitions, and Cond itions for the Tank Uncontrolled Model 1.5 Summary In this chapter NCES’s and PNs, wh ich are the foundati on of NCES’s, are introduced. The NCES’s modeling process is illustrated using a basic tank filling and draining process. NCE S’s are suitable for modeling complex DEDS due to their input and output struct ure, which captures the dy namic behavior of complex DEDS more efficiently than ot her DEDS modeling formalisms. Pump Module Transition Meaning Place Meaning t1 Pump turning off p1 Pump on t2 Pump turning on p2 Pump off Valve Module Transition Meaning Place Meaning t3 Valve closing p3 Valve opened t4 Valve opening p4 Valve closed LSH Module Transition Meaning Place Meaning t5 LSH alarm goes passive p5 LSH alarm active t6 LSH alarm goes active p6 LSH alarm passive LSH Module Transition Meaning Place Meaning t7 LSH alarm goes passive p7 LSL alarm active t8 LSL alarm goes active p8 LSL alarm passive Module Conditions Condition Meaning ) C C ( Cout 1 in 1 1 LSH alarm is active ) C C ( Cout 2 in 2 2 LSL alarm is passive ) C C ( Cout 3 in 3 3 LSL alarm is passive ) C C ( Cout 4 in 4 4 LSH alarm is active

PAGE 42

30 Chapter 2: Literature Review Several formalisms are used to model and control discrete event dynamic systems (DEDS). Among them are Finite Automata [9], PNs [12], Temporal Logic [13], and NCES. This thesis focuse s on NCES. The following section will review the literature on NCES and thei r automatic transformation into PLC programming language. 2.1 Evolution of Net Condition Event System Based on the work of Ramadge and Wonham [9]; R.S. Sreenivas and B.H. Krogh [2] propose a class of discre te event dynamic system (DEDS), which they call Condition Event (C/E) Systems. Condition signals and event signals are the two classes of input and output signa ls used in C/E systems. Condition signals are piecewise constant signals. Event signals are null except for discrete points of time. Furthermore, event signa ls are graphically represented by a zigzag symbol ( ), meanwhile condition signal s flow lines use a straight arrow head ( ). The authors also define thre e qualitative properties that characterize C/E systems: causality, ti me change invariance, and spontaneity. The authors use a conveyor belt example to show the casual interconnection between the physical components of a sy stem. The example proves that condition and event signals offer a more r ealistic modeling framework than finite

PAGE 43

31 automata or formal languages. Furthermor e, they are able to verify that the conveyor belt system model has the qualit ative properties of a C/E system. C/E systems are also used to model supervis ory control applicatio ns. Their condition and event signal structure is the same structure used to connect the uncontrolled behavior of the system and its supervisor. The authors are able to develop a C/E language for a C/E system. The C/E language provides a representation for all possible orderings of the conditions and events in a C/E system. Finally, the authors show how to interconnect C/E systems in cascade and feedback configurations to obtain a discrete stat e model. In a cascade configuration two C/E systems are connected sequentially. The events in the second system are dependent on the events on the first system In a feedback configuration the condition and events signals form a closed loop with the C/E system. In [10], Sreenivas and Krogh extend the definition of standard PNs to include auxiliary predicates and an input and output structure to obtain a C/E model (C/E PN’s). A PN with auxiliar y predicates is a 6 tuple as follows: PN = (P, T Ai, Ao, o) where: P = {p1, p2,….,pn} is an ordered set of n places T = {t1, t2,….,tm} is an ordered set of m transitions Ai Nn x m is a n x m state input matrix Ao Nn xm is a n x m state output matrix = {1, 2, ….,m} x Nn {0, 1} is a computable predicate function that defines a predicate on Nn for each transition ti T o Nn is the initial marking

PAGE 44

32 The input and output structure = {Cin, Ein, Cout, Eout, Bc, Be, Cs, Dt} is the same as the one define in Chapter 1. The authors graphically re present condition inputs and outputs by squares and event in puts and outputs by diamonds. Each transition ti T has two index sets. The first set is a collection of indices of condition inputs denoted as (•c). The second set is a collection of indices of event inputs denoted as (•e). Similarly, each conditi on output has a set of indices of places and is denoted as (•p). Each event output has a set of indices of transitions and is denoted as (•t). The authors also define five enabling rules: state enabled, condition enabled, even t enabled, predicate enabled and maximally forced. Moreover, the author s define an encoding/decoding structure as follows: = (u, v, y, z) where: u:U{0, 1}r is a condition input encoding function v:V{0, 1}s is an event input encoding function y:{0, 1}p Y is a condition output decoding function z:{0, 1}q Z is a event output decoding function. A C/E PN is defined as = (N, ). The objective of the paper is the construction of a C/E PN’s resulting fr om the interconnection of subsystem models. Specifically, Screenivas and Kr ogh develop an algorithm to create a C/E PN from two C/E PN subsystems connect ed in a cascade configuration. The purpose of the algorithm is to construct an equivalent model for the resulting cascade system such that S() = S(S(1) S(2)). They also develop an algorithm to obtain an equivalent C/E PN for feedback configurations. As a result, the C/E

PAGE 45

33 PN’s obtained from the al gorithms are more compac t than the C/E models presented in [2]. M. Rausch and H.-M. Hanisch [1], insp ired by the work of Screenivas and Krogh, use a modified C/E PN to model resource allocation problems. The authors propose three modifications for C/E PN; remove the auxil iary predicates, use bounded PN, and introduce two kinds of arcs for the graphical representation of condition and event signals. The authors define PN = {P, T, F, o) where P, T and o are defined in the same manner as in [10]. F is the arcs including the token weight (incidence matrix). The input and output structure = {Cin, Ein, Cout, Eout, Bc, Be, Cs, Dt} is the same as the one define in Chapter 1. The changes transform C/E PN into NCES. The authors define NCES = {P, T, F, o, CN, EN}. They also define three enabling rules; marking enabled, condition enabled, and event enabled. Furthermore, the aut hors define spontaneous and forced transitions. They recognize that the model may contain conflicts and not all forced transition will be able to fire. Th erefore, they deve lop an algorithm to determine the maximal step in which all forced transitions must fire. The algorithm is based on another algorithm de veloped for time PNs that present the same problem [14]. However, their al gorithm is extended to analyze models composed of several small modules. The authors use NCES to model a polymer production plant. The plant consists of several reactors that need different quantities of a cooling agent. A controlle r must ensure that the cooling agent does not overload. The authors start by creating NCES modules for the reactor, for resource allocation, for pressure, and the controller. After which, they

PAGE 46

34 connect the four modules using condit ion and event signals to obtain the controlled model for the polymer plant. The desired behavior of the plant (specifications) is included in terms of forbidden states, which the controlled system avoids. They also developed a reachability graph to verify that the controller works correctly. The re sulted example proved that NCES are applicable in the modeling of re source allocation problems. In [7] Rausch and Hanisch used NCES to synthesis supervisory controller for the forbidden state problem s. They define NCES the same way that [1] does. The authors model the uncontrolled behavior of a pusher/conveyor manufacturing system as their example. The modules for the pusher/ conveyor system are safe PN. Before creating the controller, the authors explain several steps that are required in preparation for the algorit hm. First, they assign a Boolean function ET(t) (enabling term) to each transi tion. The enabling term is determined as follows: ET(t) = t iF p pi t jCN p pj ct in iB C in ic t iEN t ET(t) et in iB e in ie. Secondly, they assign a set of tr ansitions to each place denoted as TIN(pi). Thirdly they compute a function for the predecessors as follows: pred(p) =) p ( IN it t ET(t). Finally, they calculate all place invariants Ip, where iv =Ip p p = 0. A place invariant is a set of places where the su m of the tokens is constant. Then, the authors present an algorithm that transforms the specif ication into a controller function. In the algorithm they comp ute the enabling terms of the forbidden states. After which, they replace eac h place in the enabling term for its predecessor. From the resulting term, they derive a controller function by replacing the places by the appropriate ou tput signals. The authors realize that

PAGE 47

35 the state space can grow exponentially with the size of the model. This algorithm avoids the computation of the whole state space. L. E. Pinzon, H.-M. Hanisch, M. A. Ja fari and T. Boucher in [8] illustrate the advantages and disadvantages for some of the existing synthesis methods for discrete event controllers. This p aper discusses the synthesis methods for: formal languages based on the work of Ramadge and Wonham (R&W) [9], [16]; PN [17]; Timed Transitions Models (TTM ) [15]; and NCES [1], [7]. The authors use a pusher example to compare the model formalisms implementation methodology for the uncontrolled system model, specification model and controller synthesis. It is concluded that R& W and TTM have difficulty in keeping track of the resources in the un controlled system model s. On the other hand, PN and NCES use of markings facilitat es the tracking of the resources and PN’s uncontrolled system model is more complex than NCES uncontrolled system model. NCES are more compact an d precise, when modeling the casual behavior of a system. For the specif ication model, the authors analyze the modeling formalisms ability to model safe ty and sequential specifications. R&W methodology is able to model both types of specification, bu t the implementation is not trivial. TTM methodology is al so capable of modeling both types of specifications; however, the specification models are not used to synthesize the controller. PN’s are not able to model sequential specifications. NCES’s are able to model both types of specificat ions by means of forbidden states. Furthermore, the modeling specification st ructure for NCES is similar to R&W, but NCES do not consider the whole state space. Finally, the authors analyze

PAGE 48

36 the controller synthesis methodologies fo r each of the modelin g formalism. R&W and PN methodology guarantees that the supervisor is maximally permissive. A maximally permissive supervisor is one th at only restricts those events which are not legal with respect to the specificatio n. However, R&W algorithms are difficult to implement. NCES and TTM supervisor are not maximally permissive, and provide more efficient solutions because they do not consider the whole state space. Furthermore, NCES can automatica lly generate control code for PLC’s. L. E. Pinzon, H.-M. Hanisch, and M. A. Jafari along with P. Zhao continue their work [5] to develop a more effici ent synthesis method that avoids state space explosions and allows sequential specification. The authors present a NCES uncontrolled system and specificati on model. The uncontrolled system model is based on a safe PN. However, the example models do not portray any specific manufacturing process. Assuming that all transitions in the uncontrolled system are controllable, the authors obtain the admissible behavior by creating a locking controller. The locking controller uses a condition signal to ensure that a transition t is disabled whenever the controll er is in a specific state. In any other controller state, transition t will not be rest ricted. In other wo rds, the uncontrolled system model sends an event signal to the specification model. The specification model reacts by sending another event signal to the locking controller. Then, the locking controlle r will send a condition signal to the uncontrolled system that locks the forbidden transition. The main contribution of this paper is an algorithm that obtains the admissible behavior of a system in the presence of uncontrollable events. The algorithm identifies and keeps track of

PAGE 49

37 the set of states that enable the uncont rollable transitions. As a result, the authors obtain a locking controller mode l that prevents the enabling of the uncontrolled transition in a minimally re strictive way and that includes the admissible behavior of the system. 2.2 Automatic Generation of Prog rammable Logic Controller Language Programmable Logic Controllers (P LC’s) [18 19] have been used in automated manufacturing systems sinc e the 1970’s. The PLC programming language was design using logic and symbols similar to electrical circuit diagrams. Therefore, electricians and technicians were able to easily use, program, and debug PLC’s. The invention of PLC’s br ought many advantages to the manufacturing floor such as speed, flexibility, and increa sed performance. The original PLCs were simple devices. Through time, PLC’s have increased in complexity, adding several features that improve their programming, debugging, and operation. The standard PLC pr ogramming languages [20] include: instruction list (IL), structure text (ST) function block diagram (FBD), sequential function chart (SFC), and Ladder Logi c Diagram (LLD). LLD is the most commonly used for programming PLC’s. PLC programming languages are diffi cult to understand, modify and maintain. Furthermore, the larger the sys tem to control, the more complex the resulting program becomes. Researc hers have proposed several methods to address these problems by expressing the control logic using some type of mathematical formalism and then automatic ally converting the resulting model to

PAGE 50

38 a PLC programming language. In addition, these formal models can be used to verify the controller’s desirable logi cal properties and correctness. Finite Automata (F A), PN, and NCES have been extensively used to model and analyze controllers. The c onversion of FA based models is addressed by B. A. Brandin in [21], M. F abian and A. Hellgreen in [22], and J. Liu and H. Darabi in [23]. Conversion of PN based models is addressed in [24 -27]. There has been research on the transformati on of other types of PN models such as T-Timed PN [28, 29]; P-Timed PN [30, 31]; and Coloured PN [32, 33]. While the work on transformation of PN and FA based model is extensive, the work on transformation of NCES models to PL C programming languages is limited. In [11] M. Rausch and B.H. Krogh introduc e a methodology that describes the transformation among NCES, Statecharts, and PLC programming languages. The work proposes the transformation of NCES into Instruction List and vice versa and provides a set of rules that transform conditions signals, places and transitions into input and output variables. However, the transformation of events signals is not included. Also, the ex ample discussed does not possess complex control requirements frequently encount ered in manufacturing systems.

PAGE 51

39 Chapter 3: DEDS Supervisory Control Synthesis Using NCES Discrete event dynamic systems (D EDS) require control and coordination in order to satisfy a desired behavior. On e important aspect in control theory is the selection of a modeling forma lism that can capture the physical characteristics of DEDS and the ability to synthesize a controller. This research utilizes NCES as the model formalism for generating DEDS controllers. Before the controller synthesis is discussed, it is necessary to discuss some basic concepts in Supervisory Control Theory. 3.1 DEDS Supervisory Control Theory Supervisory controllers ensure th e proper operation of a DEDS by enforcing the behavioral requirements. A behavioral requirement is a requirement that a system mu st follow during its operati on. For example, in the tank filling and draining pr ocess introduced in Chapter 1 the valve can not be opened when the pump is on. In a supervisory control m odel, these requirements are defined in terms of safety or sequentia l specifications. A safety specification refers to forbidden state(s) that the system must avoi d. A sequence specification refers to a desired sequence of events the system must follow. Figure 3.1 shows the interaction of a supervisor controller and an uncontrolled system. The supervisory co ntroller and the uncontrolled system interact as a closed loop system. The supervisory controller observes the events

PAGE 52

40 executed by the uncontrolled system and decides which event(s) are allowed next on the uncontrolled system. The ev ent(s) allowed by the supervisor is known as the control pattern. The control pattern ensures that the uncontrolled system operates within the boundaries dictated by the specifications. Furthermore, the supervisory controller ha s the capability to disable some, not necessarily all, of the possible events on the uncontrolled system. Those events that the supervisory controller can disabl e are known as controllable events. An example of controllable events is the filli ng and draining status in the tank filling and draining process. The controller is able to control the exact moment when the filling and draining process starts and ends. The events that the supervisory controller cannot disable are known as un controllable events. An example of an uncontrollable event is the level sensors st atus in the tank filling and draining process. The amount of liquid in the tank triggers the leve l sensors, but the controller cannot control the exact moment when the level sensors are going to trigger. As a result, the level sensor s transitions {t5, t6, t7, and, t8} are uncontrollable transitions. Events Control Pattern Controller Uncontrolled System Figure 3.1: Supervisory Control System

PAGE 53

41 The development of a supervisory c ontroller model is divided into three main tasks: the modeling of the uncontrolle d system and specifications, controller synthesis, and controller implementation. In the rest of this chapter, these steps will be followed to develop a supervisor y control model for the tank filling and draining process introduced in Chapter 1. 3.2 Uncontrolled System and Specification Model The NCES uncontrolled system model is shown in Fi gure 1.23 Chapter 1. For convenience, Figure 1.23 and Table 1.3 are reproduced in this chapter in Figure 3.2 and Table 3.1. Noti ce that the initial conditi ons are that the tank is empty, the pump is off, t he valve is closed, LSH alarm is passive, and LSL alarm is active. From this state (marking o = (0, 1, 0, 1, 0, 1, 1, 0)) only t2 (pump turning on) can fire and the pump will turn on. Notice that t4 (valve opening) can not fire because the condition signal (in 1C, LSH alarm is active) is not true. During the filling process t7 (LSL alarm goes pas sive) and t6 (LSH alarm goes active) fire, this means that the tank is full ( = (1, 0, 0, 1, 1, 0, 0, 1)). After the tank is completely filled, observe that t1 (pum p turning off) and t4 (valve opening) are enabled. If t4 fires, the pu mp will be on while the valve is opened. This is an undesirable behavior for the tank filling an d draining process. Therefore, a specification for the tank f illing and draining process is that when the tank is full the pump should turn off first and afterwards the valve can open. This specification will be modeled by means of a sequential specific ation. The tank filling and draining process will start with the filling process and continue to the

PAGE 54

42 draining process. Once the draining pr ocess is over the cycle will repeat. As a result, during the filling process the va lve will remain closed and the pump will turn on. During the draining process th e pump will remain off and the valve will open. The controller must enforce the oc currence of these processes in that given order. During the filling process th e controller will disabled the valve and during the draining process the cont roller will disabled the pump. Figure 3.2: Reproduction: Tank NCES Uncontrolled System Model

PAGE 55

43 Table 3.1: Reproduction: Places, Tran sitions, and Conditions for the Tank Uncontrolled Model Figure 3.3 illustrates the specificat ion model. Table 3.2 shows the description of the transitions and places for the specification model. Notice the input and output events shown in Figure 3.3. The input events are the events from the uncontrolled system The output events are the events sent to the controller from the specification model. Figure 3.3: Tank Specification Model Module Conditions Condition Meaning )C,C(Cout 1 in 1 1 LSH alarm is active )C,C(Cout 2 in 2 2 LSL alarm is active )C,C(Cout 3 in 3 3 LSL alarm is active )C,C(Cout 4 in 4 4 LSH alarm is active Pump Module Transition Meaning Place Meaning t1 Pump turning off p1 Pump on t2 Pump turning on p2 Pump off Valve Module Transition Meaning Place Meaning t3 Valve closing p3 Valve opened t4 Valve opening p4 Valve closed LSH Module Transition Meaning Place Meaning t5 LSH alarm goes passive p5 LSH alarm active t6 LSH alarm goes active p6 LSH alarm passive LSH Module Transition Meaning Place Meaning t7 LSL alarm goes passive p7 LSL alarm active t8 LSL alarm goes active p8 LSL alarm passive

PAGE 56

44 Table 3.2: Places and Transitions for the Tank Specification Model 3.3 Controller Synthesis The locking controller (LC) methodolo gy proposed in [5] is used to synthesize the controller. The sequenti al specification model must include copies of the uncontrolled system place (c ip) and its input/output transitions (c itandc 1 it). The LC will not restrict the transitions that are not part of the sequential specificatio n. If transition ti in the uncontrolle d system model is controllable and forbidden at some place c ipin the sequential specification, then transition tj will be disabled as soon as c it fires and enabled as soon as c 1 it fires. The ability to enable tj again, will guarantee that the controller is minimally restrictive. The LC consist of a co-place (co ip) for the specification placec ip, and copies of the input/output transitions of c ip(l itandl 1 it) as shown in Figure 3.4. The sequential specifications transi tions will be connected to the locking controller transitions via event signals. Th e LC is connected to the uncontrolled system via a condition signal sent by the co-place. The condition signal will disable transition tj whenever the specification is in statec ip. At any other state, transition tj will not be restricted by the cont roller. Figure 3.4 shows the net Specification Model Transition Meaning Place Meaning t1 Starting Filling process p1 Filling process t2 Stopping Filling proce ss p2 Filling process stops t3 Starting draining proc ess p3 Draining process t4 Stopping draining proce ss p4 Draining process stops

PAGE 57

45 control structure obtained by adding a locking controller to a generic uncontrolled system and sequential specif ication model. 3 tc2 tie c i tc 1 i t c i p co i pl 1 i t l it 2 1 tie i t1 i t jt 1 tie1 tie1 1 tie 1 1 tie Sequential Specification Plant Model Locking Controller3 tc Figure 3.4: Locking Controller To use the locking controller methodolog y it is necessary to modify the specification model shown in Figure 3.3. The places and transitions defined in the specifications model are modified to co mply with the locking controller. Place p1 (filling process) changes toc 1p, since it is a copy of place p1 (pump on). In other words, the filling proc ess is defined by turning the pump on. Transition c 2 t (start filling process) is a copy of tr ansition t2 (pump turning on). Transition c 1 t

PAGE 58

46 (stop filling process) is a copy of transition t1 (pump turn ing off). The rest of the places and transitions are replaced in the same manner and the resulting specification model is shown in Figure 3. 5. Table 3.3 describes the transitions and places for the Tank locking c ontroller and specification model. Figure 3.5: Locking Controller Sequent ial Specification for Tank Model Table 3.3: Places and Transitions for the Tank LC and Specification Model Figure 3.6 shows the complete contro ller model for the tank process. Table 3.4 describes the transitions, places, conditions and events of the controller model. The model consists of two locking controller modules. One module controls the valve and the other module controls the pump. The LC module on the left has a co-place co 1p for p1 (pump on). The LC module ensures that the valve is not open duri ng the filling process. The LC disables t4, when the sequential specification is inc 1p. The LC module on the right has a co-place co 3p Specification Model Transition Meaning Place Meaning c 2t Starting Filling process c 1p Filling process c 1t Stopping Filling process c 2p Filling process stops c 4t Starting draining process c 3p Draining process c 3t Stopping draining process c 4p Draining process stops

PAGE 59

47 for p3 (valve open). The LC module ensures that the pump will not turn on during the draining process. The lock ing controller will disable t2, when the sequential specification is inc 3p. The LC ensures the uncontrolled system meets the behavioral specification that when t he tank is full the pump should turn off and afterwards the valve can open. p8 p7 t8 t7 p4 p3 t4 t3 p1 p2 t1 t2 p6 p5 t6 t5 out 1Cout 2Cout 4Cin 4Cin 2Cin 1Cin 3C out 3C ct2ct1ct4ct3cop1lt2lt1cop3lt3lt4cp1cp2cp3cp4 in 6cin 5cout 5cout 6cout 1eout 2eout 3eouteout 5eout 7eout 6eout 8ein 1ein 2ein 3ein 4ein 8ein 5ein 7ein 6e Figure 3.6: Tank Control Model

PAGE 60

48 Table 3.4: Places, Transitions, Condition s, and Events for the Tank Control Model Uncontrolled System Model Transition Meaning Place Meaning t1 Pump turning off p1 Pump on t2 Pump turning on p2 Pump off t3 Valve closing p3 Valve opened t4 Valve opening p4 Valve closed t5 LSH alarm goes passive p5 LSH alarm active t6 LSH alarm goes active p6 LSH alarm passive t7 LSL alarm goes passive p7 LSL alarm active t8 LSL alarm goes active p8 LSL alarm passive Specification Model Transition Meaning Place Meaning c 2t Starting Filling process c 1p Filling process c 1t Stopping Filling process c 2p Filling process stops c 4t Starting draining process c 3p Draining process c 3t Stopping draining process c 4p Draining process stops Locking Controller Modules Transition Meaning Place Meaning l 2t Copy of c 2t co 1p Co-place of c 1p l 1t Copy of c 1t co 3p Co-place of c 3p l 4t Copy of c 4t l 3t Copy of c 3t Model Conditions Condition Meaning ) C C ( Cout 1 in 1 1 LSH alarm is active ) C C ( Cout 2 in 2 2 LSL alarm is active ) C C ( Cout 3 in 3 3 LSL alarm is active ) C C ( Cout 4 in 4 4 LSH alarm is active ) C C ( Cout 5 in 5 5 Filling process active ) C C ( Cout 6 in 6 6 Draining Process on Model Events Events Meaning ) e e ( eout 1 in 1 1 Pump is turning on ) e e ( eout 2 in 2 2 Pump is turning off ) e e ( eout 3 in 3 3 Valve is opening ) e e ( eout 4 in 4 4 Valve is closing ) e e ( eout 5 in 5 5 Filling process is starting ) e e ( eout 6 in 6 6 Filling process is stopping ) e e ( eout 7 in 7 7 Draining process is starting ) e e ( eout 8 in 8 8 Draining process is stopping

PAGE 61

49 Chapter 4: Verification of the Control Model: Reachability Analysis One of the tools for analysis of a NCE S is the reachability graph [4]. For some complex systems the size of the re achability tree can become very large, making it difficult to produce manually an d analyze visually. In this chapter, a software tool to analyze the properties of NCES is introduced and utilized to verify the correctness of the contro l model obtained in Chapter 3. 4.1 SESA A research group from the Humboldt University in Berlin developed a program to support the formal analysis of NCES, which they called SESA [34, 35, and 36]. This software tool allows the user to insert the model information (places, conditions, events, transitions etc) and the software performs an analysis of the model. The analysis re port displays the reachable states and NCES properties pertinent to the model. Figure 4.1 shows an example of a SESA analysis report for the properties of a NCES model. Figure 4.2 shows an example of how SESA displays the reach able states for a NCES model with 6 places. The reachable states are organi zed by state numbers in chronologically order, where state nr.1 is the initial stat e. Below each stat e number there are at least three additional lines. The first line represents the number of places in the model. The second line represents t he number of tokens in each place (marking). The final line(s ) represent the set of trans itions that are enabled

PAGE 62

50 followed by the state numbe r the system will move to after the transitions are fired. There could be more than one set of transitions. To properly identify each set there are two equal signs before each set. A more detail ed example will be explained in Section 4.2. Figure 4.1: SESA Analysis Report Figure 4.2: SESA Reachable States 4.2 SESA Tank Control Model SESA is used to obtain the reachable st ates for the tank control model in Figure 3.6 Chapter 3. SESA on ly allows the use of numbers to label places and

PAGE 63

51 transitions. Table 4.1 is provided as a guide to identify the corresponding places and transitions for the SESA results. Table 4.1: Guide for Places and Transit ions of the SESA Tank Control Model Place SESA Place Trans ition SESA Transition p1 p1 t1 t1 p2 p2 t2 t2 p3 p3 t3 t3 p4 p4 t4 t4 p5 p5 t5 t5 p6 p6 t6 t6 p7 p7 t7 t7 p8 p8 t8 t8 cp1 p9 ct2 t9 cp2 P10 ct1 t10 cp3 P11 ct4 t11 cp4 P12 ct3 t12 cop1 P13 lt1 t13 cop3 P14 lt2 t14 lt3 t15 lt4 t16 The portion of the SESA reachable state for the t ank filling and draining control model are displayed in Figure 4.3. The complete results for the SESA reachable states are in Appendix A.

PAGE 64

52State nr. 1 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 0 1 0 1 1 0 0 0 0 1 1 1 =={t2,t9,t14}=> s2 =={t2,t6,t9,t14}=> s8 =={t2,t7,t9,t14}=> s47 =={t2,t6,t7,t9,t14}=> s3 =={t6,t7}=> s11 =={t7}=> s35 =={t6}=> s7 State nr. 2 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 0 1 1 0 1 0 0 0 0 1 =={t6,t7}=> s3 =={t7}=> s47 =={t6}=> s8 State nr. 3 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 1 0 0 1 1 0 0 0 0 1 =={t1,t10,t13}=> s4 =={t1,t5,t10,t13}=> s39 =={t1,t8,t10,t13}=> s9 =={t1,t5,t8,t10,t13}=> s40 =={t5,t8}=> s2 =={t8}=> s8 =={t5}=> s47 State nr. 4 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 0 1 1 0 0 1 0 1 0 0 1 1 =={t4,t11,t16}=> s5 =={t4,t5,t11,t16}=> s37 =={t4,t8,t11,t16}=> s10 =={t4,t5,t8,t11,t16}=> s6 =={t5,t8}=> s40 =={t8}=> s9 =={t5}=> s39 State nr. 5 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 1 0 0 1 0 0 1 0 1 0 =={t5,t8}=> s6 =={t8}=> s10 =={t5}=> s37 State nr. 6 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 0 1 1 0 0 0 1 0 1 0 =={t3,t12,t15}=> s1 =={t3,t6,t12,t15}=> s7 =={t3,t7,t12,t15}=> s35 =={t3,t6,t7,t12,t15}=> s11 =={t6,t7}=> s5 =={t7}=> s37 =={t6}=> s10 State nr. 7 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 0 1 1 0 1 0 0 0 0 1 1 1 =={t2,t9,t14}=> s8 =={t2,t4,t9,t14}=> s25 =={t2,t5,t9,t14}=> s2 =={t2,t4,t5,t9,t14}=> s13 =={t2,t7,t9,t14}=> s3 =={t2,t4,t7,t9,t14}=> s14 =={t2,t5,t7,t9,t14}=> s47 =={t2,t4,t5,t7,t9,t14}=> s48 =={t4,t5,t7}=> s31 =={t5,t7}=> s35 =={t4,t7}=> s32 =={t7}=> s11 =={t4,t5}=> s12 =={t5}=> s1 =={t4}=> s24 State nr. 8 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 1 0 1 0 1 0 0 0 0 1 =={t1,t10,t13}=> s9 =={t1,t5,t10,t13}=> s40 =={t1,t7,t10,t13}=> s4 =={t1,t5,t7,t10,t13}=> s39 =={t5,t7}=> s47 =={t7}=> s3 =={t5}=> s2 State nr. 9 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 0 1 1 0 1 0 0 1 0 0 1 1 =={t4,t11,t16}=> s10 =={t2,t4,t11,t16}=> s29 =={t4,t5,t11,t16}=> s6 =={t2,t4,t5,t11,t16}=> s19 =={t4,t7,t11,t16}=> s5 =={t2,t4,t7,t11,t16}=> s18 =={t4,t5,t7,t11,t16}=> s37 =={t2,t4,t5,t7,t11,t16}=> s38 =={t2,t5,t7}=> s27 =={t5,t7}=> s39 =={t2,t7}=> s17 =={t7}=> s4 Figure 4.3: Portion of SES A Tank Reachable States

PAGE 65

53 The reachability graph shows that at t he initial marking there are 7 sets of transitions enabled for firing. As discusse d in Section 3.1, transitions t6 and t7 are uncontrollable (sensors). Within the theory of reacha bility graph it is possible to think that transitions t6 and t7 are en abled, but in the physi cal system it is not possible for them to fire. This means that meanwhile the pump is off the LSL will remain active (p7) and the LSH will remain passive (p6). Only the set containing t2, t9, t14 is representativ e of the physical system. In order to analyze the behavior of the Tank NCES model it is ne cessary to disregard the states of the reachability graph that are not executable in the ph ysical system. Although the sensors are uncontrollable, their behavior represents the changes in the physical system. To control these transitions, even ts will be added to the control model. These events will force the uncontrollable trans itions to fire in the sequence they logically should. For example, after t he pump turns on and the tank starts filling LSL goes passive (t7). A place and transition (c 8 p andc 7 t) are added to the sequence specification to represent this state s shown in Figure 4.4. Furthermore, an event (c 9 e) is added as output to c 7 t and as input to t7 as shown in Figure 4.4. This way the specification can ensure that the LSL (t7) will fire only after the pump has turn on.

PAGE 66

54 ct2cp1out 5ein 1e out 9ein 9eout 12e c 7tc 8p Figure 4.4: Portion of SESA Tank Control Model Pertaining t7 The new tank model is shown in Figure 4.5 and Table 4.2 describes the transitions, places, conditions, and events of the new control model. Note that these modifications are done only for verifica tion purposes, but if the controller is implemented in a physical system the mo difications would not be necessary.

PAGE 67

55 p8 p7 t8 t7 p4 p3 t4 t3 p1 p2 t1 t2 p6 p5 t6 t5 out 1Cout 2Cout 4Cin 4Cin 2Cin 1Cin 3C out 3C ct2ct1ct4ct3cop1lt2lt1cop3lt3lt4cp1cp2cp3cp in 6cin 5cout 5cout 6cout 1eout 2eout 3eout 4eout 5eout 7eout 6eout 8ein 1ein 2ein 3ein 4ein 8ein 5ein 7ein 6e out 9eout 10e out 11eout 12e in 9ein 10eout 11eout 12e c 7tc 5tc 6tc 8tc 8pc 5pc 6pc 7p Figure 4.5: SESA Tank Control Model

PAGE 68

56 Table 4.2: Places, Transitions, Conditions, and Events for the SESA Tank Control Model The analysis results from SESA for Figure 4.5 are displayed in Figure 4.6. The SESA reachable states for Figure 4.5 are shown in Figure 4.7. A reachability graph was constructed based on the SESA reachable state and is shown in Figure 4.8. Table 4.3 is provided as a guide to identify the corresponding places and transitions fo r the SESA results. The reachability states show that at each state there is only one set of transitions enabled for firing. These reachability states results are smaller than Figure 4.3 results and all the reachable states provided are in accordance with the physical system New Tank Model Transition Meaning Place Meaning T1 Pump turning off p1 Pump on T2 Pump turning on p2 Pump off T3 Valve closing p3 Valve opened T4 Valve opening p4 Valve closed T5 LSH alarm goes passive p5 LSH alarm active T6 LSH alarm goes active p6 LSH alarm passive T7 LSL alarm goes passive p7 LSL alarm active T8 LSL alarm goes active p8 LSL alarm passive c 2t Starting Filling process cp1 Filling process ct7 LSL going passive cp8 LSL passive ct6 LSH going active cp5 LSH active c 1t Stopping Filling process c 2p Filling process stops c 4t Starting draining process c 3p Draining process ct5 LSL going active cp6 LSL active ct8 LSH going passive cp7 LSH passive c 3t Stopping draining process c 4p Draining process stops l 2t Copy of c 2t co 1p Co-place of c 1p l 1t Copy of c 1t co 3p Co-place of c 3p l 4t Copy of c 4t l 3t Copy of c 3t Model Conditions Condition Meaning ) C C ( Cout 1 in 1 1 LSH alarm is active ) C C ( Cout 2 in 2 2 LSL alarm is active ) C C ( Cout 3 in 3 3 LSL alarm is active ) C C ( Cout 4 in 4 4 LSH alarm is active ) C C ( Cout 5 in 5 5 Filling process active ) C C ( Cout 6 in 6 6 Draining Process on Model Events Events Meaning ) e e ( eout 1 in 1 1 Pump is turning on ) e e ( eout 2 in 2 2 Pump is turning off ) e e ( eout 3 in 3 3 Valve is opening ) e e ( eout 4 in 4 4 Valve is closing ) e e ( eout 5 in 5 5 Filling process is starting ) e e ( eout 6 in 6 6 Filling process is stopping ) e e ( eout 7 in 7 7 Draining process is starting ) e e ( eout 8 in 8 8 Draining process is stopping ) e e ( eout 9 in 9 9 LSL is going passive ) e e ( eout 10 in 10 10 LSH is going active ) e e ( eout 11 in 11 11 LSH is going passive ) e e ( eout 12 in 12 12 LSL is going active

PAGE 69

57 behavior. One can conclude from the an alysis report and the reachable states that the NCES possess three behavioral properties: Reversible: The initial state; the ta nk is empty, the pump is off, the valve is closed, LSH alarm is passive, and LSL alarm is active. If a model is reversible, then one can conclude that for each marking there is a transition(s) that will take the s ystem to its initial state. Chapter 1 describes the tank filling and draini ng process as a continuous cycle. Therefore, the fact that it is reversible proves that the Tank control model follows a cycle and it accurately describes the process behavior. Bounded and Safe: The model is 1-bounded, which means that regardless of the firing sequence th ere will only be one or zero tokens in each place. Since the control model represents t he state of the devices (pump: off/on; valve: closed /open; sensors active/passive), it does not make sense in the physical system for a state to have two tokens. The safeness of the model guarantees that the system is modeled correctly, because each of t he devices will only be at one of their two possible states in a given period of time. Live: The model is live because there are no dead states and all transitions will fire infinitely. Th is means that regardless of the firing sequence, the model will never be in stuck in a specific state. As a result, the model will never in cur a deadlock situation. The presence of these pr operties shows that the NCES tank control model developed correctly models the system behavior.

PAGE 70

58 Figure 4.6: SESA Analysis Report for the Tank Control Model State nr. 1 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 toks: 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 1 1 1 =={t2,t9,t18}=> s2 State nr. 2 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 toks: 1 0 0 1 0 1 1 0 1 0 0 0 0 0 0 0 0 1 =={t7,t10}=> s3 State nr. 3 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 toks: 1 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 =={t6,t11}=> s4 State nr. 4 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 toks: 1 0 0 1 1 0 0 1 0 0 1 0 0 0 0 0 0 1 =={t1,t12,t17}=> s5 State nr. 5 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 toks: 0 1 0 1 1 0 0 1 0 0 0 1 0 0 0 0 1 1 =={t4,t13,t20}=> s6 State nr. 6 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 toks: 0 1 1 0 1 0 0 1 0 0 0 0 1 0 0 0 1 0 =={t5,t14}=> s7 State nr. 7 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 toks: 0 1 1 0 0 1 0 1 0 0 0 0 0 1 0 0 1 0 =={t8,t15}=> s8 State nr. 8 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 toks: 0 1 1 0 0 1 1 0 0 0 0 0 0 0 1 0 1 0 =={t3,t16,t19}=> s1 Figure 4.7: SESA Reachable State for the Tank Control Model

PAGE 71

59 = (0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1) t2, t9, t18 = (1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1) t7, t10 = (1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1) t6, t11 = (1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1) t1, t12, t17 = (0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1) t4, t13, t20 = (0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0) t5, t14 = (0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0) t8, t15 = (0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0) t3, t16, t19 = (0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1) old 7 4 3210560 Figure 4.8: Reachability Grap h for the Tank Control Model

PAGE 72

60 Table 4.3: Guide for the Places and Tran sitions for the New SESA Tank Control Model Place SESA Place Trans ition SESA Transition p1 p1 t1 t1 p2 p2 t2 t2 p3 p3 t3 t3 p4 p4 t4 t4 p5 p5 t5 t5 p6 p6 t6 t6 p7 p7 t7 t7 p8 p8 t8 t8 cp1 p9 ct2 t9 cp8 P10 ct7 t10 cp5 P11 ct6 t11 cp2 P12 ct1 t12 cp3 P13 ct4 t13 cp6 P14 ct5 t14 cp7 P15 ct8 t15 cp4 P16 ct3 t16 cop1 P17 lt1 t17 cop3 P18 lt2 t18 lt3 t19 lt4 t20

PAGE 73

61 Chapter 5: Controller Implemen tation as Ladder Logic Diagram To implement the control model in a PL C, it is necessary to transform the NCES model into some type of PLC programming language. This thesis introduces an algorithm that can autom atically transform NCES models into Ladder Logic Diagram. 5.1 Transformation Algorithm Figure 5.1 shows a flow chart th at summarizes the steps of the transformation algorithm. The tank c ontrol model is used as an example to illustrate the steps of th e transformation algorithm. Note: Terms inside of parenthesis in this algorithm description are specific naming conventions for RSLogix 5000 Version 11.

PAGE 74

62 Figure 5.1: Transformati on Algorithm Flowchart 5.1.1 Tank Transformation Algorithm Initialisation : Given t T and C CN where: u cT T= T u cT T = out inC C = NC out inC C = Tc is the set of controllable transitions and Tu is the set of uncontrollable transitions. Let •t define the set of inpu t places for transition t and t • define the

PAGE 75

63 set of output places for transition t. Cin is the set of condition inputs and Cout is the set of condition outputs. Let •c define the set of input pl aces for condition c and c • define the set of output transitions for condition C. In the tank filling and draining model: T = {t1, t2, t3, t4, t5, t6, t7, t8, c 1t, c 2t, c 3t,c 4t, l 1t, l 2t, l 3t, l 4t}. Tc = {t1, t2, t3, t4, c 1t, c 2t, c 3t,c 4t, l 1t, l 2t, l 3t, l 4t} Tu = {t5, t6, t7, t8} CN = {C1, C2, C3, C4, C5, C6, C7, C8, C9, C10} Cin = {in 1C, in 2C, in 3C, in 4C, in 5C, in 6C, in 7C, in 8C, in 9C, in 10C} Cout = {out 1C, out 2C, out 3C, out 4C, out 5C, out 6C, out 7C, out 8C, out 9C, out 10C} Steps 1.1 through 1.5 transform the pl aces, conditions, and events that interact with transition t1. The tank c ontrol model is shown in Figure 3.6 Chapter 3. For convenience purposes, the portion of the tank control model that concerns t1 is shown in Figure 5.2. in 6cout 1eout 2e in 3cin 4c Figure 5.2: Portion of Tank Control Model Pertaining to Transition t1

PAGE 76

64 Step 1: t Tc insert a rung into the Ladder Logic Diagram and: Step 1.1: p t insert p into the rung as an input variable (examine on) and also as an unlatched output (output unlatch). As illustrated in Figure 5.2, p1 is an input place for t1. p1 is inserted into the rung as an input variable and as an unlatched output as s hown in Figure 5.3. 0 Pump on P1 U Pump on P1 Figure 5.3: Tank Control Model Insert Input Place for t1 in LLD Step 1.2: c Cin insert c into the rung as an input variable. As illustrated in Figure 5.2, C4 is a condition input for t1. C4 is inserted into the rung as an input variable as shown in Figure 5.4. 0 Pump on P1 Condition 4 (LSH alarm on) C4 U Pump on P1 Figure 5.4: Tank Control Model Insert Condition Input for t1 in LLD Step 1.3: e Ein insert e into the rung as an input variable. As illustrated in Figure 5.2, t1 has no event inputs. Therefore, no instructi ons are added to the rung. Step 1.4: p t insert p into the rung as a latched output (output latch). As illustrated in Fi gure 5.2, p2 is an output place

PAGE 77

65 for t1. p2 is inserted into t he rung as a latched output as shown in Figure 5.5. 0 Pump on P1 Condition 4 (LSH alarm on) C4 U Pump on P1 L Pump off P2 Figure 5.5: Tank Control Model Inse rt Output Place for t1 in LLD Step 1.5: e Eout insert e into the rung as an output (output energize) and end the rung. As illustrated in Figure 5.2, out 2eis an event output for t1. out 2e is inserted into the rung as an output as shown in Figure 5.6. 0 Pump on P1 Condition 4 (LSH alarm on) C4 U Pump on P1 L Pump off P 2 event 2 (pump is turning off) e 2 Figure 5.6: Tank Control Model Event Output for t1 in LLD Steps 2.1 and 2.2 transfor m the places that interact with condition C1. For convenience purposes, the portion of the ta nk control model that concerns C1 is shown in Figure 5.7. out 4c out 1c Figure 5.7: Portion of Tank Contro l Model Pertaining to Condition C1

PAGE 78

66 Step 2: c Cout, insert a rung into the Ladder Logic Diagram and: Step 2.1: p c insert p in the rung as an input variable. As illustrated in Figure 5.7, p5 is an input place for C1. p5 is inserted into the rung as an input variable as shown in Figure 5.8. 1 LSH alarm on P5 Figure 5.8: Tank Control Model Insert Input Place for C1 in LLD Step 2.2: Insert c in the rung as an output variable and end the rung. C1 is inserted as an outpu t variable into the same rung of step 2.1 as shown in Figure 5.9. 1 LSH alarm on P5 Condiion 1(LSH alarm on) C1 Figure 5.9: Tank Control Model Insert Output C1 in LLD Figure 5.7 shows two conditions coming out of p5. Step 2 is repeated to add C4 in the Ladder Logic Diagram. Step 2: c Cout, insert a rung into the Ladder Logic Diagram and: Step 2.1: p c insert p in the rung as an input variable. As illustrated in Figure 5.7, p5 is an input place for C4. p5 is inserted into the rung as an input variable as shown in Figure 5.10.

PAGE 79

67 1 LSH alarm on P5 Figure 5.10: Tank Control Mode l Insert Input Place for C4 in LLD Step 2.2: Insert c in the rung as an output variable and end the rung. C4 is inserted as an outpu t variable into the same rung of step 2.1 as shown in Figure 5.11. Figure 5.11: Tank Control Model Insert Output C4 in LLD Appendix B includes more examples fo r the transformation algorithm. The resulting Ladder Logic Diagram is shown in Figure 5.12.

PAGE 80

68 Figure 5.12: Ladder Logic Diagram Tank Control Model

PAGE 81

69 Figure 5.12: (Continued)

PAGE 82

70 5.2 Algorithm Implementation The Ladder Logic Diagram shown in Figure 3.23a and 3.23b was created using RSLogix 5000 version 11 and downloaded into an Allen Bradley CompactLogix system model 1769 L30 [37]. The Ladder Logic Diagram was verified and no errors were found. The in itial conditions of the Tank filling and draining process were simulated by togglin g the bits of the input variables. For example, one of the initial cond itions is that the pump is off. Therefore, the bit for p2 is toggled to 1. After the bits were toggled the Ladder Logic Diagram was sent online and the tag values were mo nitor through an RSLogix interface named “monitor tags” as shown in Figure 5.13. The input variables for the level sensors were toggled in the sequence they shoul d logically change states to simulate their response to the physical system. The Ladder Logic Diagram responses to the toggled bits were correct. Figure 5.13: RSLogix Monitor Tags In terface for the Tank Control Model

PAGE 83

71 Chapter 6: Supervisory Contro l Synthesis for the HAS-200 The HAS-200(Highly Automated Syst em) is an automated manufacturing system designed for education and training by SMC Corporation, with support from Intel Corporation and in Partnership with the Maricopa Advanced Technology Education Cent er (MATEC) [38]. The HAS-200 simulates an automated manufacturing process by modelin g key work-in-progress stages at 10 hands-on stations. The purpose of the sys tem is to provide a realistic, handson experience in automated manufacturing fo r high school and college students. 6.1 HAS-200 Syst em Overview The HAS-200 manufactures a range of different products, which are composed of plastic boxes filled with vari ous amounts of colored plastic beads. The final products consist of boxes filled with one color bead or any combination of blue, yellow, and/or red in total amoun ts of 15, 30 or 45 grams as shown in Figure 6.1. Through various combinations of color and weight, the HAS-200 can manufacture up to 19 different products. Each box also includes a bar code label, which makes it traceable througho ut the system and identifies the product color or color combination.

PAGE 84

72 Figure 6.1: HAS-200 Products In simulating a modern highly automat ed factory the HAS 200 utilizes the first 4 levels of the Automation Pyramid as shown in Figure 6.2. This means that each station knows its requirements (i .e. color, weight and quantity) and communicates effectively with all othe r stations, making the entire system constantly aware of its work in progress. The levels of the automation pyramid are explained below. Levels I & II: These levels represent the equipment used in production (PLC, PC, sensors, etc.) The work on this thesis will be focused on these two levels. Levels III & IV: These levels repres ent the system process operation. Supervisory Control and Data Acquisition (SCADA) provides the infrastructure to control a proce ss and to collect real-time data for automated manufacturing that ar e running in different physical locations. The primary purpose of a SCADA system is to gather data from controllers, and field devices then display this data on the computer screen. Manufacturing Ex ecution System (MES) is software

PAGE 85

73 that automatically links together th e functions of the systems such as resource management, scheduling, maintenance management, statistical quality control, and da ta collection. The use of MES software provides many benefits. Ex amples of these benefits include reduced lead time for orders, effi cient planning of resources and equipment, improved product quality, reduced manufacturing cycle time, and lower manufacturing costs. All of these benefits contribute to an increased in the manufacturing productivity. Level V: This level represents the busi ness part of the system. Enterprise Resource Planning (ERP ) automatically ties together all basic functions of a business including those not related to manufacturing. Some of the basi c functions are human resources, finance, sales, marketing, accounting, and logistics. Figure 6.2: Automation Pyramid The HAS-200 consists of 10 stations. The stations are connected through a conveyor belt that serves as a material handling device for the boxes as shown in Figure 6.3. In addition, each stat ion has a signal tree, a control panel, bar

PAGE 86

74 code reader, actuators, se nsors and Allen-Bradley Co mpactLogix PLCs. The stations may be operated locally from a pushbutton control panel at the station, or the entire system can be run in fully automated mode using EdMES (Manufacturing Execution System) software. The EdMES software allows the user to place one or more orders, each order containing different product types and quantities. The EdMES software th en coordinates the manufacturing process and directs the stations to manufa cture the products. The description of each of the stations operation is as follows: Station1 (Multicolor Filling Station): This station supplies empty multicolor-labeled boxes that get filled at production stations 2, 3, and 4. Station 2, 3 and 4 (Singl e-Color Filling Station): These production stations supply single-color boxes to the system, fill boxes with the plastic beads, weigh filled boxes, and place them onto the conveyor belt. They can also fill boxes supp lied by the Multicolor Box Feeder station. Station 5 and 6 (Metrology Station): These stations measure the height of the material contained in the bo xes and compare it with the weight of the order. If the height does not match the specified weight, the box is rejected. The only difference be tween these two stations is that Station 5 uses a digital encoder to determine the height of the content, while Station 6 takes measurem ents with an analog linear

PAGE 87

75 potentiometer. Each station has a buffer belt running parallel to the main conveyor belt to decrease the probability of long waiting queues. Station 7 (Cap and Label Station): This station inserts plastic caps on the boxes. It also attaches a label on top of the cap. Station 8 (Vertical Storage Station) and 9 (Horizontal Storage Station): These stations store both completed boxes ready to be dispatched and “work in progress” boxes waiting to be put back into circulation (such as empty or partially filled boxes) Both stations have a human machine interface (HMI) that ca n be used to control container movement within in the station. The Vertical Storage can store up to 81 boxes. The Horizontal Storage can store up to 56 boxes. Station 10 (Dispatcher Station): This station removes boxes from the conveyor belt and loads them onto a two-part platform. When the platform reaches a maximum of four boxes, the boxes are released onto a ramp and out of the factory. Figure 6.3: HAS-200 System

PAGE 88

76 6.2 HAS-200 Control Problem Description The physical layout of the HAS-200 statio ns is shown in Figure 6.4. From Figure 6.4, one can observe that the typical process for a multicolor product consists of the following: A box is provided to the system (Station 1). The box is filled (Stations 2, 3, & 4) with the specific product color and quantity required by the “customer” order. The box contents are checked and compared to the “customer” order (Station 5 or 6). A cap and label are placed on top of the box (Station 7). The box is either stored (Station 8 or 9) or dispatched (Station 10). Figure 6.4: HAS-200 Physical Layout Notice that the conveyor belt moves on ly in one direction. Therefore, the current multicolor product follows a single filling sequence of blue-yellow-red. The control problem considered in this chapter allows the manufacture the

PAGE 89

77 addition of five new set of multicolor pr oducts that follow ot her filling sequences such as blue-red-yellow, yellow-blue-red, yellow-red-blue, red-blue-yellow, and red-yellow-blue. The addition of these filling sequences requires that a box will need to go around the system more than once to be completed as shown in Figure 6.5. Box provided Box provided Box weight is checked, cap & label are placed, and dispatch Box bypass metrology, cap & label, dispatcher station Blue-Yellow-Red Filling Sequence Box fill with blue beads Box bypass multicolor filling station Box bypass blue filling station Box bypass yellow filling station Box fill with red beads Box fill with blue beads Box fill with yellow beads Box fill with red beads Box fill with yellow beads Box bypass red filling station Box weight is checked, cap & label are placed, and dispatch Red-Blue-Yellow Filling Sequence Figure 6.5: HAS-20 0 Filling Sequence Development of a supervisory controller model is divided into three main tasks as discussed in Chapter 3: modeling of the uncontrolled system and specifications, controller synthesis and cont roller implementation. In the rest of this chapter, these tasks will be addre ssed to develop the new supervisory control model for the HAS-200. The first task is to develop an uncontrolled model of the system. The uncontrolled model will only include t hose devices and operations that are

PAGE 90

78 relevant to the filling sequences. For exam ple, a box entering a station, a box is processed by a station, a box bypasses a st ation, or a box leav es a station. The detail steps on how a box gets processed in a station are not pertinent to the filling sequence process. Therefore, t hese operations are not part of the uncontrolled model. A description of the devices and operations that will be part of the uncontrolled model is given as follows: Station 1: Once an order is plac ed in the system, station 1 will start processing the order. Stopper 1 which is normally retracted will extend to ensure that no box enters into th e station. When the process is done, the box is placed on the conveyor belt and the stopper returns to its original position. The conveyor belt will take the box to the next station. If a box arrives to statio n 1 and there are no other boxes being processed by station 1, the box wi ll continue moving on the conveyor belt until it reaches the next station. If a box arrives to Station 1 and there is a box being processed by St ation 1, the box will be stopped by stopper 1 until the process ends. Fi gure 6.6 shows the physical layout of Station 1. Notice that there are other devices that are part of station1, but are not taken into consideration because these devices are not part of the filling sequence.

PAGE 91

79 Figure 6.6: HAS-200 Station 1 Layout Stations 2 4: These three stat ions perform the same process and have the same devices except that the bead colors are different. Station 2 will be used as the example. Stopper 1 is a dual pin stopper located at the beginning of the stati on. Stopper 1 consists of 2 pins: Pin 1 is normally retracted and pin 2 is normally extended. If a box is being processed in Station 2, pin 1 is extended and pin 2 is retracted. If a box enters Station 2 and reaches pin 1, this means that a box is being processed in Station 2. The box will have to wait until the process is done and pin 1 retracts. If a box enters Station 2 and reaches pin 2, sensor 1 activates de tecting the presence of the box. Then, pin 2 will retract to allow the box inside the station and pin 1 will extend to allow only one box to be pr ocessed at a time. The pins will remain in those positions until t he box leaves the station. The conveyor belt will move the box until it reaches stopper 2. Stopper 2 is normally down and it holds the box in place so that the bar code reader Conve y or Belt Stopper 1

PAGE 92

80 is able to read the label on the box If the bar code matches the bar codes in the processing list, the box will be removed from the conveyor belt and processed in Station 2. Wh en the processing is done, the box is placed back on the conveyor belt. Stopper 2 will move up to allow the box to leave Station 2. Stopper 2 and the pins of stopper 1 will return to its original position. The c onveyor belt will take the box to the next station. If the bar code do es not match the bar codes in the processing list, stopper 2 will move up to allow the box to leave Station 2. Stopper 2 and the pins of stopper 1 will return to its original position. The conveyor belt will take the box to the next station. Sensor 2 will activate if there is a long queue comi ng from Station 3. If sensor 2 is active, pin 1 will remain extended and no other boxes can be processed or enter Station 2. Figur e 6.7 shows the physical layout of stations 2, 3, and 4. For the un controlled model, stopper 1 will refer to the actions performed by pin 2. Pi n 1 will be omitted from the model, since its actions are opposite of pin 2.

PAGE 93

81 Figure 6.7: HAS-200 Statio ns 2, 3, and 4 Layout Stations 5-10: Although these st ations do not perform the same operations, their process will be model ed together. If a box has been filled by stations 2, 3, and 4; then the box will be checked by Stations 5 or 6, processed by Station 7, bypassed Station 8 and 9, and dispatched by Station 10. All thes e operations will be referred to as processed by Station 5 through 10. If a box has not been filled by station 2, 3, or 4; then it will bypass stations 5 through 10. The physical layout of stations 5 thr ough 10 is shown in Appendix C. 6.3 HAS-200 Unco ntrolled Model Station 1 uncontrolled model is shown in Figure 6.8. Table 6.1 gives a brief description of the places and transi tions for Station 1 uncontrolled model. Conveyor Belt Sensor 2 Bar Code Reader Stopper 1 Stopper 2 Sensor 1

PAGE 94

82 Table 6.2 gives a brief description of the events and conditions for the model. Notice that if multiple orde rs of multicolor products are placed at the same time, p7 will have more than one token at a ti me. This is an undesirable behavior for Station 1. Therefor e, a specification for Station 1 is that only one box can be processed at a time in Station 1. For the sake of simplicity and to be able to follow the control model synthesis, on ly the yellow-red-blue (YRB) sequence uncontrolled, specification and control mode l will be developed. The rest of this section describes the development of the YRB sequence uncontrolled model for each of the stations of the HAS-200.

PAGE 95

83 in 4c 1t9p10 p7t8tout 1e 2p2t 3p3t4p 4t 5p 5t6p6tout 2eout 3eout 4eout 5eout 6e 1pin 1cin 2cin 3c 7p 8p in 5c in 6c 11 p out 7e out 9e out 8e out 10e ou 11e out 12e 9t10 t11 t12 t13 t 14 t 15 t16 t17 t18 t 19 t20 t 21 t22 t23 t24 t25 t 26 t27 t 28 t 30 t 29 t Figure 6.8: Station 1 Uncontrolled Model

PAGE 96

84 Table 6.1: Places and Transitions for Station 1 Uncontrolled Model PlaceMeaningTransitionMeaning p1YRB order t1Station 1 start processing order YRB p2YBR order t2Station 1 start processing order YBR p3RBY order t3Station 1 start processing order RBY p4RYB order t4Station 1 start processing order RYB p5BRY ordert5Station 1 start processing order BRY p6BYR ordert6Station 1 start processing order BYR p7Box process in station 1t7Station 1 done processing box p8Box exit station 1 t8Station 1 done processing box p9Station 1 stopper extendedt9Station 1 done processing box p10Station 1 stopper retractedt10Station 1 done processing box p11Box bypass station 1t11Station 1 done processing box t12Station 1 done processing box t13station 1 Stopper extending t14station 1 Stopper extending t15station 1 Stopper extending t16station 1 Stopper extending t17station 1 Stopper extending t18station 1 Stopper extending t19station 1 Stopper retracting t20station 1 Stopper retracting t21station 1 Stopper retracting t22station 1 Stopper retracting t23station 1 Stopper retracting t24station 1 Stopper retracting t25Box moving from station 10 to station 1 t26Box moving from station 10 to station 1 t27Box moving from station 10 to station 1 t28Box moving from station 10 to station 1 t29Box moving from station 10 to station 1 t30Box moving from station 10 to station 1 Table 6.2: Condition and Events for Station 1 Uncontrolled Model ConditionMeaningEventsMeaning Station 1 stopper retractedStation 1 start processing Station 1 stopper retractedStation 1 start processing Station 1 stopper retractedStation 1 start processing Station 1 stopper retractedStation 1 start processing Station 1 stopper retractedStation 1 start processing Station 1 stopper retractedStation 1 start processing Station 1 done processing Station 1 done processing Station 1 done processing Station 1 done processing Station 1 done processing Station 1 done processing ) C C ( Cout 2 in 2 2) C C ( Cout 1 in 1 1) C C ( Cout 3 in 3 3) C C ( Cout 4 in 4 4) C C ( Cout 5 in 5 5) C C ( Cout 6 in 6 6) e e ( eout 1 in 1 1) e e ( eout 2 in 2 2) e e ( eout 3 in 3 3) e e ( eout 4 in 4 4) e e ( eout 5 in 5 5) e e ( eout 6 in 6 6) e e ( eout 7 in 7 7) e e ( eout 8 in 8 8) e e ( eout 10 in 10 10) e e ( eout 11 in 11 11) e e ( eout 9 in 9 9) e e ( eout 12 in 12 12

PAGE 97

85 6.3.1 Station 1 Uncontrolled Model The Station 1 uncontrolled model for the YRB sequence is shown in Figure 6.9. Table 6.3 gives a brief descrip tion of the places, events, transitions, and conditions for the uncontrolled model. Notice that if multiple orders of multicolor products are placed at the same time, p2 will have more than one token at a time. This is an undesirable behavior for station 1. Therefore, the specification must force St ation 1 to process (provide) only one container at a time. Also, observe that during the proc essing in Station 1, the stopper will remain extended. As a result, the stopper will not permit any container to bypass while Station 1 is processing. 2 p1 t2 t5 p 3 p4 p6 p3 t 4 t5 tin 1e in 2e 1 pin 1c Figure 6.9: Station 1 YRB Uncontrolled Model

PAGE 98

86 Table 6.3: Places, Transitions, Conditions, and Events for Station 1 Uncontrolled Model Place Meaning Transition Meaning p1 YRB order t1 Station 1 start processing order YRB p2 Box process in station 1 t2 Station 1 done processing box p3 Box exit station 1 t3 Box movi ng from station 10 to station 1 p4 Box bypass station 1 t4 station 1 Stopper extending p5 Station 1 stopper extended t5 station 1 Stopper retracting p6 Station 1 stopper retracted Condition Meaning Events Meaning Station 1 stopper retracted Station 1 start processing Station 1 done processing 6.3.2 Station 2 Uncontrolled Model The Station 2 uncontrolled model for the YRB sequence is shown in Figure 6.10. Table 6.4 gives a brief descrip tion of the places, events, transitions, and conditions for the uncontrolled model. The uncontrolled model for stations 3 and 4 are similar to the uncontrolled model of Station 2. Notice that if a box is in front of the bar code reader (p17, Figure 6.10), the box can either be bypassed or processed by station 2. The decision to bypass or process a box will be determined by the sequence specification. Also, observe that once a box enters station 2, stopper1 will ex tend. Stopper1 will rema in extended until the box leaves the station. The Stopper will not allow any box to enter while station 2 is processing or bypassing. The set of events (in 6eandin 10e); (in 7eand in 11e) will fire when the corresponding transition (box moving from station 2 to station 3) fires. This concept will be shown more clearly in the control model Figure 6.14. ) out 1 C in 1 C ( 1 C ) out 1 e in 1 e ( 1 e ) out 2 e in 2 e ( 2 e

PAGE 99

87 15 p13 t14 t 18 p 18 t17 t19 p 20 p 20 t19 t 16 p11 p16 t15 t 6 t 7 p22 t21 t 8 p24 tin 13ein 6cin 4c 12 p13 p 14 p 17 p9 t10 t11 t12 t 23 t 7 t9 p10 p8 t in 5cin 7ein 10e in 7c out 8ein 8cin 9cin 9e in 11e in 12e in 6ein 3c 21 p 25 t in 2c Figure 6.10: Station 2 YRB Uncontrolled Model Table 6.4: Places, Transitions, Conditions, and Events for Station 2 Uncontrolled Model PlaceMeaningTransitionMeaning p7Station 2 stopper 1 retractedt6station 2 Stopper 1 retracting p8Station 2 stopper 1 extendedt7station 2 Stopper 1 retracting p9Station 2 sensor 1 passivet8station 2 Stopper 1 extending p10Station 2 sensor 1 activet9Station 2 Stopper 1 extending p11Station 2 BCR passivet10Station 2 sensor 1 turns passive p12Station 2 BCR activet11Station 2 sensor 1 turns active p13Station 2 Stopper 2 downt12Station 2 BCR goes active p14Station 2 Stopper 2 upt13Station 2 BCR goes passive p15Station 2 sensor 2 passivet14Station 2 Stopper 2 goes down p16Station 2 sensor 2 activet15Station 2 Stopper 2 goes down p17Box in front of station 2 BCRt16Station 2 Stopper 2 goes up p18Box process in station 2t17Station 2 Stopper 2 goes up p19Box exit station 2 t18Station 2 sensor 2 turns passive p20Box bypass station 2 t19Station 2 sensor 2 turns active p21Box exit station 2 t20Box moving from station 1 to station 2 t21Box moving from station 1 to station 2 t22Station 2 start processing t23Station 2 done processing box t24Station 2 start bypassing t25Station 2 done bypassing ConditionMeaningEventsMeaning Station 2 stopper 1 retractedBox exit Station 2 Station 2 sensor 2 passiveBox exit Station 2 Station 2 stopper 1 retractedBox enters station 2 Station 2 sensor 2 passiveBox enters station 2 Station 2 sensor 1 activeBox exit Station 2 Station 2 sensor 1 activeBox exit Station 2 Station 2 BCR activeStation 2 done processing Station 2 BCR activeStation 2 done bypassing ) e e ( eout 6 in 6 6) e e ( eout 7 in 7 7) e e ( eout 8 in 8 8) e e ( eout 10 in 10 10) e e ( eout 11 in 11 11) e e ( eout 9 in 9 9) e e ( eout 12 in 12 12) C C ( Cout 2 in 2 2) C C ( Cout 3 in 3 3) C C ( Cout 4 in 4 4) C C ( Cout 5 in 5 5) C C ( Cout 6 in 6 6) C C ( Cout 7 in 7 7) C C ( Cout 8 in 8 8) C C ( Cout 9 in 9 9) e e ( eout 13 in 13 13

PAGE 100

88 6.3.3 Station 5-10 Uncontrolled Model The Stations 5-10 uncontrolled model for the YRB sequence is shown in Figure 6.11. Table 6.5 gives a brief descrip tion of the places, events, transitions, and conditions for the uncontrolled model. Noti ce that if a box is in front of the bar code reader (p52, Figure 6.11), the box can either be bypassed or processed by station 5-10. The decision to bypa ss or process a box will be determined by the sequence specification. Also, obse rve that once a box is processed the token will remain in p54. The set of events (in 30eandin 36e); (in 31eandin 37e) will fire the corresponding transitions for Stopper1 to retract and Stopper 2 to go down in Station 4. This concept will be shown mo re clearly in the control model Figure 6.14. 54 p70 t 67 t56 p 53 p71 t68 t 52 p66 t69 t 55 p out 37eout 31eout 36eout 30e Figure 6.11: Stations 510 YRB Uncontrolled Model

PAGE 101

89 Table 6.5: Places, Transitions, Condit ions, and Events for Stations 5-10 Uncontrolled Model PlaceMeaningTransitionMeaning p52Box in front of station 2 BCRt66Box moving from station 1 to station 2 p53Box process in station 2t67Box moving from station 1 to station 2 p54Box exit station 2 t68Station 2 start processing p55Box bypass station 2 t69Station 2 done processing box p56Box exit station 2 t70Station 2 start bypassing t71Station 2 done bypassing EventsMeaning Box moving from station 4 to station 5 Box moving from station 4 to station 5 Box moving from station 4 to station 5 Box moving from station 4 to station 5 ) e e ( eout 36 in 36 36) e e ( eout 37 in 37 37) e e ( eout 30 in 30 30) e e ( eout 31 in 31 31 6.4 HAS-200 Contro ller Synthesis Figure 6.12 shows the filling sequence logic to complete an YRB order. Figure 6.13 shows the specification and locking controller. The specification developed is based on the filling sequence logic. The first step in Figure 6.12 (box provided) is repr esented with places c 1p (order placed), c 2p (box process) and c 3p (box leaves) in Figure 6.13. The second step in Figure 6.12 (box bypass blue filling station) is represented with places c 20p (box bypass) c 21p (box leaves) in Figure 6.13. Table 6.6 shows the plac es and transitions for the specification and the locking controller models. Table 6.7 shows the conditions and events for the specification and locking controller model.

PAGE 102

90 Box provided Box bypass metrology, cap & label, dispatcher station Box fill with blue beads Box bypass multicolor filling station Box bypass blue filling station Box fill with yellow beads Box fill with red beads Box bypass yellow filling station Box bypass red filling station Box weight is checked, cap & label are placed, and dispatch Yellow-Red-Blue Filling Sequence Figure 6.12: YRB Filling Sequence All stations except for station 1 have two locking controller modules. One module controls the processing and the ot her module controls the bypassing. For example, If a box needs to be proc essed in station 2 the specification will remove the token in the bypass locking controller place co 20p. No token in place co 20p makes the bypassing transition of stat ion 2 disabled. Station 1 has only one locking controller. The locking controller for station 1 ensures that only one box is processed at a time. If a box is bei ng processed in Station 1, the specification will remove the token from the locking controller place co 2 p. No token in place co 2 p makes the processing transit ion of station 2 disabled. Station 1 does not have a bypassing locking controller because; a box does not need to interact with any of the station 1 devices to bypass it. The other stations require that the bar code is read before deciding the action to take (p rocess or bypass). Station 1 will only

PAGE 103

91 stop a bypassing box if it is processing another box. As mentioned in section 6.3.1, the uncontrolled model of station 1 does not allow a box to bypass if the station is processing a box. Theref ore, this behavior does not need to be modeled by the specification.

PAGE 104

92 l 21tco 20pl 20tl 45tco 33pl 41tco 48pl 60tl 65tco 53pl 71tl 23tco 18pl 25tl 43tco 35pl 40tl 63tco 50pl 61tl 67tco 55pl 69tco 2pl 2t c 1tc 18pc 2pc 2tc 20pc 21pc 33pc 34pc 45tc 25tc 61tc 41tc 63tc 49pc 51pc 55pc 56pc 3pc 4pc 19pc 36pc 53pc 50pc 35pc 48pc 60tc 67tc 71tc 20tc 21tc 23tc 43tc 40tc 66tc 65tc 69tc 3t l 67t in 1ein 3ein 10ein 17e c 1pin 20ein 27e out 46eout 47eout 48eout 49e l 1t out 50e in 32eout 51eout 52eout 53eout 54eout 55ein 39ein 44ein 45ein 5eout 56eout 57ein 8eout 58ein 15eout 59eout 60eout 61ein 24ein 29ein 34eout 62eout 63e in 41ein 42ein 43e in 10cin 12cin 1cin 20cin 22cin 30cin 32cin 33cin 34c Figure 6.13: YRB Specification and LC Modules

PAGE 105

93 Table 6.6: Places and Transitions for t he HAS-200 LC and Specification Model PlaceMeaningTransitionMeaning Order placedt58Station 4 sensor 2 turns active Box processed Station 1t59Station 4 sensor 2 turns passive Box Leaves Station 1t60Box moving from station 3 to station 4 Box bypassed Station 2t61Box moving from station 3 to station 4 Box Leaves Station 2t62Station 4 start processing Box processed Station 3t63Station 4 done processing box Box Leaves Station 3t64Station 4 start bypassing Box processed Station 4t65Station 4 done bypassing Box Leaves Station 4t66Box moving from station 4 to station 5 Box bypassed Station 5-10t67Box moving from station 4 to station 5 Box Leaves Station 10t68Station 5-10 start processing Box bypassed Station 1t69Station 5-10 done processing box Box processed Station 2t70Station 5-10 start bypassing Box Leaves Station 2t71Station 5-10 done bypassing Box bypassed Station 3Station 1 start processing order Box Leaves Station 3Station 1 done processing box Box bypassed Station 4Station 2 start bypassing Box Leaves Station 4Station 2 done bypassing box Box processed Station 5-10Station 3 start processing Co-place of Station 3 done processing box Co-place of Station 4 start processing Co-place of Station 4 done processing box Co-place of Station 5-10 start bypassing Co-place of Station 5-10 done bypassing Co-place of Station 1 bypassing order Co-place of Station 2 start processing Co-place of Station 2 done processing box Co-place of Station 3 start bypassing Station 3 done bypassing Station 4 start bypassing Station 4 done bypassing Station 5-10 start processing Station 5-10 done processing box Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of Copy of c 1tc 3tc 21tc 25tc 43tc 41tc 60tc 65tc 20tc 23tc 40tc 45tc 61tc 71tl 1tc 1tl 2tc 2tl 21tc 21tl 25tc 25tl 43tc 43tl 41tc 41tl 60tl 63tc 60tc 63tl 3tc 3tl 6tc 6tl 20tc 20tl 23tc 23tl 40tc 40tc 45tl 45tl 61tc 51tl 71tc 71tl 65tc 65tl 67tc 67tl 66tc 66tc 63tc 67tl 69tc 69tc 1pc 2pc 3pc 4pc 33pc 20pc 21pc 34pc 48pc 49pc 55pc 56pc 18pc 19pc 35pc 36pc 50pc 51pc 53pc 2pc 18pc 20pc 36pc 48pc 50pc 53pc 55pc 33pco 2pco 18pco 20pco 33pco 36pco 48pco 50pco 53pco 55pc 2tc 66tc 69t

PAGE 106

94 Table 6.7: Conditions and Events for the HAS-200 LC and Specification Model Condition Meaning Events Meaning Station 1 process Station 1 start processing Station 2 process Station 1 done processing Station 2 bypass Station 2 start bypassing Station 3 process Station 2 done bypassing Station 3 bypass Station 3 start processing Station 4 process Station 3 done processing Station 4 bypass Station 4 start processing Station 5-10 process Station 4 done processing Station 5-10 bypass Station 5-10 start bypassing Station 5-10 done bypassing Station 1 start bypassing Station 2 start processing Station 2 done processing box Station 2 done bypassing box Station 3 start bypassing Station 3 done bypassing Station 4 start bypassing Station 4 done bypassing Station 5-10 start processing Station 1 start processing Station 1 done processing Station 2 start bypassing Station 2 done bypassing Station 3 start processing Station 3 done processing Station 4 start processing Station 4 done processing Station 5-10 start bypassing Station 5-10 done bypassing Station 2 start processing Station 2 done processing box Station 2 done bypassing box Station 3 start bypassing Station 3 done bypassing Station 4 start bypassing Station 4 done bypassing Station 5-10 start processing )C,C(Cout 10 in 10 10)C,C(Cout 20 in 20 20)C,C(Cout 22 in 22 22)e,e(eout 27 in 27 27)C,C(Cout 30 in 30 30)C C(Cout 32 in 32 32)e,e(eout 44 in 44 44)e,e(eout 45 in 45 45)e,e(eout 46 in 46 46)e,e(eout 49 in 49 49)e,e(eout 50 in 50 50)e,e(eout 51 in 51 51)e,e(eout 47 in 47 47)e,e(eout 48 in 48 48)e,e(eout 52 in 52 52)e,e(eout 53 in 53 53)e,e(eout 54 in 54 54)e,e(eout 55 in 55 55)e,e(eout 57 in 57 57)e,e(eout 56 in 56 56) C,C(Cout 1 in 1 1)C,C(Cout 34 in 34 34)C,C(Cout 33 in 33 33)e,e(eout 5 in 55)e,e(eout 8 in 88)e,e(eout 15 in 15 15)e,e(eout 24 in 24 24)e,e(eout 29 in 29 29)e,e(eout 34 in 34 34)e,e(eout 41 in 41 41)e,e(eout 42 in 42 42)e,e(eout 43 in 43 43)e,e(eout 58 in 58 58)e,e(eout 59 in 59 59)e,e(eout 60 in 60 60)e,e(eout 61 in 61 61)e,e(eout 62 in 62 62)e,e(eout 63 in 63 63)e,e(eout 39 in 39 39)e,e(eout 32 in 32 32)e,e(eout 20 in 20 20)e,e(eout 17 in 17 17)e,e(eout 10 in 10 10)e,e(eout 3 in 33)e,e(eout 1 in 11)C,C(Cout 12 in 12 12 Figure 6.14 shows the complete controller model for the HAS-200 YRB sequence. Table 6.8 describes the tran sitions and places for the HAS-200 control model. Table 6.9 describes the events and conditions for the HAS-200 control model. For identification purpose s the lines represent ing the condition signals and event signal between the uncontrolled mode l, specification, and locking controller are drawn differently.

PAGE 107

95 l 2tco 20pl 20tl 45tco 33pl 4tco 8pl 60t65tco 53pl 7tl 23tco 8pl 25tl 43tco 35pl 40tl 63tco 0pl 6tl 67tco 55pl 69tco 2pl 2t ctc 8pc 2pc 2tc 20pc 2pc 33pc 34pc 45tc 25tc 6tc 4tc 63tc 49pc 5pc 5pcpc 3pcpc 9pc 36pc 53pc 50pc 35pc 48pc 60tc 67tc 7tc 20tc 2tc 23tc 43tc 40tc 66tc 65tc 69tc 3t l 66t nein 3en 0en 7e cpin 20ein 27e out 46eout 47eout 48eout 49e lt out 50e in 32eout 5eout 52eout 53eout 54eout 55ein 9en 44en 45en 5eout 56eout 57ein 8eout 58en 5eout 59eout 60eout 6ein 22en 29en 34eout 62eout 63e n 4en 42en 43e in 0cn 2cincn 20cin 22cin 30cn 32cin 33cn 34c 2pt2t5p3pp 6p3t t 5toue in 2cn 2eout 5e in 4e1pnc out 3e 20 pin 3encin 2en 2c21 p 15 p13t1 t 18 p8 t 17 t19 p20 t 19 t 16 p11 p 6 t 15 t 6t7p 22 t21 t 8p 2 tn 6cin 4c 12 p 13 p 1 p 17 p9t0 t11 t 12 t 23 t in 0ct9p10 p8t in 5cn 7en 7cout 8en 8cin 9c in 9e ne n 4ein 5ein 6eout 7en 6ein 3c 25 t out 0e 29 p32 t 33 t32 p37 t36 t33 p3 p39 t38 t30 p25 p35 t31 t0 t22 p3 tin 25ein 6cn 4c26 p27 p 28 p31 p28 t29 t30 t 31 t2 tin 2c26 t23 p 2 p27 tin 5cn 9eout 22en 7cout 20en 8cin 9cn 2en 23ein 2cin 24eout 27eout 28en 26eout 29ein 8ein 3cn 22c t35 p36 p 5 t 53 t5 t 57 t1 p 56 t55 t6 t 37 p38 pn 37e2 p3 pp9 t 50 t51 t 52 t7 t39 p 0 p8 tin 3en 27cout 32en 28cn 33en 35en 36en 38ein 40en 30e5 p8 p 58 t9 p50 p60 t59 t6 p62 t61 t 63 tn 2cin 24c7 p6 tin 30cn 25 out 34en 29cin 3cout 39eout 4en 23cn 32c51 p65 t 5 p70 t 67 t56 p53 p71 t 68 t52 p66 t 69 t55 pout 45eout 42eout 44eout 43en 33cin 34c out 3eout 6eoue out 2eout 25eout 9out 24ou 8eouteout 3 out 37out 30e Figure 6.14: HAS-200 YRB Control Model

PAGE 108

96 Table 6.8: Places and Transitions for the HAS-200 Control Model Place Meaning Transition Meaning Place Meaning Transition Meaning p1YRB order placed t1Station 1 start processing order Order placed t57Station 4 Stopper 2 goes up p2Box process in station 1 t2Station 1 done processing box Box processed Station 1 t58Station 4 sensor 2 turns active p3Box exit station 1 t3Box moving from station 10 to station 1 Box Leaves Station 1 t59Station 4 sensor 2 turns passive p4Box bypass station 1 t4station 1 Stopper extending Box bypassed Station 2 t60Box moving from station 3 to station 4 p5Station 1 stopper extended t5station 1 Stopper retracting Box Leaves Station 2 t61Box moving from station 3 to station 4 p6Station 1 stopper retracted t6station 2 Stopper 1 retracting Box processed Station 3 t62Station 4 start processing p7Station 2 stopper 1 retractedt7station 2 Stopper 1 retracting Box Leaves Station 3 t63Station 4 done processing box p8Station 2 stopper 1 extendedt8station 2 Stopper 1 extending Box processed Station 4 t64Station 4 start bypassing p9Station 2 sensor 1 passive t9Station 2 Stopper 1 extending Box Leaves Station 4 t65Station 4 done bypassing p10Station 2 sensor 1 active t10Station 2 sensor 1 turns passive Box bypassed Station 5-10t66Box moving from station 4 to station 5 p11Station 2 BCR passive t11Station 2 sensor 1 turns active Box Leaves Station 10 t67Box moving from station 4 to station 5 p12Station 2 BCR active t12Station 2 BCR goes active Box bypassed Station 1 t68Station 5-10 start processing p13Station 2 Stopper 2 down t13Station 2 BCR goes passive Box processed Station 2 t69Station 5-10 done processing box p14Station 2 Stopper 2 up t14Station 2 Stopper 2 goes down Box Leaves Station 2 t70Station 5-10 start bypassing p15Station 2 sensor 2 passive t15Station 2 Stopper 2 goes down Box bypassed Station 3 t71Station 5-10 done bypassing p16Station 2 sensor 2 active t16Station 2 Stopper 2 goes up Box Leaves Station 3 Station 1 start processing order p17Box in front of station 2 BCRt17Station 2 Stopper 2 goes up Box bypassed Station 4 Station 1 done processing box p18Box process in station 2 t18Station 2 sensor 2 turns passive Box Leaves Station 4 Station 2 start bypassing p19Box exit station 2 t19Station 2 sensor 2 turns active Box processed Station 5-10 Station 2 done bypassing box p20Box bypass station 2 t20Box moving from station 1 to station 2 Co-place of Station 3 start processing p21Box exit station 2 t21Box moving from station 1 to station 2 Co-place of Station 3 done processing box p22Station 3 stopper 1 extendedt22Station 2 start processing Co-place of Station 4 start processing p23Station 3 stopper 1 retractedt23Station 2 done processing box Co-place of Station 4 done processing box p24Station 3 sensor 1 active t24Station 2 start bypassing Co-place of Station 5-10 start bypassing p25Station 3 sensor 1 passive t25Station 2 done bypassing Co-place of Station 5-10 done bypassing p26Station 3 BCR active t26Station 3 Stopper 1 retracting Co-place of Station 1 bypassing order p27Station 3 BCR passive t27Station 3 Stopper 1 retracting Co-place of Station 2 start processing p28Station 3 Stopper 2 up t28Station 3 Stopper 1 extending Co-place of Station 2 done processing box p29Station 3 Stopper 2 down t29Station 3 Stopper 1 extending Station 3 start bypassing p30Station 3 sensor 2 active t30Station 3 sensor 1 turns passive Station 3 done bypassing p31Station 3 sensor 2 passive t31Station 3 sensor 1 turns active Station 4 start bypassing p32Box in front of station 3 BCRt32Station 3 BCR goes passive Station 4 done bypassing p33Box process in station 3 t33Station 3 BCR goes active Station 5-10 start processing p34Box exit station 3 t34Station 3 Stopper 2 goes down Station 5-10 done processing box p35Box bypass station 3 t35Station 3 Stopper 2 goes down Copy of p36Box exit station 3 t36Station 3 Stopper 2 goes up Copy of p37Station 4 stopper 1 extendedt37Station 3 Stopper 2 goes up Copy of p38Station 4 stopper 1 retractedt38Station 3 sensor 2 turns active Copy of p39Station 4 sensor 1 active t39Station 3 sensor 2 turns passive Copy of p40Station 4 sensor 1 passive t40Box moving from station 2 to station 3 Copy of p41Station 4 BCR active t41Box moving from station 2 to station 3 Copy of p42Station 4 BCR passive t42Station 3 start processing Copy of p43Station 4 Stopper 2 up t43Station 3 done processing box Copy of p44Station 4 Stopper 2 down t44Station 3 start bypassing Copy of p45Station 4 sensor 2 active t45Station 3 done bypassing Copy of p46Station 4 sensor 2 passive t46Station 4 Stopper 1 retracting Copy of p47Box in front of station 4 BCRt47Station 4 Stopper 1 retracting Copy of p48Box process in station 4 t48Station 4 Stopper 1 extending Copy of p49Box exit station 4 t49Station 4 Stopper 1 extending Copy of p50Box bypass station 4 t50Station 4 sensor 1 turns passive Copy of p51Box exit station 4 t51Station 4 sensor 1 turns active Copy of p52Box in front of station 5 BCRt52Station 4 BCR goes passive Copy of p53Box process in station 5-10 t53Station 4 BCR goes active Copy of p54Box exit the system t54Station 4 Stopper 2 goes down Copy of p55Box bypass station 5-10 t55Station 4 Stopper 2 goes down p56Box exit station 10 t56Station 4 Stopper 2 goes up c 1pc 33pc 20pc 21pc 3pc 8pc 9pc 55pc 56pc 18pc 19pc 35pc 36pc 50pc 51pc 53pc 2pc 18pc 20pc 36pc 48pc 50pc 53pc 55pc 33pco 2pco 18pco 20pco 33pco 36pco 8pco 50pco 53pco 55pc 1tc 3tc 21tc 25tc 43tc 41tc 60tc 20tc 23tc 40tc 45tc 61tc 71tltctl 2tc 2tl 2tc 2tl 25tc 25tl 43tc 43tl 4tc 4tl 60tl 63tc 60tc 63tl 3tc 3tl 6tc 6tl 20tc 20tl 23tc 23tl 40tc 40tc 45tl 45tl 6tc 5tl 7tc 7tl 65tc 65tl 67tc 6tl 66tc 66tc 63tc 67tl 69tc 69tc 2tc 2pc 3pc 4pc 65tc 66tc 69t

PAGE 109

97 Table 6.9: Conditions and Event s for the HAS-200 Control Model Condition Meaning Events Meaning Station 1 process Station 1 start processing Station 1 stopper retracted Station 1 start processing Station 2 stopper 1 retracted Station 1 done processing Station 2 sensor 2 passive Station 1 done processing Station 2 stopper 1 retracted Station 1 bypass Station 2 sensor 2 passive Box exit Station 2 Station 2 sensor 1 active Box exit Station 2 Station 2 sensor 1 active Box enters station 2 Station 2 BCR active Box enters station 2 Station 2 process Box enters station 2 Station 2 BCR active Box enters station 2 Station 2 bypass Box exit Station 2 Station 3 stopper 1 retracted Box exit Station 2 Station 3 sensor 2 passive Station 2 done processing Station 3 stopper 1 retracted Station 2 done processing Station 3 sensor 2 passive Station 2 done bypassing Station 3 sensor 1 active Station 2 done bypassing Station 3 sensor 1 active Box exit Station 3 Station 3 BCR active Box exit Station 3 Station 3 process Box enters station 3 Station 3 BCR active Box enters station 3 Station 3 bypass Box enters station 3 Station 4 stopper 1 retracted Box enters station 3 Station 4 sensor 2 passive Box exit Station 3 Station 4 stopper 1 retracted Box exit Station 3 Station 4 sensor 2 passive Station 3 done processing Station 4 sensor 1 active Station 3 done processing Station 4 sensor 1 active Station 3 done bypassing Station 4 BCR active Station 3 done bypassing Station 4 process Box exit Station 4 Station 4 BCR active Box exit Station 4 Station 4 bypass Box enters station 4 Station 5-10 process Box enters station 4 Station 5-10 bypass Box enters station 4 Box enters station 4 Box exit Station 4 Box exit Station 4 Station 4 done processing Station 4 done processing Station 4 done bypassing Station 4 done bypassing Box enters station 5 Station 5-10 done processing Box enters station 5 Station 5-10 done bypassing Station 1 start processing order Station 1 done processing box Station 2 start bypassing Station 2 done bypassing box Station 3 start processing Station 3 done processing box Station 4 start processing Station 4 done processing box Station 5-10 start bypassing Station 5-10 done bypassing Station 1 bypassing order Station 2 start processing Station 2 done processing box Station 3 start bypassing Station 3 done bypassing Station 4 start bypassing Station 4 done bypassing Station 5-10 start processing Station 5-10 done processing box ) C,C(Cout 2 in 2 2) C,C(Cout 3 in 3 3) C,C(Cout 4 in 4 4) C,C(Cout 5 in 5 5) C,C(Cout 6 in 6 6)e,e(eout 1 in 1 1)e,e(eout 2 in 2 2)e,e(eout 3 in 3 3)e,e(eout 4 in 4 4)e,e(eout 5 in 5 5)e,e(eout 6 in 6 6)e,e(eout 7 in 7 7)e,e(eout 8 in 8 8) C,C(Cout 7 in 7 7) C,C(Cout 8 in 8 8) C,C(Cout 9 in 9 9) C,C(Cout 10 in 10 10) C,C(Cout 12 in 12 12) C,C(Cout 13 in 13 13) C,C(Cout 14 in 14 14) C,C(Cout 15 in 15 15) C,C(Cout 16 in 16 16) C,C(Cout 17 in 17 17) C,C(Cout 18 in 18 18) C,C(Cout 19 in 19 19) C,C(Cout 20 in 20 20) C,C(Cout 22 in 22 22) C,C(Cout 23 in 23 23) C,C(Cout 24 in 24 24) C,C(Cout 25 in 25 25) C,C(Cout 26 in 26 26) C,C(Cout 27 in 27 27) C,C(Cout 28 in 28 28) C,C(Cout 29 in 29 29)e,e(eout 10 in 10 10)e,e(eout 11 in 11 11)e,e(eout 13 in 13 13)e,e(eout 14 in 14 14)e,e(eout 15 in 15 15)e,e(eout 16 in 16 16)ee(eout 17 in 17 17)e,e(eout 19 in 19 19)e,e(eout 23 in 23 23)e,e(eout 24 in 24 24)e,e(eout 25 in 25 25)e,e(eout 26 in 26 26)e,e(eout 27 in 27 27)e,e(eout 28 in 28 28)e,e(eout 29 in 29 29)e,e(eout 32 in 32 32)e,e(eout 33 in 33 33)e,e(eout 34 in 34 34)e,e(eout 35 in 35 35)e,e(eout 36 in 36 36)e,e(eout 37 in 37 37)e,e(eout 38 in 38 38)e,e(eout 39 in 39 39)e,e(eout 40 in 40 40)e,e(eout 9 in 9 9)e,e(eout 12 in 12 12)e,e(eout 21 in 21 21)e,e(eout 22 in 22 22)e,e(eout 30 in 30 30)e,e(eout 31 in 31 31) C,C(Cout 11 in 11 11) C,C(Cout 21 in 21 21) C,C(Cout 30 in 30 30) C,C(Cout 32 in 32 32)e,e(eout 41 in 41 41)e,e(eout 42 in 42 42)e,e(eout 43 in 43 43)e,e(eout 44 in 44 44)e,e(eout 45 in 45 45)e,e(eout 46 in 46 46)e,e(eout 49 in 49 49)e,e(eout 50 in 50 50)e,e(eout 51 in 51 51)e,e(eout 47 in 47 47)e,e(eout 48 in 48 48)e,e(eout 52 in 52 52)e,e(eout 53 in 53 53)e,e(eout 54 in 54 54)e,e(eout 55 in 55 55)e,e(eout 57 in 57 57)e,e(eout 56 in 56 56)e,e(eout 18 in 18 18)e,e(eout 20 in 20 20) C,C(Cout 1 in 1 1) C,C(Cout 34 in 34 34) C,C(Cout 33 in 33 33) C,C(Cout 31 in 31 31)e,e(eout 64 in 64 64)e,e(eout 58 in 58 58)e,e(eout 59 in 59 59)e,e(eout 60 in 60 60)e,e(eout 61 in 61 61)e,e(eout 62 in 62 62)e,e(eout 63 in 63 63

PAGE 110

98 6.5 HAS-200 Supervisory Controller Verification SESA is used to obtain the reachable states for the HAS-200 Control model. In order to analyze the behavior of the HAS-200 control model it is necessary to modify the uncontrollable actions of the sensors and bar code readers in Station 2, 3, and 4. To control the sensors and bar code readers, events will be added to their transitions in the control model. These events will force the uncontrollable transitions to fire in a sequence that is representative of the physical system. For example, after the box leaves Station 1 the conveyor belt will take the box to Station 2. Sens or 1 will go active (p10 in Figure 6.15), since the box is in front of Stat ion 2. A place and a transition (c 10p andc 12t) are added to the sequence specification to repr esent this state as shown in Figure 6.15. An event (c 54e) is added as output to c 12t and as input to t12 as shown in Figure 6.15. This way, the specification can ensure that Sensor 1 (p10 and t12 in Figure 6.15) will fire only after the box ha s left Station1. Also, after the box has entered Station 2 (p15 in Figure 6.15) Sens or 1 will go passive and the bar code reader will go active. Places and transitions (c 9p, c 12p, c 11t and c 16t in Figure 6.15) are added to the sequence specification to represent these states. Two events are added to ensure Sensor 1 (p9 and t12 in Figure 6.15) and the bar code reader (p12 and t16 in Figure 6.15) will fire only after the box has entered Station 2. One event (c 56e) will be an output to c 11t and input to t11 as shown in Figure 6.15. The second event (c 57e) will be output to c 16t and input to t16 as shown in Figure 6.15. The same procedure is applie d for the rest of the sensors and bar

PAGE 111

99 code readers. For testing purposes it is assumed that no queues will form at stations 2, 3, and 4. As a result, Sensor2 is remov ed from the model. The new HAS-200 model is shown in Figure 6.16. T able 6.10 describes the transitions and places of the new control model. Table 6.11 describes the conditions and events of the new control model. 15 p3t4t 18 p18t 17t9p26 t20 t19 t 16 p11 p6 t15t 6t7p22 t21 t 8p24 tn 3en 6cn 4c12 p3 p4 p7 p9t10 t11 t2 t 23 t n 0c7t9p0 p8t in 5cn 7en 7cout 8en 8cn 9cin 9e ne in 2en 4ein 5ein 6eout 7en 6ein 3c 25 t 27 t n 73ein 56e in 54e in 57 n 7e in 74e in 8eout 9e ctc 2pc 3pc 23tinein 3en 0ein 7ecp ctc 0p c 2t c 9p c 5pc 6tc 2p c 27tout 52e out 53eout 54eout 55eout 56e out 57eout 58e l 22tco 6pl 25t c 2tout 8c out 0e Figure 6.15: Portion of SESA Tank Control Model Pertaining t11, t12, and t16

PAGE 112

100 tco 2pl 2t 2ptt5p 3pp 6p3tt5toue in 2cn 2eout 5e in 4e 1pn out 3e ut 45ein 42e in 44e n 43e 15 p13tt 18 p 8 t7t19 p26 t0 t19 t 16 p11 p6t15t 6t7p 22 t21 t 8p2 tn 3encn 4c12 p13 p 1 p 17 p9t10 t11 t 12 t 23 t nc7t9p10 p8t n 5cn 7ein 7cuten 8cnc n 9e ine n 2en 4enen 6eout 7en 6en 3c 25 t7 t in 3ein 56e n 54e n 57 n 7e n 74e in 8eout 9eout 0encn 2c29 p 32 t33 t32 p 37 t36 t 39 t38 t30 p 25 p 35 t3 t22 pout 25en 6cn 4c26 p 27 p28 p 31 p28 t29 t 30 t31 t23 p 2 pn 5cout 22en 7cn 20ein 8cn 2en 23ein 24ein 27en 28en 26en 29ein 3c n 59e n 62e in 76e n 79e 20 p 21 pn 30eout 3e ou 4e out 7eout 6eout 5e1 t0 t 3 t 2 t t 5 t6 t 7 t 8 t 9 t8 p 9 p 50 p 6 p7 pn 2cn 28c3 pn 20n 9cn 2c 5 p 53 t 5 t 58 t57 t 60 t 59 t1 p 56 t 55 t 37 p 62 t 61 t 38 p63 tin 37en 26cin 24c 2 p 3 p p 50 t 51 t52 t6 t 39 p0 pin 25cn 34eout 32en 33ein 3eout 36en 38eou 39en 40en 4en 23c65 t 33 p 36 p 35 p 70 t67 t 71 t68 t 66 t69 tn 22c 72 t 3 t t 75 t 76 t 77 t ctc 0pc 2pc 23pc 33tc 4pc 35t38tc 3pc 4pc 5pc 36pc 50pc 30pc 47tc 73tc 22tc 23tc 25tc 45tc 44tctnen 3en 0ein 7ecpin 25ein 33e ctc 0pn 46eout 47eout 48eout 49e c 2t c 9pout 50e c 5pc 6tc 2pout 5e c 27tc 34tout 52e c 22p c 9pout 5e c 28p out 54eout 55e out 56e c 35p55tc 3pc 60tc 4pc 69tc 66tn 36ein 47ec 56tout 57e c 6p out 58e c 4p out 59eout 60e out 6e c 4pn 49eout 62e n 5eout 63e c 77tn 5eout 64e in 8en 9ec 3tout 65e out 66e out 67eout 68e out 69e 9pc 0tc 2pc 7tc 22pc 28pc 9tin 22en 3eout 70e out 7e out 72eout 73e out 74e c 23pc 32tc 24pc 39tc 7p c 32pc 67tn 38eout 75e out 76e c 57t c 4pc 35pout 77e c 54tc 38pout 78e c 6tc 7tn 45eout 79e c 72tin 48eout 80e c 75tn 50eout 8e c 45pc 47p 22tco 6pl 25t l 23tco 8pl 27t 45tco 9p7t l 44tco 3pl 49t co 42p66tl 69t n 6ein 64en 6ein 67e l 73tl 77tco 9p l 7tco 44pl 67t in 8e l 72tco 7pl 75t in 83e in 84e in 78ec 2tout 20 ou 2eout 28e29eout 42eout 43eoueout 35eoutcout 8cout 0cout 6cout 8c out 24cout 26cout 27cout 28cout 82eout 3eout 84eout 85eout 86eout 87e Figure 6.16: SESA HAS-200 Control Model

PAGE 113

101 Table 6.10: Places and Transitions for the SESA HAS-200 Control Model Place Meaning Transition Meaning Place Meaning Transition Meaning p1YRB order placed t1Station 1 start processing order Order placed Station 1 start processing order p2Box process in station 1 t2Station 1 done processing box Box processed Station 1 Station 1 done processing box p3Box exit station 1 t3Box moving from station 10 to station 1 Box Leaves Station 1 Station 2 sensor 1 goes active p4Box bypass station 1 t4station 1 Stopper extending Station 2 sensor 1 goes active Station 2 start bypassing p5Station 1 stopper extended t5station 1 Stopper retracting Box bypassed Station 2 Station 2 sensor 1 goes passive p6Station 1 stopper retracted t6station 2 Stopper 1 retracting Station 2 sensor 1 goes passive Station 2 BCR goes active p7Station 2 stopper 1 retractedt7station 2 Stopper 1 retracting Station 2 BCR goes active Station 2 done bypassing box p8Station 2 stopper 1 extendedt8station 2 Stopper 1 extending Box Leaves Station 2 Station 3 sensor 1 goes active p9Station 2 sensor 1 passive t9Station 2 Stopper 1 extending Station 3 sensor 1 goes active Station 3 start processing p10Station 2 sensor 1 active t10Station 2 sensor 1 turns passive Box processed Station 3 Station 3 sensor 1 goes passive p11Station 2 BCR passive t11Station 2 sensor 1 turns passive Station 3 sensor 1 goes passive Station 3 BCR goes active p12Station 2 BCR active t12Station 2 sensor 1 turns active Station 3 BCR goes active Station 3 done processing box p13Station 2 Stopper 2 down t13Station 2 sensor 1 turns active Box Leaves Station 3 Station 4 sensor 1 goes active p14Station 2 Stopper 2 up t14Station 2 BCR goes active Station 4 sensor 1 goes active Station 4 start processing p15Box in front of station 2 BCRt15Station 2 BCR goes active Box processed Station 4 Station 4 sensor 1 goes passive p16Box process in station 2 t16Station 2 BCR goes passive Station 4 sensor 1 goes passive Station 4 BCR goes active p17Box exit station 2 t17Station 2 BCR goes passive Station 4 BCR goes active Station 4 done processing box p18Box bypass station 2 t18Station 2 Stopper 2 goes down Box Leaves Station 4 Station 5-10 start bypassing p19Box exit station 2 t19Station 2 Stopper 2 goes down Box bypassed Station 5-10 Station 5-10 done bypassing p20Station 3 stopper 1 extendedt20Station 2 Stopper 2 goes up Box Leaves Station 10 Station 1 bypassing order p21Station 3 stopper 1 retractedt21Station 2 Stopper 2 goes up Box bypassed Station 1 Station 2 sensor 1 goes active p22Station 3 sensor 1 active t22Box moving from station 1 to station 2 Station 2 sensor 1 goes active Station 2 start processing p23Station 3 sensor 1 passive t23Box moving from station 1 to station 2 Box processed Station 2 Station 2 sensor 1 goes passive p24Station 3 BCR active t24Station 2 start processing Station 2 sensor 1 goes passive Station 2 BCR goes active p25Station 3 BCR passive t25Station 2 done processing box Station 2 BCR goes active Station 2 done processing box p26Station 3 Stopper 2 up t26Station 2 start bypassing Box Leaves Station 2 Station 3 sensor 1 goes active p27Station 3 Stopper 2 down t27Station 2 done bypassing Station 3 sensor 1 goes active Station 3 start bypassing p28Box in front of station 3 BCRt28Station 3 Stopper 1 retracting Box bypassed Station 3 Station 3 sensor 1 goes passive p29Box process in station 3 t29Station 3 Stopper 1 retracting Station 3 sensor 1 goes passive Station 3 BCR goes active p30Box exit station 3 t30Station 3 Stopper 1 extending Station 3 BCR goes active Station 3 done bypassing p31Box bypass station 3 t31Station 3 Stopper 1 extending Box Leaves Station 3 Station 4 sensor 1 goes active p32Box exit station 3 t32Station 3 sensor 1 turns passive Station 4 sensor 1 goes active Station 4 start bypassing p33Station 4 stopper 1 extendedt33Station 3 sensor 1 turns passive Box bypassed Station 4 Station 4 sensor 1 goes passive p34Station 4 stopper 1 retractedt34Station 3 sensor 1 turns active Station 4 sensor 1 goes passive Station 4 BCR goes active p35Station 4 sensor 1 active t35Station 3 sensor 1 turns active Station 4 BCR goes active Station 4 done bypassing p36Station 4 sensor 1 passive t36Station 3 BCR goes passive Box Leaves Station 4 Station 5-10 start processing p37Station 4 BCR active t37Station 3 BCR goes passive Box processed Station 5-10 Station 5-10 done processing box p38Station 4 BCR passive t38Station 3 BCR goes active Co-place of Copy of p39Station 4 Stopper 2 up t39Station 3 BCR goes active Co-place of Copy of p40Station 4 Stopper 2 down t40Station 3 Stopper 2 goes down Co-place of Copy of p41Box in front of station 4 BCRt41Station 3 Stopper 2 goes down Co-place of Copy of p42Box process in station 4 t42Station 3 Stopper 2 goes up Co-place of Copy of p43Box exit station 4 t43Station 3 Stopper 2 goes up Co-place of Copy of p44Box bypass station 4 t44Box moving from station 2 to station 3 Co-place of Copy of p45Box exit station 4 t45Box moving from station 2 to station 3 Co-place of Copy of p46Box in front of station 5 BCRt46Station 3 start processing Co-place of Copy of p47Box process in station 5-10t47Station 3 done processing box Copy of p48Box exit the system t48Station 3 start bypassing Copy of p49Box bypass station 5-10 t49Station 3 done bypassing Copy of p50Box exit station 10 t50Station 4 Stopper 1 retracting Copy of t51Station 4 Stopper 1 retracting Copy of t52Station 4 Stopper 1 extending Copy of t53Station 4 Stopper 1 extending Copy of t54Station 4 sensor 1 turns passive Copy of t55Station 4 sensor 1 turns passive Copy of t56Station 4 sensor 1 turns active t57Station 4 sensor 1 turns active t58Station 4 BCR goes passive t59Station 4 BCR goes passive t60Station 4 BCR goes active t61Station 4 BCR goes active t62Station 4 Stopper 2 goes down t63Station 4 Stopper 2 goes down t64Station 4 Stopper 2 goes up t65Station 4 Stopper 2 goes up t66Box moving from station 3 to station 4 t67Box moving from station 3 to station 4 t68Station 4 start processing t69Station 4 done processing box t70Station 4 start bypassing t71Station 4 done bypassing t72Box moving from station 4 to station 5 t73Box moving from station 4 to station 5 t74Station 5-10 start processing t75Station 5-10 done processing box t76Station 5-10 start bypassing t77Station 5-10 done bypassing c 1pc 2pc 3pc 24pc 9pc 10pc 15pc 12pc 19pc 22pc 28pc 23pc 30pc 36pc 41pc 35pc 38pc 43pc 49pc 2pc 18pc 16pc 31pc 2pcpc 47pc 9pc 29pc 50pc 4pc 10pc 17pc 1tc 38tc 12tc 23tc 16tc 11tc 27tc 69tc 47tc 56tc 66tc 55tc 60tc 33tc 3tctc 13tc 2tc 22tc 22tc 10tc 25tc 25tc 44tc 17tc 4tc 35tctl 67tc 69tc 9tc 57tc 67tc 27tc 5tc 23tc 61tc 49tc 5tc 71tc 72tc 71tc 39tctc 75tc 72tc 32tc 6tc 66tc 34tc 45tc 5tc 2tc 73tctc 9pc 12pc 15pc 2pc 22pc 23pc 28pc 32pc 36pc 41pc 35pc 38pc 5pc 7pco 2pco 16pco 18pco 29pco 31pco 2pcopco 9pco 8pl 1tl 23tl 27tl 69tl 47tl 66tl 22tl 25tl 44tl 9tl 67tl 71tl 72tl 5tl 45tl 2tl 73tlt

PAGE 114

102 Table 6.11: Conditions and Events for the SESA HAS-200 Control Model Condition Meaning Event s Meaning Events Meaning Station 1 process Station 1 start processing Station 4 done bypassing Station 1 stopper retracted Station 1 start processing Station 4 done processing Station 2 stopper 1 retracted Station 1 done processing Station 4 done processing Station 2 stopper 1 retracted Station 1 done processing Box enters station 5 Station 2 sensor 1 active Station 1 bypass Box enters station 5 Station 2 sensor 1 active Box exit Station 2 Station 5-10 done processing Station 2 BCR active Box exit Station 2 Station 5-10 done bypassing Station 2 process Box enters station 2 Station 1 start processing order Station 2 BCR active Box enters station 2 Station 1 done processing box Station 2 bypass Box enters station 2 Station 2 Sensor 1 goes active Station 3 stopper 1 retracted Box enters station 2 Station 2 start bypassing Station 3 stopper 1 retracted Station 2 Start Processing Station 2 start bypassing Station 3 sensor 1 active Station 2 Start Bypassing Station 2 start bypassing Station 3 sensor 1 active Box exit Station 2 Station 2 done bypassing box Station 3 BCR active Box exit Station 2 Station 3 Sensor 1 goes active Station 3 process Station 2 done bypassing Station 3 start processing Station 3 BCR active Station 2 done bypassing Station 3 start processing Station 3 bypass Station 2 done processing Station 3 start processing Station 4 stopper 1 retracted Station 2 done processing Station 3 done processing box Station 4 stopper 1 retracted Box exit Station 3 Station 4 Sensor 1 goes active Station 4 sensor 1 active Box exit Station 3 Station 4 start processing Station 4 sensor 1 active Box enters station 3 Station 4 start processing Station 4 BCR active Box enters station 3 Station 4 start processing Station 4 process Box enters station 3 Station 4 done processing box Station 4 BCR active Box enters station 3 Station 5-10 start bypassing Station 4 bypass Station 3 Start Processing Station 5-10 done bypassing Station 5-10 process Station 3 Start Bypassing Station 2 Sensor 1 goes active Station 5-10 bypass Box exit Station 3 Station 2 start processing Box exit Station 3 Station 2 start processing Station 3 done bypassing Station 2 start processing Station 3 done bypassing Station 2 done processing box Station 3 done processing Station 3 Sensor 1 goes active Station 3 done processing Station 3 start bypassing Box exit Station 4 Station 3 start bypassing Box exit Station 4 Station 3 start bypassing Box enters station 4 Station 3 done bypassing Box enters station 4 Station 4 Sensor 1 goes active Box enters station 4 Station 4 start bypassing Box enters station 4 Station 4 start bypassing Station 4 Start Processing Station 4 start bypassing Station 4 Start Bypassing Station 4 done bypassing Box exit Station 4 Station 5-10 start processing Box exit Station 4 Station 5-10 done processing box Station 4 done bypassing ) C,C(Cout 2 in 2 2) C,C(Cout 3 in 3 3) C,C(Cout in) C,C(Cout 5 in 5 5) C,C(Cout 6 in 6 6)ee(eout 1 in 1 1)ee(eout 2 in 2 2)ee(eout 3 in 3 3)ee(eout in)e,e(eout 5 in 5 5)ee(eout 6 in 6 6)ee(eout 7 in 7 7)ee(eout 8 in 8 8) C,C(Cout 7 in 7 7) C,C(Cout 8 in 8 8) C C(Cout 9 in 9 9) C,C(Cout 10 in 10 10) C,C(Cout 12 in 12 12) C,C(Cout 13 in 13 13) C,C(Cout 1 in 1 1) C,C(Cout 15 in 15 15) C,C(Cout 16 in 16 16) C,C(Cout 17 in 17 17) C,C(Cout 18 in 18 18) C C(Cout 19 in 19 19) C,C(Cout 20 in 20 20) C,C(Cout 22 in 22 22) C,C(Cout 23 in 23 23) C,C(Cout 2 in 2 2) C,C(Cout 25 in 25 25) C,C(Cout 26 in 26 26) C,C(Cout 27 in 27 27) C,C(Cout 28 in 28 28)ee(eout 10 in 10 10)ee(eout 11 in 11 11)ee(eout 13 in 13 13)ee(eout 1 in 1 1)ee(eout 15 in 15 15)ee(eout 16 in 16 16)ee(eout 17 in 17 17)ee(eout 19 in 19 19)ee(eout 23 in 23 23)e,e(eout 2 in 2 2)e,e(eout 25 in 25 25)ee(eout 26 in 26 26)e,e(eout 27 in 27 27)e,e(eout 28 in 28 28)e,e(eout 29 in 29 29)e,e(eout 32 in 32 32)e,e(eout 33 in 33 33)e,e(eout 3 in 3 3)ee(eout 35 in 35 35)e,e(eout 36 in 36 36)e,e(eout 37 in 37 37)e,e(eout 38 in 38 38)e,e(eout 39 in 39 39)ee(eout 9 in 9 9)e,e(eout 12 in 12 12)ee(eout 21 in 21 21)ee(eout 22 in 22 22)e,e(eout 30 in 30 30)ee(eout 31 in 31 31) C,C(Cout 11 in 11 11) C,C(Cout 21 in 21 21)e,e(eout 1 in 1 1)ee(eout 2 in 2 2)e,e(eout 3 in 3 3)e,e(eout in)e,e(eout 5 in 5 5)e,e(eout 6 in 6 6)e,e(eout 9 in 9 9)e,e(eout 50 in 50 50)e,e(eout 51 in 51 51)e,e(eout 7 in 7 7)e,e(eout 8 in 8 8)e,e(eout 52 in 52 52)e,e(eout 53 in 53 53)e,e(eout 5 in 5 5)ee(eout 55 in 55 55)e,e(eout 57 in 7 57)e,e(eout 56 in 56 56)ee(eout 18 in 18 18)ee(eout 20 in 20 20) C,C(Cout 1 in 1 1)e,e(eout 58 in 58 58)e,e(eout 59 in 59 59)e,e(eout 60 in 60 60)e,e(eout 61 in 61 61)e,e(eout 62 in 62 62)e,e(eout 63 in 63 63)e,e(eout 0 in 0 0)ee(eout 64 in 64 64)ee(eout 65 in 65 65)ee(eout 66 in 66 66)ee(eout 67 in 67 67)ee(eout 68 in 68 68)ee(eout 69 in 69 69)ee(eout 70 n 70 70)ee(eout 7 n 7 7)ee(eout 72 n 72 72)ee(eout 73 n 73 73)ee(eout 74 n 74 74)ee(eout 75 n 75 75)ee(eout 76 n 76 76)ee(eout 77 n 77 77)ee(eout 78 n 78 78)ee(eout 79 n 79 79)ee(eout 80 n 80 80)ee(eout 8 n 8 8)ee(eout 82 n 82 82)ee(eout 83 n 83 83)ee(eout 84 n 84 84)ee(eout 85 n 85 85)ee(eout 86 n 86 86)ee(eout 87 n 87 87 The SESA software tool is used to analyze the control model for an order of one box. The HAS-200 control model wi ll have only one token in p1 (order placed) and one token in c 1p(specification order plac ed). The SESA analysis report is shown in Figure 6.17. The SESA reachable state results are shown in Appendix D. A reachability graph is constructed based on the SESA reachable states results and is shown in Figure 6.18. Table 6.12 is provided as a guide to identify the corresponding places and trans itions for the SESA results. The results of the analysis r eport are explained below.

PAGE 115

103 Not Reversible: The box leaves t he system after it is processed by Station 10. The box does not return to the system to be processed. Therefore, the m odel does not go back to its initial condition. The model is not reversible, since ther e is not a firing sequence that will take the system to its initial state. Bounded and Safe: The model is bounded, because at all times the number of tokens remains the same in all places. The tokens in the control model represent the state of devices (act uators: up/down; sensors active/passive, etc.) in t he system, therefore it does not make sense in the physical system for a device to have two tokens. Furthermore, if there is an order of one box t he model can only have one box leaving the system (one token p48, Figure 6.16). The boundedness of the model guarantees that no excess boxes are created during the process. Safeness will only be a requirement in the model for an order of one box. Safeness will guar antee that only one box remains in the system from beginn ing to end. Note that for orders of two or more the model will no longer be safe, but remains bounded as shown in Figure 6.19, 6.20, and 6.21. Not Live: There are no dead transitions at the initial marking. In other words, the model is able to fire at least once and the box is processed by the system. However, there ar e dead states which make the model not live. All transitions are able to fi re at least once, but after t77 (box

PAGE 116

104 exit system p48 in Figure 6.16) fires all transitions become L0 live. This is a desired behavior for the HAS-200 system. Figure 6.17: SESA Analysis Report for HAS-200

PAGE 117

105 t77, t96, t130 t1, t4, t78, t115 t3, t97 t2, t5, t79, t116 t13, t98 t12, t80 t9, t22, t99, t119 t8, t23, t81, t117 t10, t100 t11, t82 t17, t101 t16, t83 t14, t24 t15, t26 t21, t25, t102, t120 t20, t27, t84, t118 t35, t103 t34, t85 t16, t19, t31, t44, t104, t121 t7, t18, t30, t45, t86, t123 t32, t105 t33, t87 t39, t106 t38, t88 t37, t48 t36, t46 t42, t49, t107, t122 t36, t46 t57, t108 t43, t47, t89, t124 t28, t40, t52, t67, t109, t125 t56, t90 t54, t110 t29, t41, t53, t66, t91, t127 t61, t111 t55, t92 t59, t70 t60, t93 t64, t71, t112 t126 t58, t68 t50, t63, t72 t113, t131 t65, t69, t94, t128 t74 t51, t62, t73, t95, t129 t75, t114, t132 dead t76 4321056 7 89 10 1112 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 Figure 6.18: HAS-200 Reachability Graph

PAGE 118

106 Table 6.12: Guide for the Places and Transitions for the SESA HAS-200 Control Model Place SESA PlaceTransitionSESA Transition Place SESA PlaceTransitionSESA Transition p1 p1 t1 t1p51t78 p2 p2 t2 t2p52t79 p3 p3 t3 t3p53t80 p4 p4 t4 t4p54t81 p5 p5 t5 t5p55t82 p6 p6 t6 t6p56t83 p7 p7 t7 t7p57t84 p8 p8 t8 t8p58t85 p9 p9 t9 t9p59t86 p10 p10 t10 t10p60t87 p11 p11 t11 t11p61t88 p12 p12 t12 t12p62t89 p13 p13 t13 t13p63t90 p14 p14 t14 t14p64t91 p15 p15 t15 t15p65t92 p16 p16 t16 t16p66t93 p17 p17 t17 t17p67t94 p18 p18 t18 t18p68t95 p19 p19 t19 t19p69t96 p20 p20 t20 t20p70t97 p21 p21 t21 t21p71t98 p22 p22 t22 t22p72t99 p23 p23 t23 t23p73t100 p24 p24 t24 t24p74t101 p25p25 t25 t25p75t102 p26 p26 t26 t26p76t103 p27 p27 t27 t27p77t104 p28 p28 t28 t28p78t105 p29 p29 t29 t29p79t106 p30 p30 t30 t30p80t107 p31 p31 t31 t31p81t108 p32 p32 t32 t32p82t109 p33 p33 t33 t33p83t110 p34 p34 t34 t34p84t111 p35 p35 t35 t35p85t112 p36 p36 t36 t36p86t113 p37 p37 t37 t37p87t114 p38 p38 t38 t38p88t115 p39 p39 t39 t39p89t116 p40 p40 t40 t40p90t117 p41 p41 t41 t41p91t118 p42 p42 t42 t42p92t119 p43 p43 t43 t43p93t120 p44 p44 t44 t44p94t121 p45 p45 t45 t45p95t122 p46 p46 t46 t46p96t123 p47 p47 t47 t47t124 p48 p48 t48 t48t125 p49 p49 t49 t49t126 p50 p50t50 t50t127 t51 t51t128 t52 t52t129 t53 t53t130 t54 t54t131 t55 t55t132 t56 t56 t57 t57 t58 t58 t59 t59 t60 t60 t61 t61 t62 t62 t63 t63 t64 t64 t65 t65 t66 t66 t67 t67 t68 t68 t69 t69 t70 t70 t71 t71 t72 t72 t73 t73 t74 t74 t75 t75 t76 t76 t77 t77 c 1pc 2pc 3pc 24pc 9pc 10pc 15pc 12pc 19pc 22pc 28pc 23pc 30pc 36pc 41pc 35pc 38pc 43pc 49pc 50pc 4pc 10pc 17pc 9pc 12pc 15pc 24pc 22pc 23pc 28pc 32pc 36pc 41pc 35pc 38pc 45pc 47pco 2pco 16pco 18pco 29pco 31pco 42pco 44pco 49pco 48pc 1tc 38tc 12tc 23tc 16tc 11tc 27tc 69tc 47tc 56tc 66tc 55tc 60tc 33tc 3tc 13tc 22tc 10tc 25tc 17tc 35tc 44tc 49tc 57tc 67tc 54tc 61tc 71tc 72tc 39tc 75tc 32tc 34tc 45tc 2tc 73tc 77tl 1tl 23tl 27tl 69tl 47tl 66tl 22tl 25tl 44tl 49tl 67tl 71tl 72tl 75tl 45tl 2tl 73tl 77t

PAGE 119

107 The HAS-200 control model is inserted in SESA for orders of two and three tokens in p1 and inc 1p. The SESA results proved that the control model was capable of processing orders of mu ltiple boxes (multiple tokens) while avoiding resource sharing conflicts. Howe ver, due to the very large state space of the analysis the results could not be provi ded in this thesis. Please contact the author for the reachable st ates output files. Neve rtheless, the SESA analysis reports are shown in Figur e 6.19 and 6.20. Note that for two and three tokens, the control model has the same properties at the one token control model (not reversible, bounded, and not live). Figure 6.19: SESA Analysis Report HAS-200 2 Tokens Figure 6.20: SESA Analysis Report HAS-200 3 Tokens 6.6 HAS-200 Tank Trans formation Algorithm Initialisation: T = {t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t 13, t14, t15, t 16, t17, t18, t19, t20, t21, t22, t23, t24, t25, t26, t27, t28, t29, t30, t31, t32, t33, t34, t35, t36, t37, t38, t39, t40, t41, t42, t43, t44, t45, t46, t47, t48, t49, t50, t51, t52, t53, t54, t55, t56, t57, t58, t59, t60, t61, t62, t63, t64, t65, t66,

PAGE 120

108 t67, t68, t69, t70, t71, c 1t, c 2t, c 3t, c 20t,c 21t, c 23t, c 25t, c 40t,c 41t, c 43t, c 45t, c 60t, c 61t, c 63t, c 65t, c 66t, c 67t,c 69t, c 71t} Tc = {t1, t2, t3, t4, t5, t6, t7, t8, t9, t14, t15, t16, t 17, t20, t21, t 22, t23, t24, t25, t26, t27, t28, t29, t34, t35, t36, t37, t40, t41, t42, t43, t44, t45, t46, t47, t48, t49, t54, t55, t56, t57, t60, t61, t62, t63, t64, t65, t66, t67, t68, t69, t70, t71, c 1t, c 2t, c 3t, c 20t,c 21t, c 23t, c 25t, c 40t,c 41t, c 43t, c 45t, c 60t, c 61t, c 63t, c 65t, c 66t, c 67t,c 69t, c 71t}. Tu = {t10, t11, t12, t13, t18, t19, t30, t31, t32, t33, t38, t3 9, t50, t51, t52, t53, t58, t59} CN = {C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14, C15, C16, C17, C18, C19, C20, C21, C22, C23, C24, C25, C26, C27, C28, C29, C30, C31, C32, C33, C34} Cin = {in 1C, in 2C, in 3C, in 4C, in 5C, in 6C, in 7C, in 8C, in 9C, in 10C, in 11C, in 12C, in 13C, in 14C, in 15C, in 16C, in 17C, in 18C, in 19C, in 20C, in 21C, in 22C, in 23C, in 24C, in 25C, in 26C, in 27C, in 28C, in 29C, in 30C, in 31C, in 32C, in 33C, in 34C } Cout = {out 1C, out 2C, out 3C, out 4C, out 5C, out 6C, out 7C, out 8C, out 9C, out 10C, out 11C, out 12C, out 13C, out 14C, out 15C, out 16C, out 17C, out 18C, out 19C, out 20C, out 21C, out 22C, out 23C, out 24C, out 25C, out 26C, out 27C, out 28C, out 29C, out 30C, out 31C, out 32C, out 33C, out 34C } Steps 1.1 through 1.5 transform the places, conditions, and events that interact with transition t1. The HAS-200 control model is shown in Figure 6.14. For convenience purposes, the portion of the HAS-200 c ontrol model that concerns t1 is shown in Figure 6.21.

PAGE 121

109 2 p1 tout 1e 1 pin 1c ut 0 2e Figure 6.21: Portion of H AS-200 Control Model Pertaining to Transition t1 Step 1: t • Tc insert a rung into the Ladder Logic Diagram and: Step 1.1: p •t insert p into the rung as an input variable (examine on) and also as an unlatched output (output unlatch). As illustrated in Figure 6.21, p1 is an input place for t1. p1 is inserted into the rung as an input variable and as an unlatched output as shown in Figure 6.22. 0 YRB order placed p1 U YRB order placed p1 (End) Figure 6.22: HAS-200 Control Model In sert Input Place for t1 in LLD Step 1.2: c Cin insert c into the rung as an input variable. As illustrated in Figure 6.21, C1 is a conditions input for t1. C1 is inserted into the rung as an input variable as shown in Figure 6.23. 0 YRB order placed p1 Station 1 process c1 U YRB order placed p1 (End) Figure 6.23: HAS-200 Control Model Inse rt Condition Input s for t1 in LLD

PAGE 122

110 Step 1.3: e Ein insert e into the rung as an input variable. As illustrated in Figure 6.21, t1 has no event inputs. Therefore, no instructi ons are added to the rung. Step 1.4: p t insert p into the rung as a latched output (output latch). As illustrated in Fi gure 6.21, p2 is an output place for t1. p2 is insert ed into the rung as a latched output as shown in Figure 6.24. 0 YRB order placed p1 Station 1 process c1 U YRB order placed p1 L Box process in station 1 p2 (End) Figure 6.24: HAS-200 Control Model Inse rt Output Place for t1 in LLD Step 1.5: e Eout insert e into the rung as an output (output energize) and the rung ends. As illustrated in Figure 6.21, out 1e andout 2e are event outputs for t1. out 1e andout 2e are inserted into the rung as outputs as shown in Figure 6.25. 0 YRB order placed p1 Station 1 process c1 U YRB order placed p1 L Box process in staion 1 p2 Station 1 start processing e1 Station 1 start processing e2 (End) Figure 6.25: HAS-200 Control Model Inse rt Event Output for t1 in LLD

PAGE 123

111 Steps 2.1 through 2.2 transform the plac es that interact with condition C2. For convenience purposes, the portion of the HAS-200 c ontrol model that concerns C2 is shown in Figure 6.26. 5 p6 p4 t 5 t in 2cin 2e in 4e Figure 6.26: Portion of HAS-200 Control Model Pertaining to Condition C2 Step 2: c Cout, insert a rung into the Ladder Logic Diagram and: Step 2.1: p c • insert p in the rung as an input variable. As illustrated in Figure 6.26, p6 is an input place for C2. p6 is inserted into the rung as an input variable as shown in Figure 6.27. 142 Station 1 stopper retracted p6 Figure 6.27: HAS-200 Control Model Insert Input Place for C1 in LLD Step 2.2: Insert c in the rung as an output variable and end the rung. C2 is inserted as an output variable into the same rung of step 2.1 as shown in Figure 6.28. 109 Station 1 stopper retracted p6 Station 1 stopper retracted c2 Figure 6.28: HAS-200 Control Model Insert Output C2 in LLD The resulting Ladder Logic Diagram is shown in Figure 6.29.

PAGE 124

112 0 YRB order placed p1 Station 1 process c1 U YRB order placed p1 L Box process in station 1 p2 Station 1 start processing e1 Station 1 start processing e2 1 Box process in staion 1 p2 U Box process in station 1 p2 L Box ext station 1 p3 Staion 1 done processing e3 Staion 1 done processing e4 2 Box exit station 10 p56 Station 1 stopper retracted c2 U Box ext station 10 p56 L Box bypass station 1 p4 Station 1 bypass e5 3 Station 1 stopper retracted p6 Station 1 start processing e2 U Station 1 stopper retracted p6 L Station 1 stopper extended p5 4 Station 1 stopper extended p5 Station 1 done processing e4 U Station 1 stopper extended p5 L Station 1 stopper retracted p6 5 Station 2 stopper 1 extended p8 Box exit Station 2 e6 U Station 2 stopper 1 extended p8 L Station 2 stopper 1 retracted p7 6 Station 2 stopper 1 extended p8 Box exit Station 2 e7 U Station 2 stopper 1 extended p8 L Station 2 stopper 1 retracted p7 7 Station 2 stopper 1 retracted p7 Box enters station 2 e11 U Station 2 stopper 1 retracted p7 L Station 2 stopper 1 extended p8 8 Station 2 stopper 1 retracted p7 Box enters station 2 e9 U Station 2 stopper 1 retracted p7 L Station 2 stopper 1 extended p8 9 Station 2 sensor 1 active p10 U Station 2 sensor 1 active p10 L Station 2 sensor 1 passive p9 10 Station 2 sensor 1 passive p9 U Station 2 sensor 1 passive p9 L Station 2 sensor 1 active p10 Figure 6.29: Ladder Logic Diagram for the HAS-200 Control Model

PAGE 125

113 11 Staion 2 BCR active p12 U Staion 2 BCR acive p12 L Station 2 BCR passive p11 12 Staion 2 BCR passive p11 U Station 2 BCR passive p11 L Staion 2 BCR acive p12 13 Staion 2 Stopper 2 up p14 Box exit Station 2 e12 U Station 2 Stopper 2 up p14 L Station 2 Stopper 2 down p13 14 Staion 2 Stopper 2 up p14 Box exit Station 2 e13 U Station 2 Stopper 2 up p14 L Station 2 Stopper 2 down p13 15 Staion 2 Stopper 2 down p13 Station 2 done processing e14 U Station 2 Stopper 2 down p13 L Station 2 Stopper 2 up p14 16 Staion 2 Stopper 2 down p13 Station 2 done bypassing e16 U Station 2 Stopper 2 down p13 L Station 2 Stopper 2 up p14 17 Staion 2 sensor 2 acive p16 U Staion 2 sensor 2 active p16 L Staion 2 sensor 2 passive p15 18 Staion 2 sensor 2 passive p15 U Staion 2 sensor 2 passive p15 L Staion 2 sensor 2 active p16 19 Box bypass station 1 p4 Station 2 stopper 1 retracted c3 Station 2 sensor 2 passive c4 Staion 2 sensor 1 active c7 U Box bypass station 1 p4 L Box in front of station 2 BCR p17 Box enters station 2 e9 Box enters station 2 e8 20 Box ext station 1 p3 Station 2 stopper 1 retracted c5 Station 2 sensor 2 passive c6 Station 2 sensor 1 active c8 U Box exit station 1 p3 L Box in front of station 2 BCR p17 Box enters station 2 e10 Box enters station 2 e11 21 Box in front of station 2 BCR p17 Station 2 BCR active c9 Station 2 process c10 U Box in front of station 2 BCR p17 L Box process in station 2 p18 Figure 6.29: (Continued)

PAGE 126

114 22 Box process in station 2 p18 U Box process in station 2 p18 L Box ext station 2 p19 Station 2 done processing e14 Station 2 done processing e15 23 Box in front of station 2 BCR p17 Station 2 BCR active c11 Staion 2 bypass c12 U Box in front of station 2 BCR p17 L Box bypass station 2 p20 24 Box bypass station 2 p20 U Box bypass station 2 p20 L Box ext station 2 p21 Station 2 done bypassing e16 Station 2 done bypassing e17 25 Station 3 stopper 1 extended p22 Box ext Station 3 e18 U Station 3 stopper 1 extended p22 L Station 3 stopper 1 retracted p23 26 Station 3 stopper 1 extended p22 Box ext Station 3 e19 U Station 3 stopper 1 extended p22 L Station 3 stopper 1 retracted p23 27 Station 3 stopper 1 retracted p23 Box enters station 3 e23 U Station 3 stopper 1 retracted p23 L Station 3 stopper 1 extended p22 28 Station 3 stopper 1 retracted p23 Box enters station 3 e21 U Station 3 stopper 1 retracted p23 L Station 3 stopper 1 extended p22 29 Station 3 sensor 1 active p24 U Station 3 sensor 1 active p24 L Station 3 sensor 1 passive p25 30 Station 3 sensor 1 passive p25 U Station 3 sensor 1 passive p25 L Station 3 sensor 1 active p24 31 Station 3 BCR active p26 U Station 3 BCR active p26 L Station 3 BCR passive p27 32 Station 3 BCR passive p27 U Station 3 BCR passive p27 L Station 3 BCR active p26 Figure 6.29: (Continued)

PAGE 127

115 33 Saton 3 Stopper 2 up p 2 8 Box exit Staton 3 e2 U Staton 3 Stopper 2 up p 2 8 L Staton 3 Stopper 2 down p29 3 Saton 3 Stopper 2 up p28 Box exit Staton 3 e25 U Staton 3 Stopper 2 up p28 L Staton 3 Stopper 2 down p29 35 Saton 3 Stopper 2 down p 2 9 Staion 3 done processing e2 6 U Staton 3 Stopper 2 down p 2 9 L Staton 3 Stopper 2 up p28 36 Saton 3 Stopper 2 down p29 Staion 3 done bypassing e28 U Staton 3 Stopper 2 down p29 L Staton 3 Stopper 2 up p 2 8 37 Saton 3 sensor 2 active p30 U Staton 3 sensor 2 active p30 L Staton 3 sensor 2 passive p31 38 Saton 3 sensor 2 passive p31 U Staton 3 sensor 2 passive p31 L Staton 3 sensor 2 active p 3 0 39 Box ext staton 2 p19 Station 3 stopper 1 retraced c13 Staion 3 sensor 2 passive c1 Staton 3 sensor 1 active c17 U Box ext saton 2 p19 L Box in front of saton 3 BCR p32 Box enters station 3 e20 Box enters staton 3 e21 Box ext Station 2 e7 Box ext Station 2 e12 0 Box ext staton 2 p21 Station 3 stopper 1 retraced c15 Staion 3 sensor 2 passive c16 Staton 3 sensor 1 active c18 U Box ext saton 2 p21 L Box in front of saton 3 BCR p32 Box enters station 3 e22 Box enters staton 3 e23 Box ext Station 2 e6 Box ext Station 2 e1 3 1 Box in front of staion 3 BCR p32 Station 3 BCR active c19 Staton 3 process c20 U Box in front of station 3 BCR p32 L Box process in staton 3 p 3 3 2 Box process in station 3 p33 U Box process in staton 3 p33 L Box exit staion 3 p3 Staton 3 done processing e26 Staton 3 done processing e2 7 3 Box in front of staion 3 BCR p32 Station 3 BCR active c21 Staton 3 bypass c22 U Box in front of station 3 BCR p32 L Box bypass saton 3 p35 Figure 6.29: (Continued)

PAGE 128

116 44 Box bypass station 3 p 35 U Box bypass station 3 p 35 L Box exit station 3 p36 Station 3 done bypassing e28 Station 3 done bypassing e29 45 Station 4 stopper 1 retracted p38 Box ext Station 4 e30 U Station 4 stopper 1 retracted p38 L Station 4 stopper 1 extended p37 46 Station 4 stopper 1 retracted p 3 8 Box ext Station 4 e31 U Station 4 stopper 1 retracted p 3 8 L Station 4 stopper 1 extended p37 47 Station 4 stopper 1 extended p37 Box enters station 4 e35 U Station 4 stopper 1 extended p37 L Station 4 stopper 1 retracted p38 48 Station 4 stopper 1 extended p37 Box enters station 4 e33 U Station 4 stopper 1 extended p37 L Station 4 stopper 1 retracted p 3 8 49 Station 4 sensor 1 passive p40 U Station 4 sensor 1 passive p40 L Station 4 sensor 1 active p39 50 Station 4 sensor 1 active p39 U Station 4 sensor 1 active p39 L Station 4 sensor 1 passive p40 51 Station 4 BCR passive p 4 2 U Station 4 BCR passive p 42 L Station 4 BCR active p41 52 Station 4 BCR acive p41 U Station 4 BCR active p41 L Station 4 BCR passive p 42 53 Station 4 Stopper 2 down p44 Box ext Staion 4 e36 U Station 4 Stopper 2 down p44 L Station 4 Stopper 2 up p43 54 Station 4 Stopper 2 down p44 Box ext Staion 4 e37 U Station 4 Stopper 2 down p44 L Station 4 Stopper 2 up p43 55 Station 4 Stopper 2 up p 4 3 Station 4 done processing e3 8 U Station 4 Stopper 2 up p 43 L Station 4 Stopper 2 down p44 56 Station 4 Stopper 2 up p43 Station 4 done bypassing e40 U Station 4 Stopper 2 up p43 L Station 4 Stopper 2 down p44 Figure 6.29: (Continued)

PAGE 129

117 57 Station sensor 2 passive p 6 U Staion sensor 2 passive p 6 L Staion sensor 2 active p5 58 Station sensor 2 acive p 5 U Staion sensor 2 active p 5 L Staion sensor 2 passive p 6 59 Box exit station 3 p3 Staton stopper 1 retracted c23 Staton sensor 2 passive c2 Station sensor 1 active c27 U Box ext staion 3 p3 L Box in front of saton BCR p 7 Box enters saton e32 Box enters staton e3 3 Box exit Station 3 e1 8 Box exit Station 3 e2 60 Box exit station 3 p 3 6 Staton stopper 1 retracted c2 5 Staton sensor 2 passive c2 6 Station sensor 1 active c2 8 U Box ext staion 3 p 3 6 L Box in front of saton BCR p7 Box enters saton e3 Box enters staton e35 Box exit Station 3 e19 Box exit Station 3 e2 5 61 Box in front of saton BCR p7 Station BCR active c29 Saton process c30 U Box in front of station BCR p7 L Box process in saton p 8 62 Box process in staion p8 U Box process in saton p8 L Box exit station p9 Staton done processing e38 Staton done processing e3 9 63 Box in front of saton BCR p 7 Station BCR active c31 Saton bypass c32 U Box in front of station BCR p 7 L Box bypass staion p50 6 Box bypass station p 5 0 U Box bypass staion p 5 0 L Box exit station p51 Staton done bypassing e 0 Staton done bypassing e1 65 Box exit station p 9 U Box ext staion p 9 L Box in front of saton 5 BCR p52 Box enters saton 5 e Box exit Staton e3 0 Box exit Staton e3 7 66 Box exit station p51 U Box ext staion p51 L Box in front of saton 5 BCR p52 Box enters saton 5 e2 Box exit Staton e31 Box exit Staton e36 67 Box in front of saton 5 BCR p 52 Station 5-10 process c33 U Box in front of station 5 BCR p 52 L Box process in staton 5-10 p53 Figure 6.29: (Continued)

PAGE 130

118 68 Box process in station 5-10 p53 U Box process in staion 5-10 p53 L Box exit the sysem p5 Station 5-10 done processing e3 69 Box in front of staton 5 BCR p52 Staion 5-10 bypass c3 U Box in front of staton 5 BCR p52 L Box bypass saton 5-10 p55 70 Box bypass saton 5-10 p55 U Box bypass saton 5-10 p55 L Box ext staion 10 p56 Station 5-10 done bypassing e5 71 Order paced p1c Station 1 start processing e1 U Order placed p1c L Box processed Staion 1 p2c Station 1 start processing order e6 72 Box processed Staton 1 p2c Saton 1 start processing e2 U Box processed Staton 1 p2c L Box Leaves Station 1 p3c Saton 1 done processing box e7 73 Box Leaves Staton 1 p3c Box enters staton 2 e10 U Box Leaves Station 1 p3c L Box bypassed Staton 2 p20c Saton 2 start bypassing e8 7 Box bypassed Station 2 p20c Station 2 done bypassing e17 U Box bypassed Saton 2 p20c L Box Leaves Station 2 p21c Staion 2 done bypassing box e9 75 Box Leaves Staton 2 p21c Box enters staton 3 e20 U Box Leaves Station 2 p21c L Box processed Staion 3 p33c Saton 3 start processing e50 76 Box processed Staton 3 p33c Saton 3 done processing e27 U Box processed Staton 3 p33c L Box Leaves Station 3 p3c Saton 3 done processing box e51 77 Box Leaves Staton 3 p3c Box enters staton e32 U Box Leaves Station 3 p3c L Box processed Staion p8c Saton start processing e52 78 Box processed Staton p8c Saton done processing e39 U Box processed Staton p8c L Box Leaves Station p9c Saton done processing box e53 79 Box Leaves Staton p9c Box enters staton 5 e U Box Leaves Station p9c L Box bypassed Staton 5-10 p55c Saton 5-10 start bypassing e5 80 Box bypassed Station 5-10 p55c Station 5-10 done bypassing e5 U Box bypassed Saton 5-10 p55c L Box Leaves Staton 10 p56c Station 5-10 done bypassing e55 Figure 6.29: (Continued)

PAGE 131

119 81 Box Leaves Staion 10 p56c Station 1 bypass e5 U Box Leaves Station 10 p56c L Box bypassed Station 1 p4c 82 Box bypassed Station 1 p4c Box enters station 2 e8 U Box bypassed Station 1 p4c L Box process in station 2 p18 Station 2 start processing e56 83 Box processed Station 2 p18c Station 2 done processing e15 U Box processed Station 2 p18c L Box Leaves Station 2 p19c Station 2 done processing box e57 84 Box Leaves Staion 2 p19c Box enters station 3 e22 U Box Leaves Station 2 p19c L Box bypassed Station 3 p35c Station 3 start bypassing e58 85 Box bypassed Station 3 p35c Staion 3 done bypassing e29 U Box bypassed Station 3 p35c L Box Leaves Station 3 p36c Station 3 done bypassing e59 86 Box Leaves Staion 3 p36c Box enters station 4 e34 U Box Leaves Station 3 p36c L Box bypassed Station 4 p50c Station 4 start bypassing e60 87 Box bypassed Station 4 p50c Staion 4 done bypassing e41 U Box bypassed Station 4 p50c L Box Leaves Station 4 p51c Station 4 done bypassing e61 88 Box Leaves Staion 4 p51c Box enters station 5 e42 U Box Leaves Station 4 p51c L Box processed Station 5-10 p53c Station 5-10 start processing e62 89 Box processed Staion 5-10 p53c Station 5-10 done processing e43 U Box processed Station 5-10 p53c Station 5-10 done processing box e63 90 Co-place of p2c p2co Station 1 start processing order e46 U Co-place of p2c p2co 91 Station 1 done processing box e47 L Co-place of p2c p2co Figure 6.29: (Continued)

PAGE 132

120 92 Co-place of p18c p18co Station 2 start bypassing e48 U Co-place of p18c p18co 93 Station 2 done bypassing box e49 L Co-place of p18c p18co 94 Co-place of p20c p20co Station 2 start processing e56 U Co-place of p20c p20co 95 Station 2 done processing box e57 L Co-place of p20c p20co 96 Co-place of p33c p33co Station 3 start bypassing e58 U Co-place of p33c p33co 97 Station 3 done bypassing e59 L Co-place of p33c p33co 98 Co-place of p35c p35co Station 3 start processing e50 U Co-place of p35c p35co 99 Station 3 done processing box e51 L Co-place of p35c p35co 100 Co-place of p48c p48co Station 4 start bypassing e60 U Co-place of p48c p48co 101 Station 4 done bypassing e61 L Co-place of p48c p48co 102 Co-place of p50c p50co Station 4 start processing e52 U Co-place of p50c p50co 103 Station 4 done processing box e53 L Co-place of p50c p50co 104 Co-place of p53c p53co Staion 5-10 start bypassing e54 U Co-place of p53c p53co 105 Station 5-10 done bypassing e55 L Co-place of p53c p53co 106 Co-place of p55c p55co Staion 5-10 start processing e62 U Co-place of p55c p55co 107 Station 5-10 done processing box e63 L Co-place of p55c p55co 108 Co-place of p2c p2co Station 1 process c1 109 Station 1 stopper retracted p6 Station 1 stopper retracted c2 110 Station 2 stopper 1 retracted p7 Station 2 stopper 1 retracted c3 111 Station 2 sensor 2 passive p15 Station 2 sensor 2 passive c4 112 Station 2 stopper 1 retracted p7 Station 2 stopper 1 retracted c5 113 Station 2 sensor 2 passive p15 Station 2 sensor 2 passive c6 114 Station 2 sensor 1 acive p10 Station 2 sensor 1 active c7 115 Station 2 sensor 1 acive p10 Station 2 sensor 1 active c8 116 Station 2 BCR active p12 Staion 2 BCR active c9 Figure 6.29: (Continued)

PAGE 133

121 117 Station 2 BCR active p12 Station 2 BCR active c11 118 Co-place of p18c p18co Station 2 process c10 119 Co-place of p20c p20co Station 2 bypass c12 120 Station 3 stopper 1 retracted p23 Staion 3 stopper 1 retracted c13 121 Station 3 sensor 2 passive p31 Staion 3 sensor 2 passive c14 122 Station 3 stopper 1 retracted p23 Staion 3 stopper 1 retracted c15 123 Station 3 sensor 2 passive p31 Staion 3 sensor 2 passive c16 124 Station 3 sensor 1 active p24 Staion 3 sensor 1 acive c17 125 Station 3 sensor 1 active p24 Staion 3 sensor 1 acive c18 126 Station 3 BCR active p26 Station 3 BCR active c19 127 Station 3 BCR active p26 Station 3 BCR active c21 128 Co-place of p33c p33co Station 3 process c20 129 Co-place of p35c p35co Station 3 bypass c22 130 Station 4 stopper 1 extended p37 Staion 4 stopper 1 retracted c23 131 Station 4 sensor 2 active p45 Staion 4 sensor 2 passive c24 132 Station 4 stopper 1 extended p37 Staion 4 stopper 1 retracted c25 133 Station 4 sensor 2 active p45 Staion 4 sensor 2 passive c26 134 Station 4 sensor 1 passive p40 Staion 4 sensor 1 acive c27 135 Station 4 sensor 1 passive p40 Staion 4 sensor 1 acive c28 136 Station 4 BCR passive p42 Station 4 BCR active c29 137 Station 4 BCR passive p42 Station 4 BCR active c31 138 Co-place of p50c p50co Station 4 process c30 139 Co-place of p48c p48co Station 4 bypass c32 140 Co-place of p53c p53co Staion 5-10 process c33 141 Co-place of p55c p55co Station 5-10 bypass c34 (End) Figure 6.29: (Continued)

PAGE 134

122 6.7 HAS-200 Algorit hm Implementation The Ladder Logic Diagram shown in Figure 6.29 was created using RSLogix 5000 version 12 and downloaded into an Allen Bradley CompactLogix system model 1769 L30 [37]. The Ladder Logic Diagram was verified and no errors were found. The in itial conditions of the H AS-200 were simulated by toggling the bits of the input variables. After the bits were toggled the Ladder Logic Diagram was sent online and the tag values were monitor through an RSLogix interface named “monitor tags” as shown in Figure 6.30. The input variables for the level sensors were t oggled in the sequence they should logically change states to simulate their response to the physical system. The Ladder Logic Diagram responses to the toggled bits were correct. Figure 6.30: RSLogix Monitor T ags Interface for the HAS-200

PAGE 135

123 Chapter 7: Conclusion, Contri butions, and Future Research This chapter provides an overview of the main goal, objectives, and methodology use in this thesis. It su mmarizes the main findings and discusses their significance. Finally, future areas of resear ch are presented. 7.1 Conclusions The goal of this thesis was to aut omatically generat e a PLC programming language for manufacturing systems requiring complex control models. This goal was achieved by completing the following three objectives: A transformation algorithm to automatically generate a Ladder Logic Diagram from NCES models was dev eloped and present ed in Chapter 4. In [10] Rausch and Krogh proposed the transformation of NCES into Instruction List (IL); the algorithm devel oped in this thesis was based on the ideas proposed in there paper. However, the algorithm in this thesis transforms NCES into Ladder Logic Diagram instead of IL. The structural components of the NCES made it easier to categorize them into Ladder Logic Diagram components. This thesis successfully used NCES to model a complex manufacturing system. Previous papers have addressed the modeling of simple DEDS. The significance of this research was to obtain a

PAGE 136

124 NCES control model for a complex manufacturing system such as the HAS-200. The NCES control m odel of the H AS-200 YRB filling sequence was developed and presented in Section 6.4. The NCES input/output structure pr oved to capture accurate ly the behavior of the physical devices that form part of the HAS-200 system The sequence specification and locking controller models ensured that the model meet the desired behavior. In addition, the HAS-200 control model was analyzed and verified in Secti on 6.5. The analysis demonstrated the correctness of the NCES control model by identifying the presence or absence of desirable behavioral properties. Furthermore, the Ladder Logic Diagram obtained by transforming the NCES control model will inherit the behavioral pr operties. Even t hough, the analysis tools were useful in determini ng the correctness of the model, the reachable state results were very lar ge and difficult to follow visually. The HAS-200 NCES control model was converted into a Ladder Logic Diagram as shown in Section 6.6. The verification of the Ladder Logic Diagram obtained from the transformat ion is shown in Section 6.7. The resulting Ladder Logic Diagram was very long, but it was easy to follow and understand. The input and output contacts of the Ladder Logic Diagram were toggled to simu late the HAS-200 behavior. The results from the test proved that the Ladder Logic Diagram inherited the behavioral properties desired fo r the system. The algorithm demonstrates its ability to transform complex manufacturing system.

PAGE 137

125 7.2 Contributions One of the most important contributions of this thesis is the development of the transformation algor ithm. The advantages of using this algorithm are presented below: The algorithm converts NCES in to Ladder Logic Diagrams, which is one of the most common PLC programming languages. The algorithm is able to trans form all the components of NCES (places, conditions, events, and tr ansitions) into input and output contacts within the Ladder Logic Diagrams. The algorithm has the ability to transformed complex manufacturing control models into Ladder Logic Diagrams. Another contribution of this resear ch is the successful modeling of a complex manufacturing system using NCES. The lack of documentation indicates that NCES is a modeling form alism that could benefit from further research. This thesis adds valuable documentation about modeling a complex manufacturing system using NCES. 7.3 Future Research The lack of documentation for model ing complex manufacturing systems using NCES demonstrates that this is an area that needs extensive research. One area of vital interest is determining a better way to verify the correctness of NCES control models. Ev en though the SESA analysis repor t was very useful to identify the behavioral proper ties, the reachable states were very large and

PAGE 138

126 difficult to follow visually. For simple manufacturing systems this tool might be appropriate, but for complex systems with 100 places and transitions this tool becomes difficult to use. The use of invariants could be a possible solution to accomplish the analysis of t he structural properties [4 ]. Invariants are based on the incidence matrix and st ate equation illustrated in Section 1.3.4.2 of this thesis. Another area of interest for future work would be to investigate the advantages of using NCES agai nst other types of mode ling formalism such as coloured petri nets or tim ed petri nets. Coloured pet ri nets token structure presents the ability of identifying each token. This might be useful for the modeling of the HAS-200, bec ause there may be cases we re the identification of each box process might be needed. Finally, another area of interest co uld be the development of a software tool to model and transform NCES. This software tool could have the capability of inserting the NCES components and aut omatically obtaining a Ladder Logic Diagram. Using NCES to model the physical devices of a system was not difficult but using Microsoft Visio to develop the model was a little tedious. Furthermore, using the algorit hm of this thesis as a basis to develop a software program to automatically transform the NCES model to Ladder Logic Diagram will significantly improv e the modeling of comple x manufacturing systems.

PAGE 139

127 List of References [1] M. Rausch and H.-M. Hanisch, “Net Condition/Event Systems with Multiple Condition Outputs,” in proceedings ETFA Conf., Paris, France, Oct. 1995. [2] R. S. Sreenivas and B. H. Krogh, “On Conditi on/Event Systems with Discrete State Realization,” in Discrete Event Dynamics Systems: Theory and Applications, 2(1), pp. 209-236, 1991. [3] R. Zurawski and M. C. Zhou, “Pet ri Nets and Industrial Applications: A Tutorial,” IEEE Trans. Ind. Electron., vol. 41, no. 6, pp. 567-583, 1994. [4] T. Murata, “Petri Nets: Properties, Analysis and Applications,” in proceedings IEEE, vol. 77, no.4, pp. 541-580, 1989. [5] L. Pinzon, M. A. Jafari, H.-M. H anisch and P. Zhao, “Modeling Admissible Behavior Using Event Signals,” in IEEE Conf. Systems, Man and Cybernetics, vol. 34, no.3, pp. 1435-1448, 2004. [6] H. J. Genrich and G. Thieler-Mevissen, “The Calculus of Facts,” in Mathematical Foundation of Computer Science, New York: Springer-Verlag, pp. 588-595, 1976. [7] M. Rausch and H.-M. Hanisch, “Synt hesis of Supervisory Controllers Based on a Novel Representation of Condition/Event Systems,” in proceedings IEEE Conf. Systems, Man and Cybernetics, Vancouver, BC, Canada, pp 3069-3074, Oct. 22-25, 1995.

PAGE 140

128 [8] L.E. Pinzon, M. A. Jafari, H.-M. Hanisch and T. Boucher, “A Comparative Study of Synthesis Methods for Discrete Event Controllers,” 1997. [9] P.J Ramadge and W. M. Wonham, “Supervisory C ontrol of a Class of Discrete-Event Processes,” SIAM Control Optimization, 25(1), 1987. [10] R. S. Sreenivas and B. H. Krogh, “Petri Net based models for Condition/Event Systems,” in proceedings of 1991 American Control Conference, volume3, pp. 2899-2904, Boston, USA, 1991. [11] M. Rausch and B. H. Krogh, “Transformati on Between Different Model Forms in Discrete Event Systems,” in IEEE Conf. Systems, Man and Cybernetics, volume 3, pp. 2841-2846, Or lando, USA, October 1997. [12] M. A. Jafari, “Supervisory C ontrol Specification and Synthesis,” in Zhou, M.C.: Petri Nets in Flexible and Agile Automation, pages 337-368, Dordrecht, NL: Kluwer Academic Publishers, 1995. [13] J.S. Ostroff, “Temporal Logic for Real-Time Systems,” Research Studies Press, Taunton, UK, 1989. [14] H.-M. Hanisch, “Analys is of Place/Transition Nets with Timed Arcs and Its Application to Batch Process Control,” pages 282-299. Lecture Notes in Computer Science 691. Springer-Verlag, Berlin, 1993. [15] J.S. Ostroff, “Syn thesis of Controllers for Real-Time Discrete Event Systems,” in IEEE proceedings of the 28th conference on Decision and Control, Tampa, Florida, December 1989.

PAGE 141

129 [16] P.J Ramadge and W. M. Wonham W.M. “Modular Feedback Logic for Discrete Event Systems,”' SIAM Journal of Control and Optimization, 25(5):1202-1218, S eptember, 1987. [17] A. Giua, “Petri Nets as Discret e Event Models for Supervisory Control,” PhD Thesis. Dept. of Computer and System s Engineering, Rensselaer Polytechnic Institute. Troy, N.Y. July 1992. [18] J. Stenerson, “Fundam entals of Programmable Logi c Controllers, Sensors and Communications,” 2nd edition, New Jersey: Prentice Hall, 1999. [19] F. Petruzella, “Progr ammable Logic Controllers,” 3rd edition, NY: McGraw-Hill Companies, 2005. [20] IEC Standard 1131-3: Programmable Controllers Part 3: Programming Languages, International Electrot echnical Commission (IEC), 1993. [21] B. A. Brandin, “The Real-Time S upervisory Control of an Experimental Manufacturing Cell,” in IEEE Transactions on Robotics and Automation, Vol. 12(1), February 1996. [22] M. Fabian and A. Hellgren, “PLC -based Implementation of Supervisory Control for Discret e Event Systems,” in proceedings of the 37the IEEE conference on Decision & Control, Tampa, Florida, USA, December 1998. [23] J. Liu and H. Darabi, “Ladder Logi c Implementation of Ramadge-Wonham Supervisory Controller,” in proceedings of the 6th International Workshop on Discrete Event System WODES’02, Zaragoza, Spain, October 2002.

PAGE 142

130 [24] T. Suesut, P. Inban, P. Nila s, P. Rerngreun and S. Gulphanich, “Interpretation Pe tri Net Model to IEC 1131-3: LD For programmable Logic Controller,” in proceedings of the I EEE 2004 Conference on Robotics Automation and Mechanics, Singapore, December 2004. [25] T. Satoh, H. Oshima, K. Nose and S. Kumagai, “Automatic Generation System of Ladder List Pr ogram By Petri Net,” in Proceedings of the IEEE International Workshop on Emerging Technologies on Factory Automation Technology For The Intelligent Factory, pp. 128-133, 1992. [26] S. Rattigan, “Using Petri Nets to Develop Programs for PLC Systems,” Lecture Notes in Computer Science 616: Application and Theory of Petri Nets, pp. 368 – 372, 1992. [27] M. A. Jafari, T.O. Boucher, “A Rule-Base System For Generating Ladder Logic Control Program from a High Level System Model,” in Journal of Intelligent Manufacturing, 5, pp. 103-120, 1994. [28] AH Jones, M Uzam, and N. Ajlouni “Design of Discrete Event Control Systems for Programmable Logic Contro llers Using T-Timed Petri Nets,” in IEEE International Symposium on Com puter-Aided Control System Design CACSD’96,Michigan, USA, September 15-17, 1996. [29] AH Jones, M Uzam, and N. Ajlouni “C onversion of Petri Net Controllers for Manufacturing Systems into Ladder Logic Diagrams,” in IEEE, 1996. [30] A. H. Jones, M. Uzam, A. H. Khan, D. Karimzadgan, and S. B. Kenway, “ A General Methodology for Converting Petri Nets into Ladder Logic: The TPLL Methodlogy,” in proceedings of the CIMAT’96, France, pp. 357-362.

PAGE 143

131 [31] M. Uzam and A. H. Jones, “Design of a Discrete Event C ontrol System for a Manufacturing System Using Token Passing Ladder Logic,” in CESA’96 IMACS Conference, Lille, France July 9-12, 1996. [32] M. Uzam and AH Jones, “Towards a Unified Methodology for Converting Coloured Petri Net Controllers into Ladder Logic Using TPU: Part I – Methodology,” in Intemational Workshop on Discrete Event Systems, WODES’96, Edinburgh, UK, August 1996. [33] A.H. Jones and M Uzam, “Towards a Unified Methodology for Converting Coloured Petri Net Controllers into Ladder Logic Using TPLJ: Part II An Application,” in Intemational Workshop on Discrete Event Systems, WODES’96, Edinburgh, UK, August 1996. [34] V.N. Dubinin, H. -M. Hanisch, and S Karras, “Building of Reachability Graph Extractions Using a Graph Rewriting System,” in proceedings of the 7th International Conference of Sc ience and Technology, NITis 2006, Penza, Russia, vol.1, pp160-171, 2006. [35] Berthold Paul “SESA Tool Descripti on”, Humboldt Univer sity Berlin 2002. http://www.ele.auckland.ac.nz/~vyatkin/nces/imatch/SESA.pdf [36] Peter H. Starke, and Stephen Roch, “SESA: Signal Net System Analyzer”, Humboldt University Berlin 1999. http://www2.informatik.huberlin.de/lehrstuehle/ automaten/tools/

PAGE 144

132 [37] Rockwell Automation Web site. Available at: http://www.rockwellautomation.com/. Accessed February 3, 2006. [38] MATEC Emerging Skills for High ly Automated Environments Web site. Available at: http://www.matec.org/has/ Accessed February 3, 2006.

PAGE 145

133 Appendices

PAGE 146

134 Appendix A: SESA Reachable States for the Tank Control Model State nr. 1 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 0 1 0 1 1 0 0 0 0 1 1 1 =={t2,t9,t14}=> s2 =={t2,t6,t9,t14}=> s8 =={t2,t7,t9,t14}=> s47 =={t2,t6,t7,t9,t14}=> s3 =={t6,t7}=> s11 =={t7}=> s35 =={t6}=> s7 State nr. 2 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 0 1 1 0 1 0 0 0 0 1 =={t6,t7}=> s3 =={t7}=> s47 =={t6}=> s8 State nr. 3 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 1 0 0 1 1 0 0 0 0 1 =={t1,t10,t13}=> s4 =={t1,t5,t10,t13}=> s39 =={t1,t8,t10,t13}=> s9 =={t1,t5,t8,t10,t13}=> s40 =={t5,t8}=> s2 =={t8}=> s8 =={t5}=> s47 State nr. 4 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 0 1 1 0 0 1 0 1 0 0 1 1 =={t4,t11,t16}=> s5 =={t4,t5,t11,t16}=> s37 =={t4,t8,t11,t16}=> s10 =={t4,t5,t8,t11,t16}=> s6 =={t5,t8}=> s40 =={t8}=> s9 =={t5}=> s39 State nr. 5 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 1 0 0 1 0 0 1 0 1 0 =={t5,t8}=> s6 =={t8}=> s10 =={t5}=> s37 State nr. 6 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 0 1 1 0 0 0 1 0 1 0 =={t3,t12,t15}=> s1 =={t3,t6,t12,t15}=> s7 =={t3,t7,t12,t15}=> s35 =={t3,t6,t7,t12,t15}=> s11 =={t6,t7}=> s5 =={t7}=> s37 =={t6}=> s10 State nr. 7 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 0 1 1 0 1 0 0 0 0 1 1 1 =={t2,t9,t14}=> s8 =={t2,t4,t9,t14}=> s25 =={t2,t5,t9,t14}=> s2 =={t2,t4,t5,t9,t14}=> s13 =={t2,t7,t9,t14}=> s3 =={t2,t4,t7,t9,t14}=> s14 =={t2,t5,t7,t9,t14}=> s47 =={t2,t4,t5,t7,t9,t14}=> s48 =={t4,t5,t7}=> s31 =={t5,t7}=> s35 =={t4,t7}=> s32 =={t7}=> s11 =={t4,t5}=> s12 =={t5}=> s1 =={t4}=> s24 State nr. 8 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 1 0 1 0 1 0 0 0 0 1 =={t1,t10,t13}=> s9 =={t1,t5,t10,t13}=> s40 =={t1,t7,t10,t13}=> s4 =={t1,t5,t7,t10,t13}=> s39 =={t5,t7}=> s47 =={t7}=> s3 =={t5}=> s2 State nr. 9 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 0 1 1 0 1 0 0 1 0 0 1 1 =={t4,t11,t16}=> s10 =={t2,t4,t11,t16}=> s29 =={t4,t5,t11,t16}=> s6 =={t2,t4,t5,t11,t16}=> s19 =={t4,t7,t11,t16}=> s5 =={t2,t4,t7,t11,t16}=> s18 =={t4,t5,t7,t11,t16}=> s37 =={t2,t4,t5,t7,t11,t16}=> s38 =={t2,t5,t7}=> s27 =={t5,t7}=> s39 =={t2,t7}=> s17 =={t7}=> s4 Figure A.1: SESA Tank Reachable States for the Tank Control Model

PAGE 147

135 Appendix A: (Continued) =={t2,t5}=> s41 =={t5}=> s40 =={t2}=> s28 State nr. 10 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 1 0 1 0 0 0 1 0 1 0 =={t3,t12,t15}=> s7 =={t3,t5,t12,t15}=> s1 =={t3,t7,t12,t15}=> s11 =={t3,t5,t7,t12,t15}=> s35 =={t5,t7}=> s37 =={t7}=> s5 =={t5}=> s6 State nr. 11 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 0 1 1 0 0 1 0 0 0 1 1 1 =={t4,t5,t8}=> s12 =={t5,t8}=> s1 =={t4,t8}=> s24 =={t8}=> s7 =={t4,t5}=> s31 =={t5}=> s35 =={t4}=> s32 State nr. 12 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 0 1 1 0 0 0 0 1 1 1 =={t2,t9,t14}=> s13 =={t2,t3,t9,t14}=> s2 =={t2,t6,t9,t14}=> s25 =={t2,t3,t6,t9,t14}=> s8 =={t2,t7,t9,t14}=> s48 =={t2,t3,t7,t9,t14}=> s47 =={t2,t6,t7,t9,t14}=> s14 =={t2,t3,t6,t7,t9,t14}=> s3 =={t3,t6,t7}=> s11 =={t6,t7}=> s32 =={t3,t7}=> s35 =={t7}=> s31 =={t3,t6}=> s7 =={t6}=> s24 =={t3}=> s1 State nr. 13 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 0 1 1 0 1 0 0 0 0 1 =={t3,t6,t7}=> s3 =={t6,t7}=> s14 =={t3,t7}=> s47 =={t7}=> s48 =={t3,t6}=> s8 =={t6}=> s25 =={t3}=> s2 State nr. 14 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 1 0 0 1 1 0 0 0 0 1 =={t1,t10,t13}=> s15 =={t1,t5,t10,t13}=> s44 =={t1,t8,t10,t13}=> s26 =={t1,t5,t8,t10,t13}=> s16 =={t5,t8}=> s13 =={t8}=> s25 =={t5}=> s48 State nr. 15 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 1 0 0 1 0 1 0 0 1 1 =={t5,t8}=> s16 =={t8}=> s26 =={t5}=> s44 State nr. 16 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 0 1 1 0 0 1 0 0 1 1 =={t2,t3,t6,t7}=> s17 =={t3,t6,t7}=> s4 =={t2,t6,t7}=> s45 =={t6,t7}=> s15 =={t2,t3,t7}=> s27 =={t3,t7}=> s39 =={t2,t7}=> s42 =={t7}=> s44 =={t2,t3,t6}=> s28 =={t3,t6}=> s9 =={t2,t6}=> s43 =={t6}=> s26 =={t2,t3}=> s41 =={t3}=> s40 =={t2}=> s46 State nr. 17 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 1 0 0 1 0 1 0 0 1 1 =={t4,t11,t16}=> s18 =={t1,t4,t11,t16}=> s5 =={t4,t5,t11,t16}=> s38 =={t1,t4,t5,t11,t16}=> s37 =={t4,t8,t11,t16}=> s29 =={t1,t4,t8,t11,t16}=> s10 =={t4,t5,t8,t11,t16}=> s19 =={t1,t4,t5,t8,t11,t16}=> s6 =={t1,t5,t8}=> s40 =={t5,t8}=> s41 Figure A.1: (Continued)

PAGE 148

136 Appendix A: (Continued) =={t1,t8}=> s9 =={t8}=> s28 =={t1,t5}=> s39 =={t5}=> s27 =={t1}=> s4 State nr. 18 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 1 0 0 1 0 0 1 0 1 0 =={t1,t5,t8}=> s6 =={t5,t8}=> s19 =={t1,t8}=> s10 =={t8}=> s29 =={t1,t5}=> s37 =={t5}=> s38 =={t1}=> s5 State nr. 19 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 0 1 1 0 0 0 1 0 1 0 =={t3,t12,t15}=> s20 =={t3,t6,t12,t15}=> s30 =={t3,t7,t12,t15}=> s36 =={t3,t6,t7,t12,t15}=> s21 =={t6,t7}=> s18 =={t7}=> s38 =={t6}=> s29 State nr. 20 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 0 1 1 0 0 0 0 1 1 1 =={t6,t7}=> s21 =={t7}=> s36 =={t6}=> s30 State nr. 21 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 1 0 0 1 0 0 0 1 1 1 =={t1,t4,t5,t8}=> s12 =={t4,t5,t8}=> s22 =={t1,t5,t8}=> s1 =={t5,t8}=> s20 =={t1,t4,t8}=> s24 =={t4,t8}=> s34 =={t1,t8}=> s7 =={t8}=> s30 =={t1,t4,t5}=> s31 =={t4,t5}=> s33 =={t1,t5}=> s35 =={t5}=> s36 =={t1,t4}=> s32 =={t4}=> s23 =={t1}=> s11 State nr. 22 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 0 1 1 0 0 0 0 1 1 1 =={t3,t6,t7}=> s21 =={t6,t7}=> s23 =={t3,t7}=> s36 =={t7}=> s33 =={t3,t6}=> s30 =={t6}=> s34 =={t3}=> s20 State nr. 23 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 1 0 0 1 0 0 0 1 1 1 =={t1,t5,t8}=> s12 =={t5,t8}=> s22 =={t1,t8}=> s24 =={t8}=> s34 =={t1,t5}=> s31 =={t5}=> s33 =={t1}=> s32 State nr. 24 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 1 0 1 0 0 0 0 1 1 1 =={t2,t9,t14}=> s25 =={t2,t3,t9,t14}=> s8 =={t2,t5,t9,t14}=> s13 =={t2,t3,t5,t9,t14}=> s2 =={t2,t7,t9,t14}=> s14 =={t2,t3,t7,t9,t14}=> s3 =={t2,t5,t7,t9,t14}=> s48 =={t2,t3,t5,t7,t9,t14}=> s47 =={t3,t5,t7}=> s35 =={t5,t7}=> s31 =={t3,t7}=> s11 =={t7}=> s32 =={t3,t5}=> s1 =={t5}=> s12 =={t3}=> s7 State nr. 25 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 1 0 1 0 1 0 0 0 0 1 =={t1,t10,t13}=> s26 =={t1,t3,t10,t13}=> s9 =={t1,t5,t10,t13}=> s16 =={t1,t3,t5,t10,t13}=> s40 =={t1,t7,t10,t13}=> s15 =={t1,t3,t7,t10,t13}=> s4 =={t1,t5,t7,t10,t13}=> s44 =={t1,t3,t5,t7,t10,t13}=> s39 Figure A.1: (Continued)

PAGE 149

137 Appendix A: (Continued) =={t3,t5,t7}=> s47 =={t5,t7}=> s48 =={t3,t7}=> s3 =={t7}=> s14 =={t3,t5}=> s2 =={t5}=> s13 =={t3}=> s8 State nr. 26 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 1 0 1 0 0 1 0 0 1 1 =={t2,t3,t5,t7}=> s27 =={t3,t5,t7}=> s39 =={t2,t5,t7}=> s42 =={t5,t7}=> s44 =={t2,t3,t7}=> s17 =={t3,t7}=> s4 =={t2,t7}=> s45 =={t7}=> s15 =={t2,t3,t5}=> s41 =={t3,t5}=> s40 =={t2,t5}=> s46 =={t5}=> s16 =={t2,t3}=> s28 =={t3}=> s9 =={t2}=> s43 State nr. 27 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 0 1 0 1 0 1 0 0 1 1 =={t6,t8}=> s28 =={t8}=> s41 =={t6}=> s17 State nr. 28 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 1 0 1 0 0 1 0 0 1 1 =={t4,t11,t16}=> s29 =={t1,t4,t11,t16}=> s10 =={t4,t5,t11,t16}=> s19 =={t1,t4,t5,t11,t16}=> s6 =={t4,t7,t11,t16}=> s18 =={t1,t4,t7,t11,t16}=> s5 =={t4,t5,t7,t11,t16}=> s38 =={t1,t4,t5,t7,t11,t16}=> s37 =={t1,t5,t7}=> s39 =={t5,t7}=> s27 =={t1,t7}=> s4 =={t7}=> s17 =={t1,t5}=> s40 =={t5}=> s41 =={t1}=> s9 State nr. 29 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 1 0 1 0 0 0 1 0 1 0 =={t3,t12,t15}=> s30 =={t1,t3,t12,t15}=> s7 =={t3,t5,t12,t15}=> s20 =={t1,t3,t5,t12,t15}=> s1 =={t3,t7,t12,t15}=> s21 =={t1,t3,t7,t12,t15}=> s11 =={t3,t5,t7,t12,t15}=> s36 =={t1,t3,t5,t7,t12,t15}=> s35 =={t1,t5,t7}=> s37 =={t5,t7}=> s38 =={t1,t7}=> s5 =={t7}=> s18 =={t1,t5}=> s6 =={t5}=> s19 =={t1}=> s10 State nr. 30 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 1 0 1 0 0 0 0 1 1 1 =={t1,t4,t5,t7}=> s31 =={t4,t5,t7}=> s33 =={t1,t5,t7}=> s35 =={t5,t7}=> s36 =={t1,t4,t7}=> s32 =={t4,t7}=> s23 =={t1,t7}=> s11 =={t7}=> s21 =={t1,t4,t5}=> s12 =={t4,t5}=> s22 =={t1,t5}=> s1 =={t5}=> s20 =={t1,t4}=> s24 =={t4}=> s34 =={t1}=> s7 State nr. 31 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 0 1 0 1 0 0 0 1 1 1 =={t6,t8}=> s24 =={t8}=> s12 =={t6}=> s32 State nr. 32 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 1 0 0 1 0 0 0 1 1 1 =={t5,t8}=> s12 =={t8}=> s24 =={t5}=> s31 Figure A.1: (Continued)

PAGE 150

138 Appendix A: (Continued) State nr. 33 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 0 1 0 1 0 0 0 1 1 1 =={t6,t8}=> s34 =={t8}=> s22 =={t6}=> s23 State nr. 34 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 1 0 1 0 0 0 0 1 1 1 =={t1,t3,t5,t7}=> s35 =={t3,t5,t7}=> s36 =={t1,t5,t7}=> s31 =={t5,t7}=> s33 =={t1,t3,t7}=> s11 =={t3,t7}=> s21 =={t1,t7}=> s32 =={t7}=> s23 =={t1,t3,t5}=> s1 =={t3,t5}=> s20 =={t1,t5}=> s12 =={t5}=> s22 =={t1,t3}=> s7 =={t3}=> s30 =={t1}=> s24 State nr. 35 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 0 1 0 1 0 1 0 0 0 1 1 1 =={t6,t8}=> s7 =={t8}=> s1 =={t6}=> s11 State nr. 36 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 0 1 0 1 0 0 0 1 1 1 =={t6,t8}=> s30 =={t8}=> s20 =={t6}=> s21 State nr. 37 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 0 1 0 1 0 0 1 0 1 0 =={t6,t8}=> s10 =={t8}=> s6 =={t6}=> s5 State nr. 38 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 0 1 0 1 0 0 1 0 1 0 =={t6,t8}=> s29 =={t8}=> s19 =={t6}=> s18 State nr. 39 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 0 1 0 1 0 1 0 1 0 0 1 1 =={t6,t8}=> s9 =={t8}=> s40 =={t6}=> s4 State nr. 40 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 0 1 0 1 1 0 0 1 0 0 1 1 =={t2,t6,t7}=> s17 =={t6,t7}=> s4 =={t2,t7}=> s27 =={t7}=> s39 =={t2,t6}=> s28 =={t6}=> s9 =={t2}=> s41 State nr. 41 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 0 1 1 0 0 1 0 0 1 1 =={t6,t7}=> s17 =={t7}=> s27 =={t6}=> s28 State nr. 42 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 0 1 0 1 0 1 0 0 1 1 =={t6,t8}=> s43 =={t8}=> s46 =={t6}=> s45 State nr. 43 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 1 0 1 0 0 1 0 0 1 1 =={t1,t3,t5,t7}=> s39 =={t3,t5,t7}=> s27 =={t1,t5,t7}=> s44 =={t5,t7}=> s42 =={t1,t3,t7}=> s4 =={t3,t7}=> s17 =={t1,t7}=> s15 =={t7}=> s45 =={t1,t3,t5}=> s40 =={t3,t5}=> s41 =={t1,t5}=> s16 =={t5}=> s46 =={t1,t3}=> s9 Figure A.1: (Continued)

PAGE 151

139 Appendix A: (Continued) =={t3}=> s28 =={t1}=> s26 State nr. 44 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 0 1 1 0 0 1 0 1 0 1 0 0 1 1 =={t6,t8}=> s26 =={t8}=> s16 =={t6}=> s15 State nr. 45 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 1 0 0 1 0 1 0 0 1 1 =={t1,t5,t8}=> s16 =={t5,t8}=> s46 =={t1,t8}=> s26 =={t8}=> s43 =={t1,t5}=> s44 =={t5}=> s42 =={t1}=> s15 State nr. 46 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 0 1 1 0 0 1 0 0 1 1 =={t3,t6,t7}=> s17 =={t6,t7}=> s45 =={t3,t7}=> s27 =={t7}=> s42 =={t3,t6}=> s28 =={t6}=> s43 =={t3}=> s41 State nr. 47 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 0 1 0 1 0 1 1 0 0 0 0 1 =={t6,t8}=> s8 =={t8}=> s2 =={t6}=> s3 State nr. 48 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 toks: 1 0 1 0 0 1 0 1 1 0 0 0 0 1 =={t6,t8}=> s25 =={t8}=> s13 =={t6}=> s14 Figure A.1: (Continued)

PAGE 152

140 Appendix B: Tank Algo rithm Implementation T= {t1, t2, t3, t4, t5, t6, t7, t8, c 1t, c 2t, c 3t,c 4t, l 1t, l 2t, l 3t, l 4t}. Tc = {t1, t2, t3, t4, c 1t, c 2t, c 3t,c 4t, l 1t, l 2t, l 3t, l 4t} Tu = {t5, t6, t7, t8} CN = {C1, C2, C3, C4, C5, C6, C7, C8, C9, C10} Cin = {in 1C, in 2C, in 3C, in 4C, in 5C, in 6C, in 7C, in 8C, in 9C, in 10C} Cout = {out 1C, out 2C, out 3C, out 4C, out 5C, out 6C, out 7C, out 8C, out 9C, out 10C} Below are some of the steps to obt ain the ladder diagram for the tank filling and draining example Figure 3.6 in C hapter 3. Step 1.1. 1 for transition t1 and Step 2.1.1 for C1 are shown in Chapter 5 Sect ion 5.1. For convenience purposes, the portion of the t ank control model that concerns t2 is shown in Figure B.1. in 6cout 1eout 2e in 3cin 4c Figure B.1: Portion of Tank Control Model Pertaining to Transition t2

PAGE 153

141 Appendix B: (Continued) Step 1: t • Tc insert a rung into the Ladder Logic Diagram and: Step 1.2.1: p •t insert p into the rung as an input variable (examine on) and also as an unlatched output (output unlatch). p2 is an input place for t2 as shown in Figure B.1. p2 is inserted into the rung as an input variable and as an unlatched output as shown in Figure B.2. 0 Pum p_ Off P 2 U Pum p_ Off P2 Figure B.2: Tank Control Model In serted Input Place for t2 in LLD Step 1.2.2: c Cin insert c into the rung as an input variable. C3 and C6 are conditions inputs for t2 as shown in Figure B.1. C3 and C6 are inserted into the rung as input variables as shown in Figure B.3. 0 Pum p OffP2 (valve block) c6 (LSL active) c3 U Pum p OffP2 Figure B.3: Tank Control Model Inse rted Condition Inputs for t2 in LLD Step 1.2.3: e Ein insert e into the rung as an input variable. t2 has no event inputs. Theref ore, no instructions are added to the rung.

PAGE 154

142 Appendix B: (Continued) Step 1.2.4: p t • insert p into the rung as a latched output (output latch). P1 is an output place for t2 as shown in Figure B.1. p1 is inserted into t he rung as a latched output as shown in Figure B.4. 0 Pum p_ Off P2 (valve block) c6 (LSL active) c3 U Pum p_ Off P2 L Pump on P1 Figure B.4: Tank Control Model Inse rted Output Place for t2 in LLD Step 1.2.5: e Eout insert e into the rung as an output (output energize) and the rung ends. out 1eis an event output for t1 as shown in B.1. out 1e is inserted into the rung as an output as shown in Figure B.5. 0 Pum p OffP2 (valve block) c6 (LSL active) c3 U Pum p OffP2 L Pump on P1 event 1 (pump is turn on) e1 Figure B.5: Tank Control Model Inse rted Event Output for t1 in LLD

PAGE 155

143 Appendix B: (Continued) For convenience purposes, the portion of the tank control model that concerns c 1t is shown in Figure B.6. cp1 ct1cp2oute6ine2 Figure B.6: ct1 Portion of Tank Control Model Step 1.3.1: p t insert p into the rung as an input variable (examine on) and also as an unlatched output (output unlatch). c 1p is an input place for c 1t as shown in Figure B.6. c 1p is inserted into the rung as an input variable and as an unlatched output as shown in Figure B.7. 0 Filling process p 1c U Filling process p 1c Figure B.7: Tank Control M odel Inserted Input Place forc 1t in LLD

PAGE 156

144 Appendix B: (Continued) Step 1.3.2: c Cin insert c into the rung as an input variable. c 1t has no condition inputs. Theref ore, no instructions are added to the rung. Step 1.3.3: e Ein insert e into the rung as an input variable. in 2 e is an event input for c 1tas shown in Figure B.6. in 2 e is inserted into the rung as an input variable as shown in Figure B.8. 0 Filling process p 1c event 2 (pump turns off) e2 U Fillng process p 1c Figure B.8: Tank Control M odel Inserted Event Inputs for c 1t in LLD Step 1.3.4: p t insert p into the rung as a latched output (output latch). c 2 p is an output place for c 1t as shown in Figure B.6. c 2 p is inserted into the rung as a latched output as shown in Figure B.9. 0 Flling process p 1 c event 2 (pump turns off) e 2 U Filling process p 1 c L Filling process stops p 2 c Figure B.9: Tank Control Model Inserted Output Place forc 1t in LLD

PAGE 157

145 Appendix B: (Continued) Step 1.3.5: e Eout insert e into the rung as an output (output energize) and the rung ends. out 6eis an event output for c 1tas shown in Figure B.6. out 6e is inserted into the rung as an output as shown in Figure B.10. 0 Filling process p 1c event 2 (pump turns off) e2 U Filling process p 1c L Filling process stops p 2c event 6 (stop filling controller locker) e6 Figure B.10: Tank Control Model Inserted Event Output for c 1t in LLD For convenience purposes, the portion of the tank control model that concerns l 1t is shown in Figure B.11. cop1lt1 outc5ine6 Figure B.11: l 1tPortion of Tank Control Model Step 1.4.1: p t insert p into the rung as an input variable (examine on) and also as an unlatched output (output unlatch). l 1t has no input place as shown in Figure A.11. Therefore, no instru ctions are added to the rung.

PAGE 158

146 Appendix B: (Continued) Step 1.4.2: c Cin insert c into the rung as an input variable. l 1t has no condition inputs as shown in Figure B.11. Therefore, no instructions are added to the rung. Step 1.4.3: e Ein insert e into the rung as an input variable. in 6e is an event input for l 1t as shown in Figure B.11. in 6e is inserted into the rung as an input variable as shown in Figure B.12. 0 e e e e e e event 6 (stop filling controller locker) e 6 Figure B.12: Tank Control M odel Inserted Event Inputs for l 1t in LLD Step 1.4.4: p t • insert p into the rung as a latched output (output latch). co 1p is an output place for l 1t as shown in Figure B.11. co 1p is inserted into the rung as a latched output as shown in Figure B.13. 0 event 6 (stop filling controller locker) e6 L filling process controller p 1c o Figure B.13: Tank Control Model Inserted Output Place forl 1t in LLD

PAGE 159

147 Appendix B: (Continued) Step 1.4.5: e Eout insert e into the rung as an output (output energize) and the rung ends. l 1t has no event outputs as shown in Figure B.11. Therefore, no instru ctions are added to the rung. For convenience purposes, the portion of the tank control model that concerns C2 and C3 is shown in Figure B.14. p8 p7 t8 t7 outc2 outc3 Figure B.14: Portion of Tank Cont rol Model Pertaining Conditions C2 and C3 Step 2.2: c Cout, insert a rung into the Ladder Logic Diagram and: Step 2.2.1: p c insert p in the rung as an input variable. P7 is an input place for C2 as shown in Figure B.14. p7 is inserted into the rung as an input variable as shown in Figure B.15. 0 e e e e LSL is on p7 Figure B.15: Tank Control Model Insert Input Place for C2 in LLD

PAGE 160

148 Appendix B: (Continued) Step 2.2.2: Insert c in the rung as an output variable and end the rung. C2 is inserted as an output variable into the same rung of step 2.2.1 and end t he rung as shown in Figure B.16. 0 LSL is on p 7 LSL is on c 2 Figure B.16: Tank Control Model Insert Output C2 in LLD Step 2.3: c Cout, insert a rung into the Ladder Logic Diagram and: Step 2.3.1: p c insert p in the rung as an input variable. P7 is an input place for C3 as shown in Figure B.14. p7 is inserted into the rung as an input variable as shown in Figure B.17. 0 e e e e LSL is on p7 Figure B.17: Tank Control Model Insert Input Place for C3 in LLD Step 2.3.2: Insert c in the rung as an output variable and end the rung. C3 is inserted as an output variable into the same rung of step 2.2.1 as shown in Figure B.18. 0 LSL alarm on P7 Condition 3 (LSL alarm on) C3 Figure B.18: Tank Control Model Insert Output C3 in LLD

PAGE 161

149 Appendix C: Stat ion 5-10 Layout Figure C.1: Stations 5 and 6 Layout

PAGE 162

150 Appendix C: (Continued) Figure C.2: St ation 7 Layout Figure C.3: St ation 8 Layout

PAGE 163

151 Appendix C: (Continued) Figure C.4: St ation 9 Layout Figure C.5: St ation 10 Layout

PAGE 164

152 Appendix D: SESA Reachable States for the HAS-200 State nr. 1 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 1 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t1,t4,t78,t115}=> s2 State nr. 2 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 1 0 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 : 1 1 1 1 =={t2,t5,t79,t116}=> s3 State nr. 3 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 1 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t12,t80}=> s4 State nr. 4 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 1 0 0 1 1 0 0 1 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t8,t23,t81,t117}=> s5 State nr. 5 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 0 1 0 1 1 0 1 0 1 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 : 1 1 1 1 =={t11,t82}=> s6 Figure D.1: SESA HAS-200 Reachable States

PAGE 165

153 Appendix D: (Continued) State nr. 6 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 : 1 1 1 1 =={t16,t83}=> s7 State nr. 7 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 0 1 1 0 0 1 1 0 1 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 : 1 1 1 1 =={t15,t26}=> s8 State nr. 8 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 0 1 1 0 1 0 1 0 0 0 0 1 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 : 1 1 1 1 =={t20,t27,t84,t118}=> s9 State nr. 9 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 0 1 1 0 1 0 0 1 0 0 0 0 1 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t34,t85}=> s10 State nr. 10 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 0 1 1 0 1 0 0 1 0 0 0 0 1 0 1 1 0 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t7,t18,t30,t45,t86,t123}=> s11 Figure D.1: (Continued)

PAGE 166

154 Appendix D: (Continued) State nr. 11 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 1 0 : 0 1 0 1 1 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 : 1 1 1 1 =={t33,t87}=> s12 State nr. 12 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 0 1 : 0 1 0 1 1 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 : 1 1 1 1 =={t38,t88}=> s13 State nr. 13 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 0 1 : 1 0 0 1 1 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 : 1 1 1 1 =={t36,t46}=> s14 State nr. 14 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 0 1 : 0 1 0 1 0 1 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 : 1 1 1 1 =={t43,t47,t89,t124}=> s15 State nr. 15 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 0 1 : 0 1 1 0 0 0 1 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t56,t90}=> s16 Figure D.1: (Continued)

PAGE 167

155 Appendix D: (Continued) State nr. 16 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 0 1 : 0 1 1 0 0 0 1 0 0 1 0 0 1 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t29,t41,t53,t66,t91,t127}=> s17 State nr. 17 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 0 1 0 1 1 0 1 0 1 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 0 1 1 =={t55,t92}=> s18 State nr. 18 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 0 1 1 =={t60,t93}=> s19 State nr. 19 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 0 1 1 0 0 1 1 0 1 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 0 1 1 =={t58,t68}=> s20 State nr. 20 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 0 1 1 =={t65,t69,t94,t128}=> s21 Figure D.1: (Continued)

PAGE 168

156 Appendix D: (Continued) State nr. 21 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 1 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t51,t62,t73,t95,t129}=> s22 State nr. 22 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 1 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 0 1 =={t76}=> s23 State nr. 23 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 0 1 =={t77,t96,t130}=> s24 State nr. 24 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t3,t97}=> s25 State nr. 25 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t13,t98}=> s26 Figure D.1: (Continued)

PAGE 169

157 Appendix D: (Continued) State nr. 26 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 1 0 1 1 0 0 1 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t9,t22,t99,t119}=> s27 State nr. 27 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 0 1 0 1 1 0 1 0 1 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 : 1 1 1 1 =={t10,t100}=> s28 State nr. 28 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 : 1 1 1 1 =={t17,t101}=> s29 State nr. 29 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 0 1 1 0 0 1 1 0 1 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 : 1 1 1 1 =={t14,t24}=> s30 State nr. 30 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 0 1 1 0 1 0 1 0 0 1 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 : 1 1 1 1 =={t21,t25,t102,t120}=> s31 Figure D.1: (Continued)

PAGE 170

158 Appendix D: (Continued) State nr. 31 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 0 1 1 0 1 0 0 1 0 0 1 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t35,t103}=> s32 State nr. 32 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 0 1 1 0 1 0 0 1 0 0 1 0 0 0 1 1 0 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t6,t19,t31,t44,t104,t121}=> s33 State nr. 33 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 1 0 : 0 1 0 1 1 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 1 0 1 : 1 1 1 1 =={t32,t105}=> s34 State nr. 34 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 0 1 : 0 1 0 1 1 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 0 1 : 1 1 1 1 =={t39,t106}=> s35 State nr. 35 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 0 1 : 1 0 0 1 1 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 1 0 1 : 1 1 1 1 =={t37,t48}=> s36 Figure D.1: (Continued)

PAGE 171

159 Appendix D: (Continued) State nr. 36 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 0 1 : 0 1 0 1 0 0 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 1 0 1 : 1 1 1 1 =={t42,t49,t107,t122}=> s37 State nr. 37 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 0 1 : 0 1 1 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t57,t108}=> s38 State nr. 38 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 0 1 : 0 1 1 0 0 0 0 0 1 1 0 0 1 1 0 1 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 =={t28,t40,t52,t67,t109,t125}=> s39 State nr. 39 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 0 1 0 1 1 0 1 0 1 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 1 1 1 : 0 1 1 1 =={t54,t110}=> s40 State nr. 40 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 1 1 1 : 0 1 1 1 =={t61,t111}=> s41 Figure D.1: (Continued)

PAGE 172

160 Appendix D: (Continued) State nr. 41 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 0 1 1 0 0 1 1 0 1 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 1 1 : 0 1 1 1 =={t59,t70}=> s42 State nr. 42 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 0 1 1 0 1 0 1 0 0 0 0 1 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 1 1 : 0 1 1 1 =={t64,t71,t112,t126}=> s43 State nr. 43 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 0 1 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 1 : 1 1 1 1 =={t50,t63,t72,t113,t131}=> s44 State nr. 44 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 1 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 : 1 1 1 0 =={t74}=> s45 State nr. 45 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 : 1 1 1 0 =={t75,t114,t132}=> s46 Figure D.1: (Continued)

PAGE 173

161 Appendix D: (Continued) State nr. 46 P.nr: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 : 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 : 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 : 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 : 93 94 95 96 toks: 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 : 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 : 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 : 1 1 1 1 dead state Figure D.1: (Continued)

PAGE 174

About the Author Natalia Sandberg was born Natalia Pa lacio Marino on October 25, 1980. After graduation from Marymount School in Barranquilla, Colombia. Natalia attended Universidad Del Norte and subseq uently transferred to The University of South Florida where she attained a Bachelors of Science in Industrial Engineering. She was recognized as the outstanding graduate student from the Department of Industrial Engineering upon gr aduation in the fall semester 2003. After working for Baxter Healthcare Nata lia chose to pursue a Master of Science in Industrial Engineering. She is cu rrently married to Brian Sandberg and works as an Application Engineer at Invensys Pr ocess Systems in Houston, TX. For more information on this thesis please contact the Author at natyp25@yahoo.com.