petri nets for manufacturing modeling
TRANSCRIPT
TGS-AAU- Modeling of ManufSystems
Performance modeling and analysis using Petri Nets
Lecture notes By Dr. Tafesse GebresenbetAAU, Technology Faculty Mechanical Engineering DepartmentReferences
1.Zurawuski et al. Petri Nets and Industrial applications: a tutorial
2. Murata, Petri Nets: properties analysis and applications
3. Zhou et al. Modeling, simulation and control of FMS, a PN approach
4. Lecture notes by Yuna Park and Renat Kopach
TGS-AAU- Modeling of ManufSystems
Petri Nets: Graphical and Mathematical modeling tools◦ graphical tool
visual communication aid◦ mathematical tool
state equations, algebraic equations, etc concurrent, asynchronous, distributed,
parallel, nondeterministic and/or stochastic systems
Petri Nets-Introduction
TGS-AAU- Modeling of ManufSystems
• The graphical presentation of a Petri net is a bipartite graph
• There are two kinds of nodes– Places: usually model resources or partial state of the
system– Transitions: model state transition and synchronization
• Arcs are directed and always connect nodes of different types
Petri Nets- Informal Definition
TGS-AAU- Modeling of ManufSystems
1962: Adams. Petri’s dissertation (U. Darmstadt, W. Germany)
1970: Conf. on Concurrent Systems and Parallel Computation (MIT, USA)
1975: Conf. on Petri Nets and related Methods (MIT, USA) 1979: Course on General Net Theory of Processes and
Systems (Hamburg, W. Germany) 1980: First European Workshop on Applications and Theory
of Petri Nets (Strasbourg, France) 1985: First International Workshop on Timed Petri Nets
(Torino, Italy)
Petri Nets-History
TGS-AAU- Modeling of ManufSystems
In order to represent the dynamic behavior of the modeled system, each place may hold either none or a positive number of tokens, pictured by small solid dots
A token in a place can indicate whether a condition associated with this place is true or false, therefore the state of the system is modeled by marking the places with tokens
The distribution of tokens on places called PN marking, defines the current state of the modeled system. A PN containing tokens is called a marked PN
Petri Nets- State
TGS-AAU- Modeling of ManufSystems
Basics of Petri Nets Petri net consist two types of nodes: places
and transitions. And arc exists only from a place to a transition or from a transition to a place.
A place may have zero or more tokens. Graphically, places, transitions, arcs, and
tokens are represented respectively by: circles, bars, arrows, and dots.
p2 p1
t1
Petri Nets - Basics
TGS-AAU- Modeling of ManufSystems
The graphical representation of a Place-Transition net comprises the following components:
Places, drawn by circles. Places model conditions or objects, e.g., a program variable. Places might contain
Tokens, drawn by black dots. Tokens represent the specific value of the condition or object, e.g., the value of a program variable.
Transitions, drawn by rectangles. Transitions model activities which change the values of conditions and objects.
Arcs, specifying the interconnection of places and transitions thus indicating which objects are changed by a certain activity.
Place-Transition nets are bipartite graphs, i.e. we may only connect a place to a transition or vice versa, but we must not connect two places or transitions. This also would not make sense, if we keep the interpretation of the components of a Place-Transition net in mind.
Petri Nets - Basics
TGS-AAU- Modeling of ManufSystems
A black-and-white Petri net or ordinary PN can be formally defined as a four-tuple1: PN = (P, T, I, O) where:
P is a finite non-empty set of places. P = {p1, p2, ..., pn}T is a finite non-empty set of transitions. T = {t1, t2, ..., ts}I is an input function. I: (T x P) → {0,1}, I(t, p) = 1 if there exists an arc from p to t. If so, p is an input place for t; O is an output function. O: (T x P) → {0,1}, O(t, p) = 1 if there exists an arc from t to p. If so, p is an output place for t;
M: P → N is a marking that assigns a non-negative integer to each place. Such a number represents the number of tokens in the place. <P, T, I, O, M> represents a marked Petri net. Figure below shows a simple PN mode
Petri Nets -Definitions
TGS-AAU- Modeling of ManufSystems
Places (p): ◦ a place is an input to a transition if there is a directed arc connecting
this place to a transition.◦ Input places may represent the availability of resources, the transition
may represent their utilization,◦ A place is an output to a transition if there is a directed arc connecting
the transition to the place◦ Output places may represent the release of resources
Transitions (t): Directed arcs connecting places to transitions and
transitions to places
Petri Nets -Definitions
Places p1 is an input place of transition t1
Places p2 and p3 are outputplaces of transition t1
TGS-AAU- Modeling of ManufSystems
Places: P = {p1, p2, p3}; Transitions: T = {t1, t2, t3};Input places: I(t1) = {}, I(t2) = {p1, p2}, I(t3) = {p3};Output places: O(t2) = {p1}, O(t2) = {p3}, O(t3) = {p2};Initial Marking Mo = [1 1 0]
Petri Nets -Definitions
TGS-AAU- Modeling of ManufSystems
.
An example
TGS-AAU- Modeling of ManufSystems
.
Multiple arcs
TGS-AAU- Modeling of ManufSystems
• A transition t is called enabled in a certain marking, if:– For every arc from a place p to t, there exists a
distinct token in the marking• An enabled transition can fire and result in
a new marking• Firing of a transition t in a marking is an
atomic operation
Enabling and Firing rule
TGS-AAU- Modeling of ManufSystems
Below is an example Petri net with two places and one transaction.
Transition node is ready to fire if and only if there is at least one token at each of its input places
state transition of form (1, 0) (0, 1)p1 : input place p2: output place
p2 p1
t1
TGS-AAU- Modeling of ManufSystems
• Firing a transition results in two things:1. Subtracting one token from the marking of any
place p for every arc connecting p to t2. Adding one token to the marking of any place p
for every arc connecting t to p
Enabling and Firing rule (cont.)
TGS-AAU- Modeling of ManufSystems
The enabling and firing rule are illustrated further in the figure below. In Fig a, transition t1 is enabled as the input place p1 of transition t1 contains two tokens, and I (p1,t1)=2.
The firing of the enabled transition t1 removes from the input place p1 two tokens as I (p1,t1)=2, and deposits one token in the output place p3, O(p3,t1)=1, and two tokens in the output place p2, O(p2,t1)=2.
Enabling and firing rules (example)
TGS-AAU- Modeling of ManufSystems
The following rules are used to govern the flow of tokens in a Petri net:
Enabling Rule: A transition, t, is enabled if and only if all the input places of transition t contains at least one token. Firing Rule: An enabled transition t may fire at marking Mo. Firing an enabled transition t removes one token from each input place of t and adds one token to each output place of t.
A Petri net from stage k to stage k+1 can be expressed by the following state equation: Mk+1 = Mk + Cuk
Where, Mk is the current marking state vector, uk is the control vector and C = O - I is the incident matrix.
Enabling and firing rules (example)
TGS-AAU- Modeling of ManufSystems
Using this notation, Petri nets can model discrete event systems and can capture important system characteristics that occurs in a sequence, actions that occur concurrently, actions that compete for resources, actions that must be synchronized, actions that occur in cycles, and actions that cannot occur simultaneously.
Enabling and firing rules (example)
The evolution of Petri net marking
TGS-AAU- Modeling of ManufSystems
.
example
TGS-AAU- Modeling of ManufSystems
More about Petri Nets
..
TGS-AAU- Modeling of ManufSystems
System State: Tokens and Net Marking
TGS-AAU- Modeling of ManufSystems
Initial State: (1,1,2,1)
t2 is enabled
TGS-AAU- Modeling of ManufSystems
Fire t2, New State: (1,0,3,2)
TGS-AAU- Modeling of ManufSystems
Fire t3, New State: (2,0,2,2)
TGS-AAU- Modeling of ManufSystems
Fire t1, New State: (1,2,2,2)
TGS-AAU- Modeling of ManufSystems
Fire t4, New State: (1,3,2,0)
TGS-AAU- Modeling of ManufSystems
In the context of DES
Marking of the SPN = state of the system Firing of a transition = occurrence of an
event
TGS-AAU- Modeling of ManufSystems
Notation…
A Petri net is a 5-tuple , where S is a set of places T is a set of transitions F is a set of arcs s.t. M0 is an initial marking W is the set of arc weights/transition
matrix/incidence matrix
TGS-AAU- Modeling of ManufSystems
…allows for many things
The state of a net is an M vector so
State equations are possible
◦Where is how many times each transition fires
◦ WT state transition matrix
TGS-AAU- Modeling of ManufSystems
.
S={p1,p2,p3,p4} T={t1,t2,t3,t4}
F={(p1,t1) (p2,t2) (p3,t3) (p4,t4) (t1,p2)(t2,p3)(t2 p4) (t3,p1) (t4,p2)}
2010
0110
1012
0101
CW
M0 Initial state (1,1,2,1)σ Firing sequence (t2 t3 t1 t4)Mn Final state (1,3,2,0)
TGS-AAU- Modeling of ManufSystems
The modeling power of Petri nets can be increased by adding the zero testing ability, i.e., the ability to test whether a place has no token. This is achieved by introducing an inhibitor arc.
The inhibitor arc connects an input place to transition, and is pictorially represented by an arc terminated with a small circle.
The presence of an inhibitor arc connecting an input place to a transition changes the transition enabling conditions.
In the presence of the inhibitor arc, a transition is regarded as enabled if each input place, connected to the transition by a normal arc ( an arc terminated with an arrow)
Enabling and firing rules -Inhibitor arc
TGS-AAU- Modeling of ManufSystems
A Petri net is said to be a pure or self-loop free if no place is an input place to and output place of the same transition .
A Petri net that contains self-loops can always be converted to a pure Petri net as shown in Figure 5
Enabling and firing rules – Self loop
TGS-AAU- Modeling of ManufSystems
Representational Power of Petri netsPNs exhibited suitable for modeling activities such as concurrency, decision making, synchronization and priorities are modeled very effectively with Petri nets.
These characteristics are represented using a set of simple constructs Sequential actions Dependency Conflict (decision, choice) Concurrency Cycles Synchronization (mutually exclusive actions, resource
sharing, communication, queues)
Properties of Petri nets
TGS-AAU- Modeling of ManufSystems
Properties of Petri Nets Sequential Execution
Transition t2 can fire only after the firing of t1. This impose the precedence of constraints "t2 after t1."
SynchronizationTransition t1 will be enabled only when a token there are at least one token at each of its input places.
MergingHappens when tokens from several places arrive for service at the same transition.
p2
t1
p1 p3
t2
t1
TGS-AAU- Modeling of ManufSystems
Properties of Petri Nets
Concurrency t1 and t2 are concurrent. - with this property, Petri net is able to model systems of distributed control with multiple processes executing concurrently in time.
t1
t2
-continued
TGS-AAU- Modeling of ManufSystems
Properties of Petri Nets
Conflictt1 and t2 are both ready to fire but the firing of any leads to the disabling of the other transitions.
t1
t2
-continued
t1
t2
TGS-AAU- Modeling of ManufSystems
Properties of Petri Nets
Conflict - continued
◦ the resulting conflict may be resolved in a purely non-deterministic way or in a probabilistic way, by assigning appropriate probabilities to the conflicting transitions.
there is a choice of either t1 and t2, or t3 and t4
-continued
t1 t2
t3 t4
TGS-AAU- Modeling of ManufSystems
Sequential actions, Dependency
TGS-AAU- Modeling of ManufSystems
.
Conflict resolution, concurrency
TGS-AAU- Modeling of ManufSystems
.
Cycles
TGS-AAU- Modeling of ManufSystems
synchronization
TGS-AAU- Modeling of ManufSystems
Buffer (Queue)
TGS-AAU- Modeling of ManufSystems
Communication
TGS-AAU- Modeling of ManufSystems
State Machines A state machine is a PN in which each transition has exactly one input and one output place. This can be concisely expressed as ; |.t|=|t.| = 1 for all t Є T .
Recalling that one limitation of Marked graphs was that they could not represent conflict. State machines can represent conflict because they permit the basic conflict or decision-making structure.
Behavioral Properties of PN
TGS-AAU- Modeling of ManufSystems
Properties of Petri NetsReachability.
From the model point of view, this property determines whether a given (vector) marking is reachable from the initial marking. From the real system point of view, this property indicates whether a system state is reachable from the initial configuration.
It can be used to answer question such as the following: it is possible to reach a state where machine M is processing two parts while robot R is busy and machine M’ is free? It is possible to reach a state in which buffer B is full? The answers to a set of well-defined questions can be used to establish a correct system design. A second related property is coverability.
From the Petri net point of view, this determines whether a reachable marking is greater than or equal to another given marking. From this kind of property, less complete information can be obtained; but this information can be used in a similar way that provided by reachability properties.
Behavioral Properties of PN
TGS-AAU- Modeling of ManufSystems
Reachability Reacahability is a fundamental basis for studying the dynamic properties of any system. The firing of an enabled transition will change the token distribution (marking).A sequence of firing will result in a sequence of markings. A marking Mn is said to be reachable from a marking Mo if there exists a sequence of firings that transforms Mo to Mn.
A firing or occurrence sequence is denoted by σ = Mo t1 t2 M2 … tn Mn or simply σ = t1 t2 …. tn.
In this case, Mn is reachable from Mo by σ and we write Mo{σ>Mn}.
The set of all possible markings reachable from Mo in a net (N,Mo). The set of all possible firing sequence from Mo in a net (N, Mo) is denoted by L(N,Mo) or simply L(Mo)
Behavioral Properties of PN
TGS-AAU- Modeling of ManufSystems
Boundedness and safeness
This property determines whether the number of tokens in a given place is always smaller than or equal to a given constant k.
Usually in FMS/AMS domains, using the possible meanings of a place as stated previously, all places must be
bounded; the model is perhaps, incorrect.
If a model is correct and a place is detected to be unbounded, some overflow problems may arise. A
related property is safeness (1-boundedness).
Behavioral Properties of PN
TGS-AAU- Modeling of ManufSystems
BoundednessA PN (n, Mo) is said to be k-bounded or simply bounded if the number of tokens in each place does not exceed a finite number k for any marking reachable from Mo, i.e., M(P)≤k for every place p and every marking M Є(Mo). A PN (N, Mo) is said to be safe if is 1-bounded.
Eg the nets shown below (fig b) is 2-bounded.
Behavioral Properties of PN
TGS-AAU- Modeling of ManufSystems
Reversibility
When verified, this property determines that the initial state can be reached from each reachable state.
In the application domain considered, this property means that each possible erroneous situation has been considered by means of some error recovery strategy.
The erroneous situations include the case of system deadlocks and the case of resource failures.
Petri Nets-Properties
TGS-AAU- Modeling of ManufSystems
Deadlock-freeness/livenessA Petri net system is said to be deadlock-free if at each reachable marking there exists at least one transition that is enabled. In our application domain this means that it is always possible to make some production activity.
Deadlock-freeness is not enough for this domain. It is possible to have a part of a system that can always run correctly, but also another part of the system that is in a deadlock. For instance, it is possible to have one type of part being correctly processed, as well as other parts whose processing has been started but cannot be finished.
Petri Nets – Properties
TGS-AAU- Modeling of ManufSystems
Thus deadlock-freeness cannot be strong enough for highly automated systems; liveness is a stronger property. A Petri net system is said to be live if for each reachable marking it is always possible to fire any transition.
In the application domain considered, this mean that it is always possible to execute the system actions modeled by any transition.
As a consequence the processing of each part, once started, can always be finished: the transitions “driving” a token (modeling a part) to the system output can be fired.
Thus the processing of the part can be finished. This also means that if there are always new raw materials, their processing can be carried out.
Petri Nets – Properties
TGS-AAU- Modeling of ManufSystems
LivenessThe concept of liveness is closely related to the complete absence of deadlocks in operating systems. A PN (N,Mo) is said to be live (or equivalently Mo is said to be a live marking for N), if no matter what marking has been reached from Mo, it is possible to ultimately fire any transition of the net by progressing through some further firing sequence.This means that a live PN guarantees deadlock-free operation, no matter what firing sequence is chosen(eg figure 6)
Behavioral Properties of PN
TGS-AAU- Modeling of ManufSystems
PN Properties Meanings in the modeled Manufacturing System
Reachability A certain state can be reached from the initial condition
Boundness No capacity (of, e.g., buffer, storage area, and work station) overflow
Safeness Availability of a single resource; or no request to start an ongoing process
Conservativnes Conservation of non-consumable resources, e.g., machines and AGVs
Liveness Freedom from deadlock and guarantee the possibility of a modeled event,operation, process or activity to be ongoing.
Reversibility Re-initialization and cycle behavior
Repetitiveness Existence of repetitive operations/activities/events for some markings
Consistency Existence of cyclic behavior for some marking
Petri Nets-Properties
TGS-AAU- Modeling of ManufSystems
Original model of Petri Net was timeless. Time was not explicitly considered since
Timed Petri NetsOne major extension over the past in PN modeling is inclusion of time into the net. Time is included in a PN model; such a net is referred as Timed Petri Nets (TPNs).
Timed Petri nets have been used for the performance evaluation of concurrent systems and, in particular, of communication protocols and multiprocessor computer systems.
Time is associated with the transitions and when enabled or fired, the firing delay of the transitions can be either deterministic or stochastic in nature.
Timed Petri Nets
TGS-AAU- Modeling of ManufSystems
Even though there are arguments against the introduction of time, there are several applications that require notion of time.
First attempt was made by Ramchandani at MIT in 1974, and since then there have been many different approaches of extending petri net by the integration of time, however not a systemic introduction.
Time in Petri Net -continued
TGS-AAU- Modeling of ManufSystems
General approach: ◦Transition is associated with a time for
which no event/firing of a token can occur until this delay time has elapsed.
◦ This delay time can be deterministic or probabilistic.
◦Number of servers should be specified. Different outcomes resulted from plural/single server.
Timed Petri Net - Overview
TGS-AAU- Modeling of ManufSystems
Due to this nature of transition firing, Timed Petri Nets are grouped into
Deterministic Timed Petri Nets (DTPNs), and Generalized Stochastic Petri Nets (GSPNs).
Transitions called immediate transitions that take zero time or no time to fire are another extension to the nature of Timed Petri Net transitions.
Deterministic Timed Petri Nets (DTPNs)When time delays for operations or activities in a concurrent conflict or choice-free system are fixed, we can model the system as a deterministic timed Petri net.
Petri Nets - SPN
TGS-AAU- Modeling of ManufSystems
Deterministic Timed Petri Nets (DTPNs)When a choice is involved in such a system and the system is allowed to make a choice freely, and then its behavior becomes non-deterministic.
For the class of choice-free Petri nets, marked graphs or event graphs are suitable and sufficient, which can represent concurrent activities but not choices.
The performance index for such a model is cycle time. Transitions, places, and arcs all can be associated with time delays in a marked graph, resulting in a timed marked graph. These elements with time delays can be converted into each other.
Petri Nets - SPN
TGS-AAU- Modeling of ManufSystems
Deterministic Timed Petri nets are a class of timed Petri nets where a constant delay is augmented to the transitions of the net. Then a DTPN is defined as,
N=(P, T, I, O) alternatively N= (S, T, F, MO, W)
N = (P, T, E, W, H, D) where,
P: Finite nonempty set of places
T: Finite nonempty set of transitionsE: A set of directed arcs that connects places to transitions and vice versa;W: Weight of the arcsH: Finite set of inhibitor arcs
D: Duration of firing
A place is an input (or an output) place of a transition t if and only if there exists an arc from (p to t) or from (t to p) respectively in the set E. The sets of all input and output places of a transition t are denoted by Inp(t) and Out(t), respectively. Similarly, the set of all input and output transitions of a place is denoted by Inp(p) and Out(p) respectively.
Petri Nets - SPN
TGS-AAU- Modeling of ManufSystems
Stochastic Petri NetsClassical Petri nets are useful in investigating qualitative or logical properties of concurrent systems, such as mutual exclusion, existence and absence of deadlocks, boundedness and fairness. However for quantitative evaluation the concept of time needs to be incorporated in to the definition.
A convenient way of achieving this is that for every state (marking) has associated with it a time for which no event (i.e. a transaction) can occur until this time has elapsed. An event is the result of activities performed by the system when it is in the situation specified by the marking.
Time is therefore naturally associated with transactions, such that they can only fire some time after they have been enabled. The association of time with transactions is the most common form of timed Petri nets although associating time with places is exactly the same.
Petri Nets - SPN
TGS-AAU- Modeling of ManufSystems
A stochastic Petri net (SPN) is essentially a high level model that generates a stochastic process.
SPN performance evaluation is simply the modeling of the given system using SPNs and generating the stochastic process that governs the systems behavior.
This stochastic process is then further analyzed using known techniques such as Markov Chain models and Semi-Markov chain models.
The use of SPNs is considerably useful to the modeler as it is a graphical model and is convenient in the obtaining a credible high-level model of a system.
Petri Nets - SPN
TGS-AAU- Modeling of ManufSystems
As a modeling tool SPNs offer several advantages:
1. They provide a convenient framework for correctly and faithfully describing an AMS and for generating the underlying stochastic process.
2. Their analysis can be automated and there are available several software tools for this purpose.
3. They can exactly model non-product form features, such as priorities, synchronization, forking, blocking and multiple resource holding.
4. They can be used a both logical and quantitative analysis.
5. Even if their analysis is intractable, they serve as a ready simulation model.
Petri Nets
TGS-AAU- Modeling of ManufSystems
As a method of representation SPNs are very powerful, on a par with Markov chain models. They suffer on the other hand on the computational front as they suffer from state space explosions.
Definition: A Stochastic Petri Net is a six-tuple (P, T, I, O, M, F) where (P, T, I, O, M) is a petri net and F is a function, which associates with each transition in each reachable marking, a random variable. This is a very general definition of a stochastic Petri net.
The basic philosophy underlying the use of various classes of stochastic Petri net in performance evaluation is the equivalence of their marking process, under appropriate distributional assumptions, to a Markov or Semi-Markov process with discrete state space.
Petri Nets - SPN
TGS-AAU- Modeling of ManufSystems
The typical steps in stochastic Petri net evaluation include:
1. Modeling the given system by a stochastic Petri net.2. Generating the marking process.3. Computing the steady state probability distribution of states
of the marking process4. Obtaining the required performance measures from the
steady state probabilities.
All steps in the evaluation can be automated and this constitutes an important reason for the popularity of stochastic Petri net performance modeling.
Stochastic Petri nets fall into two subsets, these are: 1. Exponential Timed Petri Nets, and 2. Generalized Stochastic Petri Nets
Petri Nets - SPN
TGS-AAU- Modeling of ManufSystems
Colored Petri nets
Colored Petri nets (CP-nets or CPN) are extensions of ordinary Petri nets and graphical modeling languages that
model both the states of a system and the events that change the system from one state to another.
CP-nets combine the strengths of ordinary Petri nets (PN) and programming languages.
The formalism of Petri nets is well suited for describing concurrent and synchronizing actions in distributed
systems.
Petri Nets-CPN
TGS-AAU- Modeling of ManufSystems
Programming languages can be used to define data types and manipulation of data.
Large and complex models can be built using hierarchical CP-nets in which modules, which are called pages in CPN terminology, are related to each other in a well-defined way.
Without the hierarchical structuring mechanism, it would be difficult to create understandable CP-nets of real-world systems. CP-nets can be used in practice only because there are mature and well-tested tools supporting them.
CPN Tools has a new GUI with state-of-the-art interaction techniques such as two-handed input, tool glasses and marking menus, and an improved simulator.
Petri Nets-CPN
TGS-AAU- Modeling of ManufSystems
Petri net model is a network of interconnecting resources and actions representing a real system.
By modelling manufacturing systems, performance analysis can be performed to help the operations manager to plan resources, schedule jobs and predict overall throughput rate and system capacity.
The resulting parameters can be recorded and compared to form measures of the operations’ efficiency and effectiveness.
This assists managers to quantify system performance, as opposed to pure judgement, which is subjective and difficult to compare.
Petri net also serves as a communication aid to both higher management and people on the shop floor, showing the abstract aspects of work cells coordination and resource cycles graphically.
Petri Nets application in Manufacturing Systems
TGS-AAU- Modeling of ManufSystems
The hierarchical nature of Petri net enables it to manage, display and analyse large and small models in different scales and levels of detail.
Although it potentially suffers from state space explosions when dealing with complex manufacturing systems, various extensions of Petri net add richness and flexibility to the modelling language.
Reduction theorems and data fusion methods exist to facilitate analysis on such complex models.
For the efficient running of a factory, many issues are required to be solved: ranging from integration among different processes to system capacity planning.
Petri Nets application in Manufacturing Systems
TGS-AAU- Modeling of ManufSystems
Petri net is one of various analytical tools to solve these issues.
In modern production plants, where flexible manufacturing systems are used to achieve factory automation, Petri nets can be applied to capture the essence and details of the plant processes.
It provides the means to model common manufacturing operations, such as concurrent assembly lines, synchronisation, unreliable machines and resource contention.
The behavioural properties of the model provide useful information to the engineer in controller design and managers in job scheduling and capacity planning.
Petri Nets application in Manufacturing Systems
TGS-AAU- Modeling of ManufSystems
Manufacturing processes often occur in parallel, such as multiple assembly lines and these concurrent operations can be modelled by drawing separate chains of place and transition in the graph.
Synchronisation occurs in assembly lines where parts resulting from various processes are brought together to form a final product. Synchronising products from concurrent processes is an important aspect in manufacturing operations.
An element of uncertainty exists in operations, such as machine tool failures and these non-deterministic processes can be modelled by using stochastic timed Petri nets, where random time delay can be associated with each place. As the machines breakdown, bottlenecks and deadlocks may occur, which engineers strive to eliminate or prevent.
Petri Nets application in Manufacturing Systems
TGS-AAU- Modeling of ManufSystems
Input Places Transition Output Places Preconditions Event Post conditions Input data Computation Step Output data Input signals Signal Processor Output Signals Resources needed Task or Job Resources
released Conditions Clause in Logic Conclusions Buffers Processor Buffers
Petri Nets -example
TGS-AAU- Modeling of ManufSystems
Places/Transitions DescriptionP1 Raw material availablep2 Robot Availablep3 Milling machine (WS1) is availablep4 WS1 loaded with raw material by robotP5 Milling operation performed on raw materialp6 Semi-finished part loaded on WS2 by robotp7 Drilling operation performed on the partp8 Drilling machine (WS2) availablep9 Out going conveyor loaded by robott1 Starting to load WS1t2 Initiation of milling operationt3 Termination of milling operationt4 Initiation of drilling operationt5 Termination of drilling operationt6 Completion of action in p9
Petri Nets –example-1
TGS-AAU- Modeling of ManufSystems
.
Petri Nets –example-1
TGS-AAU- Modeling of ManufSystems
.
Petri Nets –example-1
TGS-AAU- Modeling of ManufSystems
Petri Nets –example-2
TGS-AAU- Modeling of ManufSystems
Petri Nets –example-2
TGS-AAU- Modeling of ManufSystems
A Flexible Assembly cellConsider the assembly cell shown in the figure below . A conveyor and two neighborhooding robots are needed to carry out an assembly task. Each conveyor (C) requests the left robot (R) first, and after acquiring it, requests the right one. Then the assembly operation starts. When the task is completed, the conveyor releases both robots.
Petri Nets –example-3 (FMC)
Robot 1
Robot 3
Robot 2Conveyor
1
Conveyor 3Conveyor 2
A flexible assembly cell
TGS-AAU- Modeling of ManufSystems
Requesting and releasing a robot are two events that can occur concurrently and asynchronously. For eg, the three conveyors could simultaneously request their left robots (concurrently). Also there is a release of two allocated robots occur when the assembly task is over but the time of this event cannot be accurately predicted due to possible delays or errors (asynchronously). The petri net model must capture the concurrent and asynchronous behavior of the system. For the above shown assembly cell;
P1, conveyor C1 requesting its left robot R1P4, conveyor C2 requesting its left robot R2P7, conveyor C3 requesting its left robot R3P2, conveyor C1 requesting its right robot R2P5, conveyor C2 requesting its right robot R3P8, conveyor C3 requesting its right robot R1P3, conveyor C1 and its two robots R1 and R2 are in useP6, conveyor C2 and its two robots R2 and R3 are in useP9, conveyor C3 and its two robots R3 and R1 are in use
Petri Nets –example-3 (FMC)
TGS-AAU- Modeling of ManufSystems
P10 the robot R1P11 the robot R2P12 the robot R3
Next, transition are assigned that represent the activities in the system
t1 conveyor C1 acquires its left robot R1t4 conveyor C2 acquires its left robot R2t7 conveyor C3 acquires its left robot R3t2 conveyor C1 acquires its right robot R2t5 conveyor C2 acquires its right robot R3t8 conveyor C3 acquires its right robot R1t3 conveyor releases R1 and R2 t6 conveyor releases R2 and R3t9 conveyor releases R3 and R1
Petri Nets –example-3 (FMC)
TGS-AAU- Modeling of ManufSystems
At the start of the assembly task, all conveyors and robots are free, and the three conveyors are concurrently requesting their left robots,. This produces the initial marking Mo =(1 0 0 1 0 0 1 0 1 1 1)T
The initial marking along with the logical requirements of the assembly task leads to the Petri net model
The initial marking has enabled transitions t1, t2 and t7. If these transtions are allowed to fire concurrently, the new marking will be
M’ = (o 1 0 0 1 0 0 1 0 0 0 0 ) T
Petri Nets –example-3 (FMC)