Transcript Online Session 1 - FlexSim Simulation Software
FlexSim Supplemental Training
part of the FlexSim Education Initiative:
• • • •
Textbook:
Applied Simulation, modeling and Analysis using FlexSim – Educator support materials – Video insight series
Supplemental training 4 week series
– Introduction, In-depth topics
FlexSim application aids (help menu)
– User Manual – Getting Started tutorials
FlexSim formal training courses
– Basic, Advanced, Specialized
20121029 1
Example Model- Overview
• Introduction of common modelling concepts – Dynamic routing decisions – Itemtypes – Labels – Statistical Distributions – Object Triggers – Global Tables
Model Description
• Purpose – Learn how to assign and use labels on flowitems for routing and processing purposes. Learn how to use an empirical distribution to assign itemtypes.
• Description – Parts arrive in a queue exponentially every 30 seconds. There are four part types (1,2,3,4) distributed (20%, 30%, 40%, 10%) respectively (see dempirical in Flexsim Command Summary).
– The parts are processed on one of four machines. Each machine is dedicated to a single part type. The processing times at each machine is uniform(100,120) seconds for first time parts, and uniform(120,130) seconds for rework parts.
– After the parts are machined, they are put in a queue and wait to be tested. The test time is a constant 10 seconds. Parts that pass, leave the model, failed parts are routed back to the first queue to be reworked. 10% of the parts fail.
– Parts being reworked are given priority in the queue.
Model Layout
Model Flow – From the Source to the Sink
Requirements : • Four part types • Each part type has a dedicated machine • Randomly assign part types Concepts: • Itemtype Attribute • Send to Port picklist options • Statistical distributions • Object triggers
5
Understanding the Basic Pick List
Option Name Choose an option or type an expression directly into the field Edit the selected option graphically (template editing) Edit Code for this option
Editing Picklists
• Graphical pop-up windows will guide you in editing picklist options. Different options will require different information to use correctly
Using Distributions
What you need to know: • The name of the distribution • The parameters it requires – Check the documentation!
• Where to use it!
Example: dempirical (“TableName”)
See the commands help from within Flexsim for more information
8
Order of Execution
(pushed flowitem)
flowitem enters OnEntry Setup Time Pick Operator Pick Operator Process Time OnSetupFinish delay delay OnExit OnProcessFinish delay Send To Port Use Transport possible delay
Ex. Change Source Arrival
• The statistical probability distribution which best simulates the inter-arrival pattern is an
exponential distribution
with a location value of
0
and a scale value of
30
.
Itemtypes
• itemtype have an attribute called
itemtype
– all
flowitems
. It’s a numeric identifier used to distinguish one “type” of flowitem from another in processing and routing decisions in a model. • Addressable to the user
via getitemtype( flowitem )
Concept of Triggers
• • • • When key events occur on an
object
, a
trigger
is fired.
The user may specify a variety of things to happen when a trigger fires (trigger logic).
There are triggers when a flowitem enters or exits an object. There are triggers when a process time finishes or a repair time is complete.
Each type of object has a unique set of triggers.
Triggers
• Define and customize system behavior at a specific event occurrence.
– Write/read information to/from a flowitem.
– Change visual properties of flowitems or objects.
– Send Messages to other objects.
– Change behavior of other objects.
– And much more…
Understanding the Trigger Pick List
Trigger Name Edit** the options (template editing) Edit Code for this option
**
The Edit button shown will take on the “Add” icon When no options are selected for the trigger.
Editing Triggers
• Trigger pop-up windows show all the active options for the trigger • Add or remove options with the appropriate buttons • • Individual options can be editing by clicking the hide/collapse triangle
Blue Text
can be edited. Tab will jump between fields. Some options have a hint window
•
Labels
labels
– information can be stored on flowitems (and other modelling objects) in the form of labels.
• Flowitems and other Flexsim objects can have an
unlimited
number of labels. • Labels have a
name
and
data
. The data may be numeric, string, list, or table.
•
Object Labels
• syntax – getlabelnum(
object, “labelname”
) – setlabelnum(
object, “labelname” , value )
– getlabelstr(
object, “labelname”
) – setlabelstr(
object, “labelname” , string )
– label(
object, “labelname”
) examples – – – – – getlabelnum( item, “serialnumber” ) setlabelnum( item, “serialnumber”, 5 ) getlabelstr( current, “category” ) setlabelstr( current, “category”, “groceries” ) inc( label(item, “stepnum”), 1 ) • The increment command only works with number data
The Flowitem Bin
• Sources create copies of objects in the Flowitem Bin • Any changes made to objects in the Bin affect the flowitems that are created by Sources • Used to create labels, set size, color, shape, etc.
Routing Back to the Queue
Requirement: • 10% of all tested parts fail, and are sent back to the first queue awaiting rework.
Concepts: • Send to Port picklist • Object Trigger Events
19
Edit Object Behavior
Requirements: • Conditional process times based on items needing to be reworked • Prioritize items in the queue that need to be reworked Concepts: • Labels • Object Trigger Events • Statistical distributions
20
Questions & Bonus
• Where is the bottleneck?
• Can you change the color of failed parts?
• Change the model to count how many times a part has failed.
• Add a Dashboard to Track throughput per hour of the system.
21
Dashboards
• Adds customizable charts and graphs that update in real-time with your model • Many Predesigned charts available • Using the Tracked Variables tool, also allows for the creation of user defined charts