TKMM01 Manufacturing simulation …….…......…... Taylor ED.

Slides:



Advertisements
Similar presentations
TUTORIAL 1 Getting Started with Excel
Advertisements

Formulas, Ranges, and Functions. Formulas n Formulas perform operations such as addition, multiplication, and comparison on worksheet values. n Formulas.
Microsoft Office XP Microsoft Excel
Business Computer Information Systems 1B Microsoft Office XP Final Exam Review.
Chapter 6 Financial Forecast. Agenda Developing a financial forecast model Advanced formatting Using the scenario manager to facilitate decision-making.
Excel Tutorial 1 Getting Started with Excel
Review. Microsoft Office Excel 2013 provides powerful tools to organize, analyze, manage, and share information Locations where work is done are cells,
Microsoft Excel 2013 An Overview. Environment Quick Access Toolbar Customizable toolbar for one-click shortcuts Tabs Backstage View Tools located outside.
Pre-defined System Functions Simple IF & VLOOKUP.
XP New Perspectives on Microsoft Access 2002 Tutorial 61 Microsoft Access 2002 Tutorial 6 – Creating Custom Reports.
Tutorial 3 Calculating Data with Formulas and Functions
Exploring Microsoft Excel 2002 Chapter 7 Chapter 7 List and Data Management: Converting Data to Information By Robert T. Grauer Maryann Barber Exploring.
Guide to Oracle10G1 Introduction To Forms Builder Chapter 5.
Practical Computing by Lynn Hogan. Practical Computing Chapter 8 Creating Spreadsheets (Using Microsoft Excel 2007)
Automating Tasks With Macros
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
Textbook: Applied Simulation, modeling and Analysis using FlexSim
Adding Automated Functionality to Office Applications.
FIRST COURSE Excel Lecture. XP 2 Introducing Excel Microsoft Office Excel 2007 (or Excel) is a computer program used to enter, analyze, and present quantitative.
DEMONSTRATION FOR SIGMA DATA ACQUISITION MODULES Tempatron Ltd Data Measurements Division Darwin Close Reading RG2 0TB UK T : +44 (0) F :
COMPREHENSIVE Excel Tutorial 8 Developing an Excel Application.
Chapter 2 Querying a Database
Advanced Tables Lesson 9. Objectives Creating a Custom Table When a table template doesn’t suit your needs, you can create a custom table in Design view.
Chapter 3 Maintaining a Database
A First Program Using C#
Copyright 2007, Information Builders. Slide 1 Maintain & JavaScript: Two Great Tools that Work Great Together Mark Derwin and Mark Rawls Information Builders.
1 iSee Player Tutorial Using the Forest Biomass Accumulation Model as an Example ( Tutorial Developed by: (
6 Copyright © 2004, Oracle. All rights reserved. Working with Data Blocks and Frames.
Chapter 2 Querying a Database MICROSOFT ACCESS 2010.
Working with a Database
XP New Perspectives on Microsoft Office Access 2003 Tutorial 11 1 Microsoft Office Access 2003 Tutorial 11 – Using and Writing Visual Basic for Applications.
European Computer Driving Licence Syllabus version 5.0 Module 4 – Spreadsheets Chapter 22 – Functions Pass ECDL5 for Office 2007 Module 4 Spreadsheets.
PMS /134/182 HEX 0886B6 PMS /39/80 HEX 5E2750 PMS /168/180 HEX 00A8B4 PMS /190/40 HEX 66CC33 By Adrian Gardener Date 9 July 2012.
Traffic Modeling.
CHAPTER 13 Creating a Workbook Part 2. Learning Objectives Work with cells and ranges Work with formulas and functions Preview and print a workbook 2.
Microsoft Access Lesson 1 Lexington Technology Center February 11, 2003 Bob Herring On the Web at
Virtual Interaction Manager
1 Working with MS SQL Server Textbook Chapter 14.
Lesson 2.  To help ensure accurate data, rules that check entries against specified values can be applied to a field. A validation rule is applied to.
XP 1 Microsoft Access 2003 Introduction To Microsoft Access 2003.
Linux+ Guide to Linux Certification, Third Edition
Microsoft Office 2007 Intermediate© 2008 Pearson Prentice Hall1 PowerPoint Presentation to Accompany GO! With Microsoft ® Office 2007 Intermediate Chapter.
Chapter 17 Creating a Database.
WS09-1 VND101, Workshop 09 MSC.visualNastran 4D Exercise Workbook Belted Cylinder.
Developed By Information Technology Services University Of Saskatchewan.
Microsoft Access. Microsoft access is a database programs that allows you to store retrieve, analyze and print information. Companies use databases for.
Chapter 9 Macros And Visual Basic For Applications.
—————————— CACI Products Company - ——————————————————— COMNET III —————————————— 1-1 Day 1 - COMNET Program Operation, Network Topology.
My Presentations Create new presentations and find the ones you’ve worked on before. Your progress is saved automatically as you work. Undo Anything.
Visual Basic for Application - Microsoft Access 2003 Programming applications using Objects.
Overview Excel is a spreadsheet, a grid made from columns and rows. It is a software program that can make number manipulation easy and somewhat painless.
XP 1 ﴀ New Perspectives on Microsoft Office 2003, Premium Edition Excel Tutorial 2 Microsoft Office Excel 2003 Tutorial 2 – Working With Formulas and Functions.
Microsoft® Excel Create an Excel table. 1 Work with the Table Tools Design tab. 2 Sort and filter records in a table. 3 Identify structured references.
Microsoft Office 2013 ®® Calculating Data with Formulas and Functions.
Key Applications Module Lesson 22 — Managing and Reporting Database Information Computer Literacy BASICS.
Extracting Information from an Excel List The purpose of creating a database, or list in Excel, is to be able to manipulate the data elements in ways that.
Microsoft Office 2013 Try It! Chapter 4 Storing Data in Access.
Quick Test Professional 9.2. Testing Process Preparing to Record Recording Enhancing a Test Debugging Running the Test and Analyzing the Results Reporting.
Microsoft ® Excel ® 2013 Enhanced Excel Tutorial 3 Calculating Data with Formulas and Functions.
An electronic document that stores various types of data.
Second Model: “Model2”. What You Will Learn  How to build a simple layout  How to connect ports for routing flowitems  How to detail and enter data.
Resource Review Excel formula basics Demonstrate how to enter manual formulas Examine some of the available functions and their usage Discuss the.
Formulas, Functions, and other Useful Features
Working with Data Blocks and Frames
Microsoft Excel.
MS-Excel Part 1.
Microsoft Access Illustrated
Customization
Learning Java with Alice 3.0 Game Design Kathy Bierscheid
Variables and Arithmetic Operations
Presentation transcript:

TKMM01 Manufacturing simulation …….…......…... Taylor ED

Starting up ED Possible to download to your personal computers via the schools computers Works together with Windows 7 but without help files (run in compatibility mode with XP)

Modeling in Taylor ED Objects queue up and are serviced by other objects Processing is modeled as a (stochastic) time step A model according to this principle is called a queuing network model The object or building block of Taylor ED: ATOM

Atom Overview Everything is an Atom Resources and products are atoms Atoms can contain other atoms Atoms can be moved from atom to atom Atoms can be created and destroyed Atoms can inherit behavior from atoms 4 Dimensional x,y,z location time

Application Hierarchy Taylor ED Logistic suite application Library modeling atoms functional atoms Model model atoms functional atoms Contains mother atoms Do not modify!!!

Building a Model or drag atoms from library into the 2D model layout double and/or right click to edit atom parameters time always in seconds sizes always in meters

Moving around in a view Pan: press and hold left mouse button move around your mouse Zoom press and hold both left and right mouse button zoom in: move your mouse vertically up zoom out: move your mouse vertically down Change view angle (3D only) press and hold right mouse button move around your mouse: the center of the view window is your pivot point

Running a Model, or to popup run control unlimited speed (synchro) real time slide control custom speed press reset and then run to start the simulation

Atom Channel Concept to set the channel view Tip! Use Ctrl+R 0..n input/output channels Input and output channels are used to pass atoms or to reference to other atoms 1 central channel Central channel is used for referencing only Channels connect: one output is connected to one input channel multiple channels can be connected to the central channel connect to own central channel to delete the connection

Atom Channels to connect by dragging mouse from dot to dot right click on channel dot: show current connections double click on channel dot: interactively change a connection create/delete channels by pressing the small plus “+” or minus “-” sign red: closed green: open Channels as arch or line

Atom Categories Baseclass (mother atoms)Do not change a mothers atom! “bare” atom, no functionality library atoms are created by adding functionality to a baseclass atom Daughter inherits functionality from it’s mother (original) when creating an atom by dragging, you create a daughter Duplicate direct copy there is no inheritance of functionality between the original and the copy

Library Tree The treeview of the library, also the “Model Layout” window will pop up View: Atom Info: will display atom help VEG: will display Visual Editing Guide Tree refreshes, collapse or expand the treeview VEG visual editing guide: displays the active tree atom in a simple layout view autoscale, zoom in, zoom out

Model Layout Window Edit: cut, copy, paste and delete atoms set the rotation View: Channels and grid settings override display settings up and down in hierarchy (highest is the model level)

Library Contents General Source Queue Server Sink Modeling Operations Storage Transporters Operators Availability Products Other Tools Visualization 3D External Data Experiments Results Other System

Part 1 Part 2 Part 3

Model Tree The tree-view of the complete model Menu is the same as the library tree plus Right or double click: atom specific:user interface general:standard parameters editing label:atom specific labels VEG is more useful here Tip! Use Refresh (F5) to update the Model tree Tip! Use understandable names on your atoms

2D/3D View 2D view Left mouse drag: pan through the view Both left and right mouse button drag: Up/down: zoom in/out 3D viewTip! Shift+F9 Left mouse drag: pan through the view Right mouse drag: Left/right: rotate Up/Down : view angle Both left and right mouse button drag: Up/down: zoom in/out

4DScript

4DScript Overview 4DScript is a functional language: example: 1+2 is written +(2,1) 4DScript for everything model logic create atoms control Taylor ED from outside applications 4DScript is auto compiled during run-time In logistic suite mostly used to manipulate labels in triggers and conditional statements

4DScript Syntax 4D Script words have parameters Parameters between ( ) Parameters separated by a comma: “, ” Parameters can be: values strings expressions (4DScript) Strings always between square brackets “ [.. ] ” Comments between { }

4DScript Syntax Quick example setlabel(e1,e2,e3) e1 – Name of the label, a string within [] brackets e2 – Value, number -> plain text or string -> within [] brackets e3 – Reference to location (c,i or reference functions e.g. in(1, c)) setlabel([testlabel], 44, i)

4DScript Syntax Multiple lines and spaces NOT sensitive in 4DScript sensitive label or other naming Lower and/or upper case NOT sensitive in 4DScript sensitive label or other naming All brackets must match! Tip! Use tabs and new line when writing longer functions e.g. do( setlabel([blue], 1,i), setlabel([green], label([blue],i), i), setlabel([red],0,i) ) Instead of writing do(setlabel([blue],1,i),setlabel([green], label([blue],i),i),setlabel([red],0,i))

Atom Labels Also called dynamic database fields To read and write data on specific atoms: strings values Setting labels: setlabel(e1,e2,e3) Sets label e1 (string) of atom e3 (reference) to e2 (string or value) 4DScript “ sddb ” does the same Labels do not need to be declared

Atom Labels Query labels label(e1,e2,{e3}) Returns label e1 of atom e2 e3 is optional: e3=1 then always value is returned e3=2 then always string is returned 4DScript “ ddb ” does the same Name of the label is case sensitive

Atom Referencing About atom referencing In Entry and Exit triggers Direct referencing Relative referencing

About atom referencing Referencing in Taylor ED is like using a pointer You need to reference other atoms to: get information or data from that atom send atoms or messages to other atoms To refer to an atom is in general always relative Relative referencing is used because: it is needed in an object oriented environment !! everything is an atom (model, product, machine…) it is fast

In Entry/Exit Triggers Current “c” & Involved “i” ‘c’ is current atom or the atom where the statement is written on ‘i’ is the involved atom or the atom that triggered an eventhandler i c

Entry/Exit Triggers Example Trigger on Creation in a Source ATOM

Direct Atom Referencing Sometimes Atoms can be referenced directly: library = library atom model = model atom treeatom = currently selected atom in treeview animatom = currently selected atom in 2D animation window atombyname([e1], e2) = atom with name e1 in container e2 atombyID(e1, e2) = atom with ID-number in container e2 (e.g. model) if tables have aliases you can use the table name direct

Relative Atom Referencing All other referencing is relative: start from the atom where statement is written (=c): first(e1) = first atom inside atom e1 last(e1) = last atom inside atom e1 next(e1) = the atom next of atom e1 in same container prev(e1) = the atom previous of atom e1 in same container up(e1) = container of atom e1 in(e1,e2) = atom connected to input channel e1 of atom e2 out(e1,e2) = atom connected to output channel e1 of atom e2 rank(e1,e2) = atom at position e1 in queue of atom e2

Atom Statistics Is available for every atom at any time: age - time from creation or reset content - current number of atoms contained in an atom avgcontent - average number of atoms contained in an atom since reset avgstay - average time (sec.) atoms have stayed in an atom since reset input - the number of atoms which have entered output - the number of atoms which have exited status - the state of an atom (see table of atom T029-Statuslist) entrytime - time (sec.) at which an atom has entered

Empirical Distribution Atom Maximum 50 records per distribution Use an alias name to assign the distribution direct

Table Atom Indirect referencing use: setcell(1,1,123,c) cell(1,1,c) Direct referencing use an alias name has been created eg: times settimes(1,1,123) times(1,1) Column and row 0 are the header columns and rows Index out of range will not give an error message, but results in the return of 0 Tip! If you need to create or use large tables (larger then 100 rows or columns) use local table instead of linking to excel table. This speeds up the simulation.

Conditional Statements if(e1,e2,{e3}) e1 = condition e2 = true logic e3 = false logic, not mandatory => 0 is returned and / or allowed in condition Example: if(comparetext(label([ok],i),[yes]), negexp(10), negexp(50) )

Multiple Statements “DO” - statement do(e1,do(e1..e25),..e25) maximum is 25 parameters Example: do( setlabel([ok],[yes],i), setlabel([time],negexp(60),i) )

4DScript Editor Functionality Auto Brackets Auto Select 4Dscript View Select Word(F2) Previous Word(F3) Next Word(F4) Get Word(F8) Check Syntax(F10) Color View(F11) Tree View(F12) Select All(Ctrl+A) Find Replace Print Save to file Loud from file Tip! Use check syntax (F10 )

Repeat Statements loopuntil(e1,e2,e3) e1 = condition e2 = statements e3 = maximum repetitions use ‘ count ’ for the current number of loops made omitting e3 might result in endless loop

Repeat Statements repeat(e1,e2) e1 = number of repetitions e2 = statements use ‘ count ’ for the current number of loops made repeat( content(c), stopatom(rank(count,c)) )

Statistical distributions Use of statistics: Before simulation: - determine the distributions - goodness of fit During simulation: - random numbers - samples from a distribution After simulation: - analysis of results - reliability

Discrete Distributions A discrete stochastic variable represents a countable number of possible values. One particular value has a chance (greater than zero) of occurring.

Bernoulli distribution Parameters in Taylor ED: - probability in % - result1 - result2 A sample having result1 is equal to probability, result2 has a chance of 100% - probability. Choice between two values: bernoulli(40,6,10)

Empirical distribution Product mix, Route choices, Test passed,.. P(x)Value 15%2 25%7 20%10 35%12 5%30 In Tayor ED you can use an alias name

Continuous Distributions The chance of a sample, according to a certain distribution, results in a value between ‘a’ and ‘b’, is equal to the dark gray area. The chance the sample will result in precisely ‘a’, is equal to zero.

Uniform Distribution Can be used if the information is global uniform(e1,e2)

Normal Distribution Fluctuations around an average normal(e1,e2)

Negative Exponential Distribution To model irregular (arrival) processes negexp(e1)

Lognormal Distribution Asymmetrical “normal” distrubution Repair times and process times lognormal(e1,e2)

More Distributions Continuous: - Beta - Gamma - Triangular - Weibull Discrete: - Poisson - Binomial - Geometric

Typical Waiting Times Waiting is : Time consuming Boring Expensive Bottle neck process: Waiting Time 90% Process Time 10%

Influence Factors Fluctuations in arrivals Fluctuations in process times Priority rules Blocking Failures Availability Utilization

Theoretic Waiting Times Consider arrivals to be negative exponential distributed Define variance coefficient of processes: CV = standard deviation ÷ mean Two extremities: CV=0, constant distribution CV=1, chaos, negative exponential distribution

Average waiting time (Pollaczek-Kyntchin) : Waiting Time versus Utilization

Shortening Waiting Times Lower utilization More regular processes Parallel processes Controlled processing Less failures Smaller batches

Waiting Waiting problems are actually waiting distributing problems. Balance between: - waiting of workstation - waiting of products - waiting of customers

Result Analysis Shit in is Shit out Simulating more or longer, results in more reliable results

Analysis of Terminating Systems N different simulation runs => n independent values (new random seeds) Calculate confidence interval Ask yourself if you have to simulate a system like a terminating system. It’s sometimes better to simulate a worst case scenario of the system.

Analysis of Steady State Systems When has a steady state been reached ? How long is the warm up period ? Two formal methods: N different runs One long run divided into sub-runs

Warm-up Period At the beginning of a simulation the system is normally empty. The production per hour will have the characteristics of this graph.

N Different Runs Determine the warm up period. Simulate N different runs; every time the data from the warm- up period is disregarded. The length of a run and the number of runs in total determine the confidence interval. If the warm-up period is long, the sub-run method is preferred.

Final Tip! Shit in is Shit out! - the result of the simulation is not better then the data you base your simulation on Test in small scale - When testing out new functions and atoms construct small systems and test the function there instead of import the new function or atom directly in to your “big” simulation system Use understandable names on atoms, labels etc. Use the help files or the 4DSkript Command list to understand functions and find new functions A simulation is a perfect model of the world, the world is not perfect!

That is all! Contact information: Kristofer Elo