You are on page 1of 30
COMPUTER SIMULATION MS Industrial Engineering and Management — 3" SEMESTER (2019) IQTM, University of the Punjab, Lahore. Instructor: Asim Amjad asim.iqtm@pu.edu.pk 1.1 The Story - Electronic Assembly and Test System Part A Prep Avrivale Sealer TATA A Pane Prep Pate + Produce two different sealed elect. units (A, B) Y Pan L_] wein2553) TARGET) : Rework Shipped * Arriving parts: cast metal cases machined to accept the electronic parts + Part A, Part B - separate prep areas + Both go to Sealer for assembly, testing - then to Shipping (out) if OK, or else to Rework + Rework - Salvaged (and Shipped), or Scrapped PartA + Interarrivals: expo (5) minutes + From arrival point, proceed immediately to Part A Prep area + Process = (machine + deburr + clean) ~ tria (1,4,8) minutes + Go immediately to Sealer + Process = (assemble + test) ~ tria (1,3,4) min. + 91% pass, go to Shipped; Else go to Rework + Rework: (re-process + testing) ~ expo (45) + 80% pass, go to Salvaged; Else go to Scrapped Part B Interarrivals: batches of 4, expo (30) min. Upon arrival, batch separates into 4 individual parts From arrival point, proceed immediately to Part B Prep area + Process = (machine + deburr +clean) ~ tria (3,5,10) Go to Sealer + Process = (assemble + test) ~ weib (2.5, 5.3) min. , different from Part A, though at same station + 91% pass, go to Shipped; Else go to Rework Rework: (re-process + test) = expo (45) min. + 80% pass, go to Salvaged; Else go to Scrapped Run Conditions, Output + Start empty & idle, run for four 8-hour shifts (1,920 minutes) * Collect statistics for each work area on + Resource utilization + Number in queue + Time in queue + For each exit point (Shipped, Salvaged, Scrapped), collect total time in system (a.k.a. cycle time) The Story (Cont'd) + How to handle different A and B service times at Sealer? + Trick 1: Pre-assign the service times as an attribute (Sealer Time) in an Assign module immediately after each customer arrives. Use that attribute regardless of being a Type A or B part. * Trick 2: while we're at it, use the Assign to store each customer's arrival time as an attribute. Use the Arena variable TNOW to do so. + Record departure time just before parts get Dispose’d, This will allow us to get average cycle time (depart - arrival times) for any of the 3 types of parts (pass on first try, pass on second, fail both). Let’s Get Logical + Is there another way to model the process time at the Sealer without having to assign a Sealer Time attribute for A’s & B’s? + Yes! It involves a little work, but it’s nice to known. + Note that the entity types (Part A and Part B) are assigned in the respective Create modules. + Instead of assigning the Sealer Time as an attribute in the Assign module, we can just wait until the Sealer Process module and use the following logical expression, where (x==y) = 1 if x=y, and 0 otherwise. (see why?) ((Entity:Type==Part A)*TRIA(1,3,4) + (Entity. Type==Part B)*WEIB(2.5,5.3)) Demo Time! Wen aT = Panane “fan ae ees |} | Bcndclis> fa. | | canna nana ioser Ea] i a a Ss Cancel | __Heb ox Cred] [Fee re <) [Pan g [sgn Pa ssl aed ave ine ¥ rae fas Son Tae ae ae Se jo ~ Edt. es a le [ii (oo ] Exp ead Ge Oe] ee) (ae None Tw Te: [Preoa Process ©] [Banded my ©] (Siang =] los peter Pity [SeseOewhaese [Mest =] ©| Meanie] — Resosee Pepat 1a a ia (a) [eee] [ate | Dale Toe Uae ‘csi De Tp Une ‘Abosion [esos a | Make added) Teongar <) Mees | Waki Ades = a TE (Sef id = ve ae oi or are — wa a. oa = rae a (cc Repat States ca Fe Sawn semi Poco oe O00, ss Oe) a) xe ie Pe “SnD | a ol ee Case Ome Teco (Eewein 9 ina © tena [a Corse = ie ie n a (afm Bie ©] pe shagsdPas ~~] foe os =o ache ~ [asive Time | C)Recerd into Set Thane foodsueparon ——~ ee eae ee [oe taal] (ne a cE = ie FcadSoupeiPs ——~] SR S] [calttepae ——~) ea Aabscin iiNand [amve Time ES Cece ino Set [Avive Time g 1 Recerd into Set Tay Name: Taly Name PcadSoaeiPas Reheat ——v OK | |_Cancal a [0K Cancel | |Help Demo Time! =e - = lial ee Name in Another Method _ be«Fe: <] Stns E Loge ce Bes aes fran 7 osx + Setup > Replication Parameters + Change Replication Length to 10 (of these) days Fun Speed nCartel_ Repent Pet Porat Recleatn Pacers fray cet rns Vas Degree Nabe d Resto ee sacs Stem St Ot aT C tn my BOE & Waren Foc: To ha: i ) ( i Oe) (ewes) (a Hee Schedules + Vary Capacity (number of units) of a resource over time + In Resource Data module (spreadsheet view) + For Rework Resource, change Type from Fixed Capacity to Based on Schedule + Two new columns ~ Schedule Name and Schedule Rule + Type in a schedule name (Rework Schedule) + Select a Schedule Rule - details of capacity decrease if the Resource is allocated to an entity Schedules + Ignore - Capacity goes down immediately for stat collection, but work goes on until finishes ... “break” could be shorter or gone + Wait - Capacity decrease waits until entity releases Resource, and “break” will be full but maybe start/end late + Preempt - Processing is interrupted, resumed at end of “break” Schade Setaaded SrearSen Brena Preempt —— 11 T— Time Line | |New Break End | [atts Wait —— T— Tite | Ignore. —— tH tinetine 12 noon jcapacty | Scneaute name | Scnecue ut | Busy / our [ate cur | Pers T oe a a Schedules E ° —a—l TT EEE Fevonsowoe won [ota a8 (my cece bw aceon aso ow OK | | Gent) [oe 2 12000-14000 Casey 0 Resource Failures Usually used to model unplanned, random downtimes Can start definition in Resource or Failure module (Advanced Process panel) ... we'll start in Failure Attach Advanced Process panel if needed, single-click on Failure, get spreadsheet view To create new Failure, double-click - add new row Name the Failure Type - Time-based, Count-based (we'll do Time) Specify Up, Down Time, with Units Resource Failures Name Type [Uptime Tene Unts | own Tine ‘Down Tie Unts [Uptime inthis State oly Tp _ | Sealer Fatare — Tme —— exPOC120) Tinutes _ EXPOC4). Minutes ‘Double-cick hee to add a new row. Failure Name | Failure Rue] 7 | Seater Faure wav ‘Double-cek hereto add 8 new row Type [18 Hour | Peruse | Stateset Name | Fates | Repor Statstes [Fued Capacty 00 0000 rows |TV Fed Capacity oo ‘000 [Brows | TD |Foed Capacity 6 ‘oo 88 rows |i¥ F__Jaased on Seneauie 00 0000 [Brows | Frequencies e-cck ere 8488 NeW row. Categories “Constant or Range] Value] High Value] Category Name] Category Option 7 ]eerstant 7 Tracks Trohde fz Range i ‘Recs breude 3 |aanoe i020 Racks inetd = |Range 30 Racks rele is |Range ow “Fock rege ‘oubie-clok here to a «new row. Name Type Frequency Type | Expression | Colecton Perod | Report Label OutoutFie | Catgores Rework Frequency Vaue Wa\Rework Emre Repleston Rework Queve Sais ca veve Stats Process duewe) Frequencies are Tyee Freaveney Toe | Eeresson [cotectonPeros | Repo Late! output Fe | cata: 7 —|rewon ——— Freaveney TagRewore Ene Repicaion — Rewerk seve Sais Sa seve Sat 2 Sealer inte Freauency Cob sik here to adds new row uve) Seater nie Renication [Benes] Ore 1.3 Enhancing the Animation EB File Exit |View Tooke Arrange Object RO Da || HfZeomin = {Zoom Out - BY IB zoom Factor | \404 | Project Bar Se ae | 2 Bas “S favanced taker(a] Name [iptadsven Assign Name To Cunen View ok He ER? pee 1.3 Enhancing the Animation + Changing Animation Queues + Changing the Entity Pictures + Adding Resource Pictures * Adding Variables and Plots 0 Spat ° g | 0 sean pio 0 Shoes z Mma. ° gsc | & 8 Q Shipped Sia 1.4 The Electronic Assembly and Test System with Part Transfers 1.4 The Electronic Assembly and Test System with Part Transfers es ze» “om (eN = 9 Sshioped init 0 Sail | 1.4 The Electronic Assembly and Test System with Part Transfers ° By on ees beat 7 ie | ® et Qs | 5 Salvaged [pevscceeeoesed | | i a| Any Questions!

You might also like