Evaluation of assembly routines with multitasking execution in a physical robotic cell by Sergio San Martin A thesis submitted in partial fulfillment of the requirements for the degree of Master of Science in Industrial and Management Engineering Montana State University © Copyright by Sergio San Martin (1989) Abstract: This research covered the development of multitasking execution programs and evaluation of twelve assembly sequences, in terms of efficiency and effectiveness, applied to a robotic cell under two software control methods. The assembly sequences were defined via analytical methods and verified later with a physical simu I at ion. The analytical methods used to define the sequences were the SPT rule, the LPT rule and the Branch and Bound algorithm. The software control methods were a single task execution program, and a multitask execution program. The single task execution programs performed all the activities in a sequencial mode. The multitask execution program allowed two activities to run simultaneously. The physical simulation was performed in a robotic cell containing two TeachMover robot arms, a central assembly area, and two bin cells built with Fischertechnik components. The part assembled was a representation of a circuit board with four microchips made of machinable wax. The control software was coded using ARMBASIC for the robot arms and TurboBASIC for the main program. The analytical results showed that using a single robot, the sequence with the best completion time was generated with the Branch and Bound algorithm. Also, this result was verified with the physical simulation that generated the best completion time using the Branch and Bound algorithm. Using two robot arms, the analytical results showed that the Branch and Bound algorithm under a multitask execution mode generated the best assembly sequence. In this case, the physical simulation showed different results. The best sequence found with the physical simulation was an adjusted sequence, running under a multitask execution mode, that removed the physical conflicts to avoid collisions in the assembly area. The physical interference could not be observed by the analytical methods. Therefore, the use of physical simulation to evaluate robotic motions is recommended. E v a lu a tio n w ith o f Assembly R o u tin e s M u ltita s k in g in a P h ysi c a I Execu tio n R o b o t i c Ce I I by S e rg io San M a r t i n A t h e s i s su b m itte d in p a r t i a l f u l f i l l m e n t o f th e requirem ents f o r th e degree of M a s t e r . o f S cience ih In d u s tria l a nd Management E n g i n e e r i n g MONTANA STATE UN IVERSITY Bo z em an , M on ta na March 19 8 9 . 0 COPYRIGHT by S e r g i o San M a r t i n 1989 Al I R i g h t s Reserved APPROVAL o f a th esis s u b m i t t e d by S e r g i o San M a r t i n T h i s t h e s i s has be en r e a d by e a c h member o f t h e t h e s i s c o m m i t t e e and has be en f o u n d t o be s a t i s f a c t o r y r e g a r d i n g con ten t, E n g lis h usage, fo rm at, c ita tio n s , b ib lio g ra p h ic s t y l e , and c o n s i s t e n c y , and i s r e a d y f o r s u b m i s s i o n t o t h e C o lle g e o f Graduate S tu d ie s . Date C h airperson, Approved f o r Date M ajor Departm ent H e ad , Approved f o r Date the the G ra d u a te Committee M ajo r Departm ent C o lle g e o f Graduate S tu d ie s Graduate Dean STATEMENT OF PERMISSION TO USE In p r e s e n t i n g requirem ents th is th esis a m aster's fo r U n iv e rs ity , I a v a ila b le borrowers to q u o tatio n s agree from perm ission, in p a r t i a l that th is the under th e s is p rovided t h a t degree at of o f the M o n t an a lib ra ry ru le s are fu lfillm e n t s h a ll the State make lib ra ry . a llo w a b le w ith o u t it B rie f sp ecial a c c u r a t e acknowledgment o f so u rc e is made. s Perm ission of th is th e s is for ex te n s iv e may be g r a n t e d his absence, by t h e of e ith e r, the s c h o la rly th is my w r i t t e n for 2 / ? p erm ission. 3 /f W L ib ra rie s use gain from o r re p ro d u c tio n ^ b y my m a j o r of Any c o p y i n g o r fin a n c ia l S ignature D a te Dean o f proposed purposes. th e s is quo tatio n sh a ll professor, when, the in the m a te ria l use o f the or in opinion is m ateria l for in n o t be a l l o w e d w i t h o u t IV TABLE OF CONTENTS Page 1. INTRODUCTION 2. REVIEW OF RELEVANT LITERATURE 3. ............................................................................................ I 4 R o b o tic Assembly O p e r a tio n s F o rm u latio n o f t h e Assembly P la n Problem B r a n c h a nd Bound A p p r o a c h .......................................... .... M u l t i t a s k R e a l - T i m e P r o g ra m m i n g ..................................... R e a I Ti m e ............................................................................................ M u l t i t a s k i n g .................................................................................... T a s k S t a t e s ...................................................................................... P r i o r i t y C o n t r o l P r o g r a m ..................................................... S c h e d u l e r P r o g r a m ....................................................................... R e a l - T i m e M acr o Commands ..................................................... M i c r o b o t T e a c h M o v e r .................................................................... S c h e d u l i n g R u l e s .............................................. S h o r t e s t P r o c e s s i n g T i m e ..................................................... L o n g e s t P r o c e s s i n g Time ....................................................... 20 21 22 23 24 METHOD OF ANALYSIS ^OvD(-or\joovDkD-fc>. ............................................... ........................ '____ 25 D e s c r ip tio n o f th e R o botic C e ll A s s e m b l y O p e r a t i o n s .......................... A s s e m b l y S e q u e n c e s .......................... A s s e m b l y S c h e d u l i n g ........... M u l t i t a s k i n g P r o g r a m ........................ P e r f o r m a n c e C r i t e r i a ........................ 25 28 28 38 39 43 s 4. 5. DATA COLLECTION AND A N A L Y S I S ..............,................................... 44 A n a l y t i c a l R e s u l t s ....................................................................... P h y s i c a l S i m u l a t i o n R e s u l t s ............................................... 44 50 SUMMARY AND CONCLUSIONS 63 V TABLE OF CONTENTS REFERENCES CITED APPENDICES (C ontinued) ............................................................................................ 66 ................ ................. ■......................................; ............................... 69 A p p e n d i x A: B r a n c h and Bound T r e e s S i n g l e Case A p p e n d i x B : B r a n c h and Bound T r e e s M u l t i t a s k i n g .................................. A p p e n d i x C : Comp I e t i on T i me f o r S i n g l e Ro b o t T r e e s .................................................. : ...................................... Append i x D : Comp I e t i on T i me f o r Doub.l e Ro bo t T r e e s ............................................................................................ A p p e n d i x E : S o u r c e Code f o r P ro g ra m s " U L L " , "DLL I " , " D L L " , "DLL I " ...................................................... A p p e n d i x F : S o u r c e Code f o r P r o g ra m " T E S I N l " . . . 70 75 84 89 98 103 vi L I S T OF TABLES Tab I e Page 1. A s s e m b l y M eth ods 2. T ra v e lin g 3. ............................... Rob ot A and Robot B .................. 35 A s s e m b l y Se q u e n c e s ......................................................................... 44 4. A n a ly tic a l ........................................................................ 45 5. Perform ance o f t h e ......................................................... 48 6. Physical 7. Number o f P h y s i c a l 8. 9. Ti m e s f o r 30 R esults Rules S im u la tio n R esults ................................................... 53 .................................. ............. 56 A n a ly tic a l R e s u lts vs. Physical S im u la tio n R e s u I t s ........................................................................................... .. . 60 Summary o f t h e .............................................. 62 C o n flic ts b e s t sequences 10. C o m p l e t i o n Ti m e f o r Branches I and 2 - Ro bo t B . 85 11. C o m p l e t i o n T im e f o r . Branches 3 and 4 - Ro bo t B . 86 12. C o m p l e t i o n Ti m e f o r Branches I and 2 - Ro b o t A . 87 13. C o m p le tio n Time f o r Branches 3 and 4 - Ro bo t A . 88 14. Com pletion Ti m e f o r P a i r (1 ,2 ) M u ltita s k in g .... 90 15. Com pletion T im e f o r P a i r (1 ,3 ) M u ltita s k in g .... 91 16. Com pletion T im e f o r P a i r (1 ,4 ) M u ltita s k in g .... 92 17. Com pletion T im e f o r P a i r (1 ,5 ) M u ltita s k in g .... 93 18. Com pletion Ti m e f o r P a i r (2 ,1 ) M u ltita s k in g .... 94 19. C o m pletion T im e f o r P a i r (3 ,1 ) M u ltita s k in g .... 95 20. C o m pletion T im e f o r P a i r (4 ,1 ) M u ltita s k in g .... 96 L I S T OF TABLES 21. C o m pletion T im e f o r P a ir (C ontinued) (5 ,1 ) M u ltita s k in g V I f I L I S T OF FIGURES F ig u re Page 1. A s s e m b l y Modes by P r o d u c t o r 2. Memory Map f o r 3. Task S t a t e s 4. S in g le 5. M u ltita s k 6. Layout o f th e R o botic C e ll 7. Layout o f th e C irc u it Board 8. O p eratio n s 9. General M u ltita s k in g and T r a n s i t i o n Task O p e r a t i n g O p eratin g Paths ............. 26 .......................................................... ................................................................................. for Robot A ..................... 11 . General B r a n c h a nd Bound T r e e 12 . Program E x e c u t in g 13. M u ltita s k 14. 18. 17 18 Tree f o r 17. 16 ......................................... B r a n c h and Bound 16. 14 ............................ 10. 15. ... 8 ....................................................... B r a n c h and Bound T r e e M u ltita s k ....................... R eal-Tim eO p e ra tio n Sy s te m Sy st e m Se q u e n c e Model V a r i e t y Se q u e n c e C h i p #1 Ro bo t A . . . . . . . ........................ 27 31 33 34 37 ............................................................ 40 ......................................................... 41 A n a l y t i c a l C o m p l e t i o n T im e f o r Ro bo t A w i t h t h e B r a n c h a nd Bound A l g o r i t h m .................................................... Al C o m p l e t i o n t i m e u s i n g R o b o t A a nd Robot B u n d e r M u l t i t a s k E x e c u t i o n w / a B r a n c h and Bound A l g o r i t h m ................................................................................................ 49 P h y s i c a l P a t h s f o l l o w e d by R o b o t A and R o b o t B u n d e r t h e B r a n c h a nd Bound s o l u t i o n ............................. 55 P h y s i c a l P a t h s f o l l o w e d b y R o b o t A and R o b o t B u n d e r t h e LPT R u l e s o l u t i o n ................................................. 57 P h y s i c a l P a t h s f o l l o w e d by R o b o t A and R o b o t B u n d e r an A d j u s t e d s e q u e n c e .................................................... 59 E xecu tiv e Program ix L I S T OF FIGURES (Continued) 19. Branch and Bound T r e e fo r C hip #2 Ro bo t A .................. 71 20. Branch and Bound T r e e f o r C hip #3 Rob ot A .................. 72 21. Branch and Bound T r e e Chip #4 Ro bo t A ................. 73 22. General B r a n c h and Bound T r e e Ro bo t B .................. 74 23. M u ltita s k .24. M u ltita s k for fo r B. and B. Tree f o r p a i r 1,2 ............................. 76 B. and B . Tree f o r p a i r 1,3 ............................. 77 25. M u ltita s k B. and B. Tree f o r p a i r 1,4 ..................... 78 26. M u ltita s k B. and B . Tree f o r p a i r 1,5 ............................. 79 27. M u ltita s k B. and B. Tree f o r p a i r 2,1 ............................ 80 28. M u ltita s k B. and B. Tree fo r p a i r 3,1 ............................. . 8 1 29. M u ltita s k B . and B . T r e e f o r p a ir 4,1 ................ .. .. 82 30. M u ltita s k B. p a ir 5,1 ............................. 83 31. Source co de f o r p r o g r a m "ULL" ................................................... 99 32. Source co de f o r p r o g r a m "ULL I " .............................................. 100 33. Source code f o r p r o g r a m "DLL" ................................................ 101 34. Source co de f o r p r o g r a m "DLL I " .............................................. 102 35. source code f o r program "TESIN1" and B. Tree f o r ........................................ 104 X ABSTRACT This research covered the developm ent of m u l t i t a s k i n g e x e c u t i o n p r o g r a m s a nd e v a l u a t i o n o f t w e l v e assem bly sequences, in term s of e ffic ie n c y and e f f e c t i v e n e s s , a p p l i e d t o a r o b o t i c c e l l under two s o f t w a r e c o n tro l m ethods. The a s s e m b l y s e q u e n c e s w e r e d e f i n e d v i a a n a ly tic a l m et ho ds an d v e rifie d la te r w ith a physical s i mu I a t i o n . The a n a l y t i c a l m et ho ds u se d t o d e f i n e t h e seq ue nc e s w e r e t h e SPT r u l e , t h e LPT r u l e a nd t h e B r a n c h and Bound alg o rith m . The s o f t w a r e c o n t r o l m et ho ds w e r e a s i n g l e t a s k e x e c u t i o n p r o g r a m , and a m u l t i t a s k e x e c u t i o n p r o g r a m . The s i n g l e t a s k e x e c u t i o n programs p e rfo rm e d a l l t h e a c t i v i t i e s in a s e q u e n c ia l mode. The m u l t i t a s k e x e c u t i o n program a llo w e d two a c t i v i t i e s t o run s i m u lt a n e o u s l y . The p h y s i c a l s i m u l a t i o n was p e r f o r m e d i n a r o b o t i c c e ll c o n tain in g two TeachMover robot arms, a cen tral a s s e m b l y a r e a , an d t w o b i n c e l l s b u i l t w i t h F i s c h e r t e c h n i k components. The p a r t a s s e m b l e d was a r e p r e s e n t a t i o n o f a c i r c u i t b o a r d w i t h f o u r m i c r o c h i p s made o f m a c h i n a b l e wax. the The c o n t r o l r o b o t arms a nd s o f t w a r e was c od ed u s i n g ARMBASI C f o r TurboBASI C f o r t h e main program . The a n a l y t i c a l r e s u l t s showed t h a t u s i n g a s i n g l e robot, the sequence w it h the best com pletion t i m e was g e n e r a t e d w i t h t h e B r a n c h and Bound a l g o r i t h m . A lso, t h is re s u lt was v e rifie d w ith the physical sim u la tio n that g e n e r a t e d t h e b e s t c o m p l e t i o n t i m e u s i n g t h e B ra n ch and Bound a l g o r i t h m . U s i n g t w o r o b o t a r m s , t h e a n a l y t i c a l r e s u l t s showed that the B r a n c h a nd Bound a l g o r i t h m under a m u ltita s k e x e c u t i o n mode g e n e r a t e d t h e b e s t a s s e m b l y s e q u e n c e . In th is case, the p h y sic al s im u la tio n showed d iffe re n t re s u lts . The best sequence found w ith the physical s im u la tio n was an ad justed sequence, running under, a m u ltita s k exe cu tio n mode, that r em ove d the physical c o n f l ic t s t o avo id c o ll is i o n s in t h e assem bly a r e a . The p h y sic al in te rfe re n c e could not be observed by the a n a ly tic a l methods. T h e refo re, the us e of physical s i m u l a t i o n t o e v a l u a t e r o b o t i c m o t i o n s i s rec om m en de d. I CHAPTER I INTRODUCTION In d u s tria l p ieces of robot hardware hardware fix tu re s , robots mus t be the e ffic ie n t layout Assembly in d u s tria l and d iffe re n t is one c a p a b ility , fle x ib ility a robot The con trol types in to in of a the p a lle ts , s in g le c e ll w or k be several These other machine some a p p l i c a t i o n s the grow ing What makes is in several c e ll. o rg an ized a v a rie ty are It is in to an work of among is d e fin e d in purpose of schemes for c o n tro llin g th is a ab le mu st in the execute accommodate to u tiliz e be solved. a s s e m b la b iIity , these fo r problem s. and The as a d e g re e o f v a r i a t i o n assem bly sequences that a nd p r o g r a m m i n g . . research ro b o tic to to be problems be a s s e m b l e d and can a c c e p t cyc le To areas useful c a p a b ility fle x ib ility , included robots to the a p p lic a tio n robots th e ir c o n fig u ra tio n s . fe a s ib ility , of robot. In on. involve [21]. assem bly p ro d u c ib iIity the so equipm ent v a ria tio n s Technological to conveyers, a p p lic a tio n s pro grammed u s u a lly include ro b o tic s . assem bly part ad d itio n in te g ra te d im portant in in c o m po ne nt s to o ls , th is a p p lic a tio n s was to assem bly introd uce c e ll good through 2 p h y sic al were s im u la tio n . d efin ed assem bly c e ll by e ffic ie n t ro u tin e s . u tiliz a tio n other flo w a nd the sch eduling the cell seek f o r lo n g es t processing one Z e n ith the b as ic in which This c e ll, two area, arms c irc u it in o f the In was the e ffic ie n c y two were w ith tree of by the by tim e and us ed to produ ction processing tim e (SPT) Furtherm ore, the were c o n s id e re d id e n tic a l con trol to the located su ited on co m po nen ts at to the work cell enlarged tin y sides perform each c e lls To and construct were was some p art. a used the of the as cell c e ll. processing The or product re p re s e n ta tio n The s i z e s because of a of a o f th e board low re s o lu tio n w orkpieces. research, . the and t h e system. fo u r m ic ro ch ip s. were bin TeachMover The ^cel I was an a s s e m b l y r o b o t ro b o tic TeachMover f o r th is to were board w ith m icro chips its cell determ in ed com pletion (LPT). F is c h e rte c h n ik operatio n s assem bled was c o n s is t e d o f two t a b l e - t o p blocks. arrangem ent assem bly and cell m icrocom puter b u ild in g determ ined along tim e ro b o tic com binations c rite ria shortest a nd the sequence. assem bly e n tire the perform ances such as t h e The r o b o t i c arms, such a s ru le s a better was e ffe ctive n ess perform ance B r a n c h a nd Bound a l g o r i t h m fo r e ffe c tiv e e ffic ie n c y the The schemes and c rite ria tim e . e v a lu a te a nd The perform ance mean Th e s e a n a ly tic a l e ffe ctive n ess from t h e re s u lts SPT r u l e , of the the LPT 3 ru le , and assem bly re s u lts of th is the Branch ro u tin e s under th e which d ire c tly a p p lie d several co m pa re d was to occurred This to to the c e ll. regarding a for the a ll a v a rie ty of the physical re s u lts comparison suggested sim u la tio n p o s sib le ro b o tic of The o b j e c t i v e a n a ly tic a l This v a rie ty physical c o n d itio n s . better also from the observe when research selected Bound a l g o r i t h m same o p e r a t i n g sug gestio ns d esig n s. ro u tin e s were comparison problems and were resu lted assem bly in cell best assem bly assem bly ro u tin es (sequences). F in a lly , adapted for perform ance a m u ltita s k exe cu tio n TeachMover arms w ith m et hod th is o t h e r assem bly methods. in th is was programming research com pa red metho d was a nd to the that cell w ith 4 CHAPTER 2 REVIEW OF RELEVANT LITERATURE /r Robotic The use of robots a p p lic a tio n s . assem bly The the Assemb I v O p e r a t I o n s One of in in d u stry the best has a examples great is v a rie ty found in of the in d u stry. use of robots to perform s u b j e c t o f much r e s e a r c h rec e n tly has it b ee n eco n o m ic ally v ia b le environm en ts. As w i t h real in d u stry w orld research of into d is c o v e rie s ' shown to t h e mid to w ith in in lag s, f a r be be tasks behind both and m anufacturing te c h n o lo g ies, the fro n tie rs because proved been but o n ly te c h n ic a lly other assem bly, has 1 9 7 0 's , general advances ro b o tized ne ed since assem bly and the adapted the of "new to in d u s try . Robots have m anipulators that have w ith high of v irtu a lly levels communicate w it h environm en ts. g ra d u a lly other The m icrocom puters of zero machines p erm itted p rim itiv e to in te llig e n c e ' an d and from in te llig e n c e , ' pseudo developm ent have evo lve d react to w idespread the devices that changing can w or k a v a ila b ility developm ent of very 5 s o p h is tic a te d B efore ensure robots the that an d s e n s i n g in s ta lla tio n the assem bly c a p a b ilitie s , c o n flic ts the con trol a nd o th e rw is e being robots, tasks fin a n c ia l product of systems. are it w ill assem bled im portant com patible fa ilu re s loss is su ch as re s u lt. must w ith the tech n ical In be to a d d itio n , design ed for autom ati on. An a u t o m a t e d provided w ith perform ed I eve Is use s p e c ific a llo w s that m a te ria ls at both a ll a c tiv itie s be a nd th at be p h ysical assem bly Th e [2] an d assem ble produ cts, of p o s itio n . and robot to fle x ib ility re p e a ta b ility presented In they fu n ctio n al In tasks lim ite d Thus and d e p e n d on t h e to of repeated in sert d iscrete sequences and by re s p e c tiv e perform ance p lanning robot picked th e ir by robots then assem bly the the s ta tio n s , bins attached only a freedom . fo r s e le c tiv e ly include o p e ra tio n s. system w i l l from are or is assem bly parts hardware be c u s t o m i z e d t o concepts programmable in serted Assembly s p e c ific parts an d and d e g r e e s o f ro b o tic c om po ne nt them. p ic k -m o v e -in s e rt assem bly ro b o t's com po nen t arms softw are ' standard' systems. series ro b o tic a p p ro p ria te a pay lo a d , Drezner and necessary of task. s ize , a req u ires [11]. accessories pick the s a tis fa c to rily The its process of of the control of acco rd in g to t h e assem bly sequences. B asic types of assem bly s y s te m s vary 6 th e ir degrees ty p ic a l of autom atio n. assem bly s y s te m s w ith Boothroyd of part three [12] m ai n tran sfer Manual, e i t h e r feeders. 2) Special or w ith 3) P r o g r a m m a b le a s s e m b l y w i t h w or k done e i t h e r o r on a m o vi ng c o n v e y o r . d ev ice s o r w ith w ith on a f i x t u r e include the fo llo w in g 1) 2) One o r more r o b o t a r m s . Parts and produ cts, in p u t/o u tp u t m e c h a n is m , conveyor. P a rts s to ra g e d e v ic e s , eg. f e e d e r s , b i n s , p a l l e t s . S t a t i o n a r y p e r i p h e r a l m achines, eg. p r e s s . Assembly t o o l s , e g . powered screw d r i v e r . 3) 4) 5) Drezner [2] id e n tifie d p lanning that systems. He c a l l e d He a l s o problem the of co m po nen ts w ith m otions p rio r to the id e n tific a tio n 1) 2) to to those plan the o b je c tiv e [2 ]. The o f the parts to problem s. fo llo w in g According p ick, d esign and problems. as assem bly optim ize and assem bly defin ed arrange was co n s is te d place to the cell and performed in the item s: and q u a n t i t i e s The p h y s i c a l p l a c e m e n t and assembled p r o d u c t . was eg. desig n in g assem bly p la n assem bly plan of programmable problem p h y s ic a lly assem bly The s p e c i f i c the product. the problems s o lu tio n s how problems w ith in these assem bly in s e rt o f components: the occurred o ffe re d Drezner, classe s part indexing t r a n s f e r A program m able ass em bly system would t y p i c a l l y fiv e s ix classes: 1) purpose a u to m a tic , e i t h e r free tra n s fe r o f p arts. d efined lo c a tio n to of be a s s e m b l e d e a c h p a r t on in to the 7 The assem bly three 1) 2) 3) plan problem was dependent upon c h a ra c te ris tic s : The a s s e m b l y mode i n t e r m s o f p r o d u c t v a r i e t y . The v a r i e t y a nd q u a n t i t y o f a s s e m b l y p a r t s . The s e q u e n c e o f a s s e m b l y i f a n y i s g i v e n . W ith regard to the. mode programmable ass e m b ly c e l l s modes: s in g le product. product, The operations s in g le fo r changes were to b a s ic a l Iy lik e ly . tim e . the o p eratio n s b as ic product The changeable for m u ltip le fo r the were v a rie ty q u a n tity of im p ortan t Drezner [2] lo catio n of assem bly as Figure a n d model of assem bly separated factors also c ritic a l b asic an d m u ltip le com prised the assem bly product product several product mode d esign refereed p r o d u c t s , and m o d e l s . or p r o d u c t a t a same model com prised assem blies of the several same p e r i o d . parts parts of d iffe re n t composed planning of assem bly component and t h e o p t i m a l to shows t h e v a rie ty three one types a nd assem bly o p eratio n s. d e s c rib e d th e d e te rm in a tio n o f th e optim al ea c h c e l l I in one o f where in te rleav ed p r o d u c t s an d m o d e l s d u r i n g t h e The mode o p e ra tio n , product h o w e v e r , o p e r a t e d t h e model F in a lly , assem bly in changeable t h e assem bly o p e r a t i o n s The c e l l s , assem bly operated product o ne of [2]. sequence o f m in im iz e th e assem bly p la n d iffe re n t problem . a s s e m b l y modes b y p r o d u c t 8 Required Assembly,1 C e ll F l e x i b i l i t y j Example I Mass Q u a n titie s Automatic Assy. +— Io r long term (non-program) I One | |p ro d u c ti on - 1Basic | I Product— | !Model | I I Product Chan+— Iges a re I i k e Hy M ajor Cel I com­ ponents a re programmable Car body spot welding As above, and mi­ nor cel I compo­ n e n ts. May be ex­ changed each tim e model changes. Gear Box v a r ie ty (mass q tys) Product Model V a r ie ty (Several +— I Products I !One Model I ,'at a Time EIe c t r ic Motors !S everal | - } Product— | !Models | I {Simultaneous +— I ModeI !Mix F igure I. Ce11 has a 11 re­ q u ire d assembly c a p a b ilit ie s a t a l I tim es and is programmable A s s e m b l y Modes b y P r o d u c t o r Model V a riety 9 F o rm u Iatio n o f t h e Assembly P la n The sim ple when t h e number parts the in assem bly o f bin assem bly made by a r o b o t w i t h P r o b Iem plan cel Is problem "n" place. is The ca n equal to ta l be to fo rm u lated the number o f of movements tim e an e m pt y g r i p p e r on t h e way b a c k is t o be m i n i m i z e d . One sim ple of the assem bly approach. solving b ee n o p tim iza tio n plan This the u se d tra v e lin g very problem approach tra v e lin g is was the of a in for so lvin g Branch a nd o rig in a l Iy salesman p ro b le m . e x te n s iv e ly d istan ce techniques order salesman to a nd Bound develo ped for approach has This m in im ize was the the adapted fo r to ta l th is research. B r a n c h a nd Bound A p p r o a c h This salesman of "n" an d d istance so tra v e le d (or n w ith to to were n . The o b j e c t presented in which a in a corresponds t o etc. was as salesman a to ta l th e tim e given c o n strain ts of th at tim e , lo c a tio n ; another was t o way an d [16]. a m atrix In to co st, the tra v e lin g v is it his m inim izes req u ired to by a m a t r i x fin d or a m us t o n c e a nd o n l y o n c e a nd r e t u r n do lo c a tio n tim e s , [16] (tsp) corresponds c itie s one problem c itie s o rig in , c ity approach point o f the to ta l e tc .). d istan ce ea c h Each between change over from g en e ra l, distan ces , S having a size of n by X having a s ize of n by 10 X 1-k = 0 o r 23 and x ik I I “ v - - * * ri ? k — I p2 , • • • pn p v 2 k — I p2 p • • • pn p m in im ize where S jk = the tr a v e lin g tim e from lo c a tio n i to lo c a tio n k and X 1- k = a d e c i s i o n Up to th is a llo c a tio n however, could variab le p o in t the problem . there return problem For was to rep re s e n tin g a an its the is s im ila r tra v e lin g ad d itio n a l s ta rtin g lo c a tio n to the resource salesman problem , re s tra in t p o in t u n til that a ll n no tour c itie s .h a d been v i s i t e d . M u ltita s k R eal-Tim e Pr o g ra m m i n g ■ R e a I Ti m e The t e r m (and other) re s u lts w orld are "real system s, but demanded by o u tsid e immense, tim e" the covers a shares the d e a d lin es system. fro m m icroseconds t o W right [9] d efin ed real The range common imposed range years tim e wide of of c o m pu te r feature by the tim e that "re a l" scales is [17]. or on lin e as fo llo w s: "An o n - l i n e computer user or process t h a t to user the where in to . . . . . they the or are system a c c e p t s creates process that lo c a te d ". fo llo w in g fiv e it input d i r e c t l y and r e t u r n s req u ires W right output d i r e c t l y it, d ivid ed from t h e regardless o n -lin e of s y s te m s m ajor c a t e g o r ie s : p r o c e s s c o n t r o l systems d a t a a c q u i s i t i o n systems b u s i n e s s - o r i e n t e d i n f o r m a t i o n systems s c i e n t i f i c / e n g i n e e r i n g t i m e s h a r i n g sys te ms re m o te b a tc h systems Al I of these com puter. sm all systems W right sim p!e s t sin g le m onitor the w ith id e n tifie d the fiv e o perating system o perating of s y s te m s a fo r com puters: term in al of work user start set process a in itia liz a tio n program, programs, i s us ed b y o n l y t h e m achines. or This also type allo w s a lte r memory l o a d o r dump p r o g r a m s . th is as w e l l user a nd d isp lay m onito r: and c o n t r o l system th is in te rru p tio n s b r e a k p o i n t s a nd in p u t/o u tp u t its e lf, m onitor: a p p I i c a t i on d e d i c a t e d handles to lo c a tio n s , in te rfa c e handles its own as com m unication between programs and a sim ple I/O subsystem. . system keyboard which m onito r: req u ires m agnetic tapes o r an I/O m onitor some d is c s . plus th is It ro u tin e s is form a of sin g le-u ser bulk includes a l l to a c c e p t and storage o perating such as the f a c i l i t i e s of act on console .12 commands as we I I as the a b iIity to m odify I/O assignm ents dynam ical I y . • background /foreground m o n ito r: ex e c u tiv e th at m onitor and shared or includes also the co n tro ls means t h a t the in t h e operator processing program runs w it h o u t being m ultiprogram m in g fa c ilitie s of ad d itio n a l the w h ile in in t h e e x e c u tiv e : seen, the keyboard a tim e - The term running, by "background", th e screen. th is concurrent program in en viro n m en t. shown for the I/O includes b ac kg ro u n d /fo reg ro u n d c a p a b ility hundred fo re g ro u n d of and a p r o g r a m can be screen, is a dual fa c ilitie s in te rru p t-d riv e n "foreground" . a ll th is a ll m onitor e xe cu tio n of the w ith several jobs. M u ltita s k !n o When once, several it is independent the same independent convenient program. processes to h an dle When a I I computer the (pro cesso r), are each one programs the going are on w ith running re s u lt is at an on c alled m u ltita s k in g . M u ltita s k in g o p e ra tin g task or system , process, com puter. This processor "state " is done v i a whose j o b appear for is t o to tric k one a piece o f softw are be is make ea c h p r o g r a m , running on accom plished task, c alled a nd its by loading own c a lle d separate saving the an state the of 13 another task. o p e ra tin g th ey There system s, p rovide is and p a s s i n g intended for real data tim e on d iffe re n t o p e ra tio n on a set a m u lti-ta s k [14] se g me nt resources the kinds them. O p eratin g tend to of fa c ilitie s syn ch ro n izin g th e ir sys te ms p rovide a ll tasks data, of data. should a task sm allest d e v ice s, CPU, a set a of id e n tic a l ea c h operatin g program the or are Figure d es crib e d or (I/O ways o f o r g a n i z i n g re a l-tim e An a p p l i c a t i o n program tasks, between e ith e r o p e ra tin g W hite d iffe re n t accordin g t o a p p lic a tio n s two m a jo r m u ltita s k in g : tasks. of w id e fa c ilitie s . There a r e fo r range sch eduling actio n s, for vast which d i f f e r for range o f these a task 2 pr ogr ams do es shows a tasks a sin g le memory map system. be d e f i n e d as a in terms lo g ic a lly program memory, to complete which e tc .) of sy s te m m ight be only one i.e . be a I Io catb d . In task a m u ltita s k in g , a c tu a lly e xe cu tin g , at W righ t c o u l d be in: ca n be a given [9] sin g le-p ro cesso r in control of system , the CPU, in s ta n t. estab lish ed exe c u tin g , ready, four states su s pen de d th at a nd the tasks in a c tiv e . Task S ta te s EXECUTING highest (or p rio rity task ru n n in g ): d eterm in ed The by exe cu tin g a CPU t h a t task is is the "ready" J 14 + ............................................................................................................ + I ROM BULK BOOTSTRAP \ PROGRAM AREA \ \ ( I <= N <= 256 ) \ \ \ \ \ FOREGROUND \ \ / / \ I PROGRAM AREA 2 I_________________________________________ I BACKGROUND \ / / \ PROGRAM AREA I / I________________________________________ MEMORY AREAS / / / I I ! / \ I ! / / PROGRAM AREA 0 MEMORY AREAS / / I_________________________________________ I INPUT/OUTPUT SUBSYSTEM I I WITH DEVICE CONTROL BLOCKS I I AND I/O BUFFERS I _____________________________________ I RE - ENTRANT UTILITY AND I I MONITORRESIDENT USER ROUTINE I_________________________________________ I CONFIGURATION TABLES I_________________________________________ ! MULTIPROGRAMMING RESIDENT I MONITOR ■ I _____________________________________ I I I ■ DEDICATED MEMORY LOCATIONS I + ............................................................................................................ + F ig u re 2. M e m o ry M ap fo r M u ltita s k in g R e a l-T im e O p e ra tio n 15 to run. READY th at (or one o r levels ac tiv e more d ic ta te some real task tim e may th ey resid e should event or th is u n til ha v e ro u tin e th e ir p ro b a b ility con trol The t a s k states of the has be en h a l t e d communication from an CPU. u n til exe cu tin g occurs. p o te n tia l Iy (or introduced that it has from th e tasks Every a as one to jobs exe cu tive (or m or e) op e ra tin g 4 and 5 has be e x e c u t e d . a nd program system system , has in F ig u r e its W right a CPU t o them is show a or remov ed for . a ah operatin g own structure. [9] d es crib e d e x e c u tiv e . execute w a itin g operatin g b ee n yet 3. under has hot paths m u ltita skin g allo w s of and runs though (s c h e d u le r), tra n s itio n shown tim e even e ith e r system to be h a n d l e d by t h e Figures memory, assignm ent o p e ra tin g real task, an o p e ra tin g a The o p e ra tin g states ea c h m u ltita skin g output) the environm ent a r e re a l-tim e w h ile main a p p lic a tio n and structure in com pleted m u ltita s k in g system , to qu eu e o f The dorm ant): re s id in g been task in s ta lle d ): (or b lo c k e d ): INACTIVE For tasks that SUSPENDED or for other the The tasks input (or system. comparison between a s i n g l e system and a m u l t i t a s k op e ra tin g system. EXECUTING STATE (ONE TASK ONLY) GAINS SCHEDULER READY STATE TASK TASK (MANY TASKS) WAirwe TASK INACTIVE STATE SUSPENDED STATE TASK KLLED (MANY TASKS) <3 (MANY TASKS) WHLE WAmne F ig u re 3. Task S tates and T ra n s itio n P a th s WRITE READ PRINT CPU ACT. DEVICE ACT. PRINT F ig u re 4. S in g le task O p e ra tin g System READ WRITE PRINT PRINT DEVICE ACT. F ig u re 5. M u ltita s k CPU ACT. O p e ra tin g System 19 In tim e summary, system the b asic c o m po ne nt s of a m u ltita s k re a l­ include: . The o p e r a t i n g s y s t e m , i n c l u d i n g an i n t e r r u p t h a n d l e r o r p rio rity control program, a scheduler, a set of I/O r o u t i n e s , and i n some s y s t e m s , memory a l l o c a t i o n and f i l e h an d lin g ro u tin e s . Each of these concepts is b rie fly d e s c rib e d below . . The u s e r o r a p p l i c a t i o n - o r i e n t e d . S y s te m c a l l s , P rio r itv m ac ro commands. Control The m ai n a ll the batch system system, in p u t/o u tp u t, defin ed , respond whereas to events. a [17] between is in the a series program re a l-tim e of d evices ca n p rio rity p rio rity be d ev ice s ones, emergency a la r m S cheduler The an d w aits p rocessing the for is w ell program must un related is accom plished is through Each r o u t i n e F a c ilitie s by p a rtic u la r, c o n d itio n s Program b as ic in system fre q u e n tly requests in te rru p ted a nd and in te rru p ts so t h a t granted.. batch in itia te s system, random ro u tin e s . hardware p rio ritie s sim ple an d ea c h s t a g e o f d a t a softw are acknowledges the summarized below : The means b y w h i c h t h i s hardware o r system Program d iffe re n c e an d a r e a l - t i m e In tasks. such a s and for must responds t o c o n tro ls CPU requests to in te rn a l serv ic e e x is t to from respond pow erfaiI and by I/O ha v e low h ig h e r- q u ickly to in te rru p ts. [17] fu n c tio n of the scheduler is to determ in e 20 w hich t a s k an d t h e n the (user to ra is e scheduler each t a s k in p rio rity , the the the lin k which "ready" status to any state. In of task of the ready that to m ac ro c a l l or scheduler a c tiv e the is in a c tiv e fo r in p u t fo r or system in te rru p t a llo c a te d state output to of resources h an d lin g ro u tin e in the exe cu tin g know t h e three by ways: and blocks restore the its task data Tasks in know ready to must For re g is te rs , executed. e q u i v a l e n t assem bly from t h e mu st to raised scheduler being uses a d d itio n , queue. in t h e t a s k and being sch eduler task CPU p rio rity In "ready" n e x t-h ig h e r-p rio rity the ro u tin e the the highest state. task the task preprogrammed req u estin g the state a ll has exe cu tin g m ain ta in s a d d itio n , introduced request the m a in ta in scheduler of the to system t a s k ) T h e s e h a v e be en d e f i n e d the status the or it mu st w ords queue. task p rio rity may a system l a n g u a g e m ac r o command i n memory) ready s t a t e ; info rm atio n (CPU) such when a [20] to be ra is e (a a by a u s e r t a s k (d ata), as d e v ic e o ne or by made by causes an in te rru p t. ReaI -Tim e The ro u tin e M acr o Commands system that is m ac r o [17] commands a llo c a te d is a preprogrammed general i n one a d d r e s s o f t h e memory and 21 may be g r o u p e d . • • . . . • • in to eig h t categ o ries: I n p u t / O u t p u t commands T a s k c r e a t i o n a n d d e l e t i o n commands I n t e r t a s k c o m m u n i c a t i o n commands O v e r l a y a nd s p e c i a l q u e u i n g commands C l o c k commands T a s k i d e n t i f i c a t i o n commands T a s k / o p e r a t o r c o m m u n i c a t i o n commands O p e r a t o r / t a s k i n t e r a c t i o n commands MI CROBOT T e a c h M o v e r The TeachMover c o n tro lle d , an u n u s u a l The s ix -jo in te d arm is m echanical arm ca n . be a m icro p ro cesso r- arm d e s i g n e d com bination o f d e x t e r i t y TeachMover fo llo w in g robot and to low c o s t used in provide [15]. e ith e r of""the modes: 1) T e a c h c o n t r o l Mode, in which t h e h a n d -h e ld te a c h c o n t r o l ca n be u se d t o t e a c h , e d i t , and r u n m a n i p u l a t i o n programs. 2 ) S e r i a l I n t e r f a c e Mode, i n w h i c h t h e T e a c h M o v e r arm can be c o n t r o l l e d by a h o s t c o m p u t e r o r a c o m p u t e r t e r m i n a l via one or two b u ilt-in RS-232 asynchronous s e ria l com m unications l i n e s . The teach rear m icroprocessor con trol of the lo cated a t to the sh aft is c a b l e and t h e base. the base six c a lle d jo in ts . The is hous ed D.C. two a hollo w the sh aft base R S -2 3 2 C p ow er the base. connectors are The body s w i v e l s attached jo in t. a r e m ou nt ed on t h e The in The po w er c o r d e x t e n d f r o m t h e re a r o f the base. on gear ass em b lies the card w ires S ix to the stepper re la tiv e base. This motors w ith body and c o n t r o l for the also motors ea c h o f pass from 22 the computer c a rd body. This system. a nd arm forearm by the is to the another hand, w ris t jo in ts to ,a d ire c t the a forearm known c a lle d jo in ts . con trol to the bod y on sh aft also a hollo w s h a ft t o attach ed S im ila rly , by two w ris t arm re la tiv e jo in t. F in a lly , the upper ro tates upper base th ro u g h arrangem ent pro vid es The sh o u ld e r in t h e the The T e a c h M o v e r ar m has a as c alled is motors from 2 t o inches 7 per in ch es . second, There mo st many im p o rtan t resources For a that fin ite in v e rs e ly a ll are the is is , set p o s sib le to to of tasks, p ro p o rtio n al to tasks. This tim e maximum flo w tim e of resource u tiliz a tio n tasks so as t o is inches. the the the is load. o b je c tiv e s . u tiliz a tio n resource u tiliz a tio n tim e referred schedule. improved reduce makespan. The a p a rtia l The maximum spe ed sch eduling the is 0.011 Ru!es increase reduce operate one d e p e n d i n g upon t h e ScheduIin g the pound hand can be p o s i t i o n e d a n y w h e r e w i t h i n 17.5 to of end o f t h e of the hand. extended, a radius the o f the when f u l l y sphere w ith of bod y jo in t. attached cap acity a nd a r e s o l u t i o n to elbow and r o l l liftin g the attached separate p itc h topo f the g rip p e r, Two c a b le -d riv e sh aft is the of req u ired to In by id le as a The of tim e the [18]. resources to the accom plish makespan fin ite sch eduling is or problem , the set of 23 Another in process im portant inventory; number o f t a s k s busy w it h fu n c tio n w a itin g o f ta rd in e s s . h av e is fin is h e d maximum th at is , due for is reduce the sch eduling is to reduce the average resources to I n many s i t u a t i o n s , dates a fte r ta rd in e s s , are dr and a that on e p en alty date. can reduce reduce some o r is some a ll in cu rred One ca n the number of if reduce of a the tasks are ta rd y . There order to are numerous ach ieve Conway, the M ax w el l sch eduling o b jectives and M ille r and . e x p e rim e n ta lly processing ru le ( SPT ) various tim e m anufacturing proved to be p ro ce ssed n jobs m u ltip le the using processors perform ance c r i t e r i a or des crib e d above the perform er e ith e r s in g le (m achines) [18]. shortest flo w tim e E s p e c ia lly , in job processor on t h e b a s i s such as mean f l o w t i m e , in proved the mean structures. best ru les however, that m in im ized system algorithm s [16], m athem atical Iy ru le to i n a qu eu e w h i l e o b je c tiv e tasks task that o b je c tiv e other ta s k s . One f i n a l the sch eduling shops in th is that (machine) or o f a v a rie ty of mean la te n e s s , a n d mean t a r d i n e s s . S h ortest tasks P r o c e s s i nq on a sequencing sin g le the Ti m e (SPT) processor, shortest [18] the When mean f l o w processing tim e is (SPT) sch eduling m in im ized task n by firs t. 24 th at is. tI When late n ess <= t 2 sch ed u lin g is n tasks tim e s c h ed u lin g task t I firs t, => fo llo w in g a p p lic a tio n c e ll sin g le n [18] o f the s i mu I a t o r . tZ => t S chapter previous mean (LPT) tasks that processor, in t h e o r d e r o f on a sin g le is m a x im ize d by s e q u e n c in g t h e (LPT) The a <= t n <= t g L o n g e s t P r o c e s s i n g T im e mean f l o w on m i n i m i z e d by s e q u e n c i n g t J <= t 2 When <= t , <= t g processor, the lo n g es t processing is >= w ill concept t n present a in to a p h y sic al d e ta ile d ro b o tic 25 3 CHAPTER METHOD OF ANALYSIS D e s c r i P t f on o f t h e The ro b o tic cell c o n sis ted o f th e 2. One c e n t r a l com po ne nt s 3. Two i d e n t i c a l co m po nen ts 4. One Z e n i t h ports. dim ensions was of from I bins b u ilt b u ilt c o m p u t e r model the made o f numbe re d parts blue to 4 th is was board a research mimic 6.81 m achinab le wa x. had w ith F is c h e rte c h n ik F is c h e rte c h n ik two RS-232 c e ll. were a nd w ith ZW -241-82 w ith layout o f th e assem bled fo r arms assem bly a r e a 6 shows a part used elem ents: Two T e a c h M o v e r r o b o t i c The it fo llo w in g was 1. Figure The th at R o b o t i c Ce I I of a c irc u it X 2.81 X .5 board. in. The m i c r o c h i p s d iffe re n t dim ensions. and were The d im e n s io n s were as f o l l o w s : I . 2. 3. 4. chip chi p ch i p chi p # I # 2 # 3 # 4 7 shows a F igure lo ca tio n 2.87 2.25 1.31 I . 00 layout o f th e m ic ro ch ip s. of the X X X X I I I I X X X X I I I I c irc u it . . . . 18 18 18 18 in. in. in. in. board w ith the BIN CELL 1 BIN CELL 2 4 ROBOT /ASSEMBLY AREA^ 1 ROBOT B STORAGE FOR UNA& BOARDS Figure 6. Layout of the Robotic Ce I I F ig u re 7. Layout o f th e C irc u it Bo ar d 28 The assem bly process started b o a r d on t h e a s s e m b l y a r e a . A f t e r chips w e r e be p l a c e d was r e m o v e d . A ll in by the a c irc u it b o a r d was p l a c e d , random o r d e r these o perations p lacin g and f i n a l l y the the board formed a c y c l e . Assemblv O p e r a t ions Assembly Sequences A round -robin o p e ra tio n of the m et ho d ro b o tic s e q u e n c e was d e t e r m i n e d , number of cyc les . The board rem ained f i x e d The assem bly d iv id e d in to two board w ith one parts (one b in other for As unassembled the for c irc u it the board. fo r f i xed. o p e ra tio n , rem oving cen tral assem bly repeated for the on the m icro ch ip s e va lu a ted one set firs t the of were c irc u it bins for a s s e m b l y a r e a , and t h e board w it h cen tral the was assem bling two ro b o t arm s, assem bly a r e a . o peration o peration movement o f a T e a c h M o v e r arm an d f i x e d la s t c e rta in were using This continuous sequences. c irc u it and t h e the a the th at arm, a nd t h e before, of the one ro b o tic for Once sequence a ll groups: c e lls stated c e ll. sequences c e ll) ch o se n p o s itio n s assem bling th e u s in g two b in was fo r fin is h e d was placin g was t h e in itia l every cy c le . board, an was The also 29 The assem bly o perations of a c irc u it board were s u m m a r i z e d as f o l l o w s : OPERATION No. I DESCRIPTION ’ ' Pick the c irc u it board from the s t o r a g e b i n an d p l a c e i t i n t h e c e n t r a l assem bly a r e a . ( 2, 3, 4, 5 P ic k randomly any a v a i l a b l e c h ip among four ch ip s from a b in c e l l and place the s e l e c t e d c h i p on a f i x e d lo catio n o f th e board. This o p e ra tio n w i l l be repeated u n til a ll four chips are assembled f o r t h e f i n i s h e d b o a rd . 6 To m in im ize approach as n P ick th e f in is h e d a s s e m b l y , remove f r o m t h e a s s e m b l y a r e a , and p l a c e in f i n i s h e d p ro d u c t a r e a . was a d a p t e d b in -c e lls number of lo catio n the had its (between distances a dependent 4) bin on because n lo catio n s was sin g le (or th ey part were to on Branch d efin e an by 2 Bound * n 'c itie s ' assem bly two assem bly and area. because lo c a tio n The a an d bin both e n tity . travel lo c a tio n the the m u ltip lie d correspondent were c o n s id e r e d as The and m o d i f i e d and 'c itie s ' makespan, it it and. tim es) an assem bly (m icro ch ip ) located at between a the 'c itie s ' lo c a tio n ) type c e rta in (I, were 2, 3 or place in the assem bly. Tab le th is I research. presents the assem bly m et ho ds e v a lu a t e d , in 30 T ab le I. Assembly M ethods. METHOD DESCRIPTION Group I I - a b assem bIe t h e board w it h assem bIe t h e board w i t h Group I I - a I I - b assembIe th e board w it h both in s e q u e n t ia l o p e r a t i o n assem ble t h e board w i t h both w i t h m u l t i t a s k i n g programming B r a n c h a nd Each Branch Bound t r e e s a nd com binations of Bound the a c irc u it d iffe re n t operatio n s O p eratio n tra v e lin g w ith p lacin g the to the part m ic ro ch ip 3) the an d in th e O p eratio n assem bly produ ct, fo r b in , 6: tra v e lin g d es crib e d below . op e ra tio n home hand, to the c irc u it board. it op e ra tio n back in to e m pt y the the the fo r from the picking to of 6 one f o r board picking and hand). a ls o had t w o assem bly area a nd p l a c i n g the c o n s i s t e d o f movements f r o m hand, p ickin g fin is h e d product home us ed c irc u it (loaded robots po s sib le were fo r robots group. c o n s is te d other e m pt y other w ith a ll These o p e r a t i o n s tra v e lin g each had t w o m o v em e nt s : a nd and t h e area fo r th at sequence p o s itio n an d 5 : This p lacin g sequences in t h e assem bly a r e a 2 ,3 ,4 o ne covered A empty board O p eratio n s movements: the an tree board. This from storage 2) I: developed d iffe re n t assem ble 1) were Rob ot A Robot B p o s itio n . the fin is h e d storage F ig u re 8 area, shows OPERATION I PLACE THE C. BOARD OPERATION 2 OPERATION 3 OPERATION 4 OPERATION 5 PLACE PLACE PLACE PLACE CHIP # 1 CHP #2 CHIP # 3 CHIP # 4 OPERATION 6 REMOVE F. PRODUCT Figure 8. Operations Sequence 32 the assem bly o p e r a t i o n s . F ig u re G ro up I Bound tree the - done, It fo r was the an there 5). the to next o p e ra tio n . sequences, p o s sib le paths o p e ra tio n p o s s ib le the should be com binations B r a n c h a nd that fo llo w Bound t r e e s the are 0 as I, was firs t (O p eratio n s acco rd in g part I was each one 2, 3, to 4 the The b o u n d i n g r u l e re s tric tio n 6. and fo llo w , rem ained. O p eratio n Br a n c h O p eratio n to branched the for O p eratio n A fter paths tree O p eratio n is, assem bled were w ith shows th at board. Bound general The a m icro chip e s ta b lis h e d a fig u re com bination o f m ic ro ch ip s t h a t was as This four These to and A. unassembled were Branch referred robot a ll corresponding an d is p o s itio n . for placed illu s tra te s a. home fix e d 9 th at Figure o peration illu s tra te d the 10 2. last shows a ll The r e s t o f in the Appendix A. T ab le firs t 2 shows t h e robot ( robot The t r a v e l i n g p o s itio n s tim e o f the A) robots. to th e average o f te n The values there are req u ired The were for a the o b s e rv a tio n s measured the w ith exp erim ental robot to robot in T a b le for the (robot B ). because th e 2 correspond was stopwatch. from respect ea c h t r a v e l i n g measurements' a for sym m etric w i t h errors travel seconds, was d i f f e r e n t presented from in second were n o t values o btained some for m icro chips the varian ce and tim e , o f both ro b o ts to The tra v e lin g in a the m in im al. Therefore, am ou n t p o in t tim e. to of the tim e other HOvE POSTON PART CjJ CU CHP #1 Figure 9. General Branch and Bound Tree for Robot A CHP #1 CHP # 2 CHP # 4 CH= # 2 CHP # 4 CHP # 2 CHP # 3 w CHP # 4 CHP # 3 CHP # 3 F. B O A P D F. BOARD F. BOARD Figure 10. Branch and Bound Tree for Chip #1 Robot A 35 Tab le 2. T ra v e lin g Times f o r Rob ot A and Robot B TRAVELING TIME ROBOT A PO SI TI ON 0 I 2 3 4 0 30.04 21.97 17.24 14.20 13.81 - 1 - 24.90 19.38 17.17 15.87 - 20.48 1 7. 61 16.26 22.78 5 6 2 4.65 3 6.50 - 24.38 - 18.64 17.29 2 6 . 13 4 4.71 - 21.59 18.98 - 15.15 25.71 5 3.82 - 21.30 19.01 15.88 _ 23.37 6 10.5 ROBOT B PO SI TI ON 0 I 2 3 4 5 6 0 - 27.01 21.20 19.24 16. 12 14.00 - I - - 22.36 20.34 18. 19 17.10 - 2 5.67 - 20.94 18.40 15.79 27.92 3 3.41 - 23.29 - 17.74 15.85 23.64 4 3.85 - 22.23 19.66 - 14.94 23.81 5 5.04 - 22.46 20.27 17.49 - 24.39 6 9.73 -L - 36 p o in t. It a ffe c t the was assumed t h a t re s u lts The second ro b o tic arms, method, was the by t h e robots, the p revious for program. s im u lta n e o u s ly u se d both This approach the i . e ., the in to every was two errors w o u ld not board w ith two one for approaches: o perations o p eratio n com pletely board w ith a a llo w e d the same board, at the same tim e a ll the should done, perform ed w a it u n til the other and m u ltita s k both w ith in tegrated the seq u en tia l program hand s or a cen tral For w ith o p e ra tio n This assem bling d ivid ed board assem bling amount o f s ig n ific a n tly . assem bling two the robots ju s t to execution as if assem ble a c tiv itie s to a a in to work worker produ ct. one b rain com puter. the firs t m et ho d in the same B r a n c h an d Bound t r e e s sec ond that G ro up w e r e u se d (Table in th e I), firs t G rou p w i I I be u s e d . Branch second an d m et ho d a c tiv itie s acco rd in g of to in the th e ir the an ro b o tic of In arm s. W ith but develo ped (Group were 11-b ). grouped in t h e for in to tre e. the The p airs Figure 11 B r a n c h and Bound t r e e . the board was f i x e d , arms sequence th is also Group, ro b o tic m u ltita skin g b eg inning were second assem bly unassembled assem bly a r e a the two home p o s i t i o n . which trees the the shows a g e n e r a l At Bound cyc le case, was it th is both the robots firs t loaded to was p e r f o r m e d s itu a tio n , were at operatio n by the by the cen tral e ith e r of number of HOME POSITION BOARD & BOARD & CHIP # 2 BOARD & CHP # 3 BOARD & CHP # 4 u> >4 CHP #1 & BOARD F igure I I CHP # 2 & BOARD CHP # 3 & BOARD CHP # 4 & BOARD General Multitask Branch and Bound Tree 38 com binations For exam ple, placed th e chip the along I. w ith the in was firs t com bination board It the the operation (1 ,2 ) m ean t assem bly a r e a , assumed that the was increased. th at and r o b o t ro b o tic arm s robot B A placed started at same t i m e . The la rg e s t o perations c o m bi ne d was tra v e lin g selected task to s im p lific a tio n assem bly t im e solve allo w ed in a T h e r e was a a nd the the r o b o t arms in t h e found t h e o t h e r of was enough the space and fo r tim e Bound fin d for tree. the the This shortest environm ent. between ro b o tic robot the of a n a ly tic a l the arms the The delayed approached the other there w aited robot an area, same a r e a . approached and of in terferen ce m icro ch ip s, robots resu lts in te rfe re n c e occupying t h e of when b o t h t he m was o f two r o b o t tra v e lin g to because assem bly s itu a tio n s and one o f user a p a ir same a s s e m b l y a r e a . and t h e n area Br a n c h the resu lts when o ne several the the m u ltita sk occurred the as d iffe re n c e ph y sic al During tim e w it h in the u n til were same there to perform a a lso a p p lie d to Bound trees for research were predeterm ined o p e ra tio n . The t r a v e l i n g tim es th is approach. The th is method a r e shown shown d e ta ile d in t h e in Tab le Branch 2 and A p p e n d i x B. Assembly S cheduI i n g The assem bly schedules us ed in th is 39 the shortest processing to ta l ru le processing tim e (LPT). assem bly t im e The sequences and the LPT tim e (SPT), The o b j e c t i v e generated of were the was t o longest determ in e the by ea c h m e t h o d . op e ra tio n ru le and based on determ in ed e ith e r the the Branch from SPT and Bound t r e e s . M u ltita s k in g The th e s is m u ltita sk d id not because t h e the th at an the program a system m u ltita sk of was developed 'ta s k s ' The m u ltita s k a o ne task to exe cu tin g w ith in a be executed. sequence. The BASIC languages: That manage program com pleted Figure a nd 12 in itia l the prepared for was independent b as is executable file to c a ll the loading The p r o g r a m s w e r e on e was t h e Each o f t h e a s s e m b l y o p e r a t i o n s assem bly decided ARMBASI C f o r r o b o t a r m s , and t h e o t h e r was a BASIC c o m p i l e r . [19]. the presents step was m eant a ll p red efin ed programs o f t h e assem bly o p e r a t i o n s . c o d ed b y t w o computer program system. to th is e x e c u t e d by This was ex e c u tiv e was t o be program (MS-DOS). program fo r s y s t e m on t h e ex e c u tiv e th is or w hich next that the o p e ra tin g o p e ra tin g o b je c tiv e sequence. at rep lace as a c tiv itie s tim e program p r o g r a m was an a p p l i c a t i o n e x is tin g c la s s ifie d the Program T u r b o BASIC were com piled an the o p e ra tio n i n an on the o f t h e assem bly sequence. F igure 13 presents a flo w c h a rt of the exe cu tive OPERATING SYSTEM ROBOT A UPLOADING ROUTINE ROBOT A UPLOADING ROUTINE OPERATIONS EXECUTING OPERATIONS PROGRAM Figure 12. Program Executing Sequence EXECUTIVE PROGRAM TIME SCHEDULER DATA CONTROLLER ROUTINE FILES Figure ROBOT A ROBOT B OPERATIONS OPERATIONS 13. M u ltita s k E x e c u t i v e P r o g ra m 42 program. set of The data program file s co n sis ted th at of con tained four the subroutines info rm atio n an d fo r a the assem bly o p e r a t i o n s . The s u b r o u t i n e s a nd t h e i r d es c rip tio n s a r e as f o l l o w s : E x e c u t i ve P r o g r a m : T h i s was t h e m ai n r o u t i n e t h a t c o n t r o l s an d s e t s t h e e n t r y o f t h e r e s t o f t h e s u b r o u t i n e s . I t was co d e d i n T u r b o B a s i c . T i ms C o n t r o I I e r R o u t i n e : T h i s r o u t i n e k e p t t r a c k o f t h e t im e t h a t each assem bly o p e r a t i o n t a k e s in o rd e r t o a v o id s p a tia l c o n f l i c t s o v e r t h e assem bly a r e a . It was c o r r e la te d w ith t h e assem bly sequence t h a t was to perform ed. S c h e d u I e r R o u t i n e : T h i s r o u t i n e was i n c h a r g e o f a c t i v a t i n g t h e t a s k t h a t had t o be p e r f o r m e d a c c o r d i n g t o t h e a s s e m b l y s e q u e n c e . I t m a i n t a in e d a t a s k queue f o r a l l t h e assem bly cyc le s . R o b o t s A & B R o u tT n je s : T h e s e r o u t i n e s w e r e t h e on es t h a t a c tu a lly moved the robot arm. B efore sending the i n s t r u c t i o n t o t h e r o b o t a r m , t h e d a t a f i l e was r e a d f o r a l l o w i n g t h e p r e v i o u s t a s k t o be c o n t r o l l e d b y t h e CPU. A f t e r t h e d a t a were r e a d , the scheduler r o u t in e w aited u n t i l t h e CPU was a v a i l a b l e t o s c h e d u l e t h e t a s k . Once t h e t a s k t o o k p o s s e s s i o n o f t h e CPU i t s e n t t h e i n f o r m a t i o n t o t h e r o b o t arm t o p e r f o r m t h e d e s i r e d o p e r a t i o n . D a t a FjJ Les : T h e s e f i l e s c o n t a i n e d t h e t h e s te p p e r motors o f th e ro b o t a rm s . B efore the selected s p e c if ied. s im u la tio n and the starte d , sequence in an the current readings of assem bly ro u tin e was scheduler ro u tin e was be 43 Perform ance C r i t e r i a The r e s u l t s of the of e ffic ie n c y e ffe ctive n ess sequences of were th is of the research the ro b o tic assem bly selected were eva lu a ted assem bly ro u tin e s . based on c e ll The both in terms and best the assem bly e ffic ie n c y an d e f f e c t i veness. The e f f i c i e n c y percentage in t h e c e ll, The tim e u tiliz a tio n in t h i s case th e effe ctive n ess (assem bly) b as is of o f a ro b o tic tim e , to ta l o f the control of was d e t e r m i n e d by t h e the resources th at were robot arm s. was d e t e r m i n e d cyc le o f t h e assem bly r o u t i n e s . a re s u lt c e ll tim e by t h e and id le These t im e m et ho d u se d t o m anufacturing tim e on the p a ra m e te rs were con trol the c e ll. 44 CHAPTER 4 DATA COLLECTION AND ANALYSIS Ana I v t i c a I To e v a lu a te tw elve d iffe re n t a n a ly tic a l by the 3. ru le , These & B. ru le , c e ll robot robot robot robot robot robot T ab le to ta l LPT assem bly the were ro b o tic con sid ered sequences and the lis te d c e ll, were Branch in T a b l e in selected and Bound 3. A s s e m b l y Se qu enc es I 2 3 4 5 6 7 8 9 10 I I 12 B. The of sequences sequences a r e Sequence * perform ance assem bly m ethods. SPT alg o rith m . Tab le the Resu I t s c o n fig u ra tio n robot robot robot robot robot robot A and A and A and A and A and A and A A A B B B robot robot robot robot robot robot B B B B B B ru le* s i n g l e t a s k SPT s i n g l e t a s k LPT s i n g l e t a s k B.& B. s i n g l e t a s k SPT s i n g l e t a s k LPT s i n g l e t a s k B.& B. s i n g l e t a s k SPT s i n g l e t a s k LPT s i n g l e t a s k B.& B. m u l t i t a s k ing I SPT m u l t i t a s k ing I LPT m u l t i t a s k ing I B .& B. = B r a n c h and Bound 4 shows com pletio n the tim e tw elve assem bly determ in ed sequences and a n a l y t i c a l ly. th e ir The 45 Tab le 4. A n a ly tic a l R esults ANALYTICAL RESULTS ROBOT A OPERATIONS SEQUENCE SPT 0 Ct> 1 C > 5 O LPT 0 O 1 c> 2 O a & & 0 O 1 0 3 0 a 0 & B. O 1 C t> 0 Ct> 1 O 0 1 O 5 C t> 4 2 O 2 O LPT SNGLE TASK SNGLE TASK B & a SNGLE TASK SPT MULUTASKNG LPT MULTTTASKNG a & a MULTITASK O 3 O 5 O 3 O 4 O 4 0 A O B O A O B O A O B O A O B O A O B O A O O B O O O O O O O O O O O O O O O O O O O O O O O O 2 O 5 O 2 0 6 O 6 O 6 O O 138.43 O 143.08 O 137.46 O 14220 O 137.11 O 135.68 OPERATIONS O 2 0 4 O 4 O 5 O 3 O 3 ROBOT A AND B SEQUENCE SPT 4 O 3 O 5 O ROBOT B SEQUENCE SPT LPT ASSEMBLY TtvE (SECJ 5 O 1 o 1 O 2 O 5 O 1 O 5 O 1 O 1 o 2 O 2 O 1 O 6 O 6 O 6 O OPERATIONS 4 3 4 3 4 O O O O O 3 3 4 4 O O O O 3 O 4 O 5 O 2 O O 6 6 5 2 6 2 6 6 5 3 6 O O O O O O O O O O O O O 136.65 146.45 O O 136.65 O O 80.13 O O 87.19 O O O 78.74 46 assem bly sequence robot A was Bound a lg o rith m . c om pa re d F igure the to 14 w ith the sequence Its 138.43 shows a lowest obtained co m p letio n se c on ds G antt com pletio n through tim e chart of the was obtained tim e B ra n ch 137.46 by using the seconds SPT th is a n a ly tic a l the shortest and ru le . assembly sequence. The tim e the using robot Branch 135.68 and a ll 10 d iffe re n t has been o p e ra tio n every LPT r u l e the a generated d id . In t h i s lo n g es t ru le or resu lts the In d iffe re n t ru le a of obtained co m p letio n 13 shown sequences th at through tim e was in Appendix C were eva lu a ted 0 having assem bly r u l e s but case o f two that than O p eratio n they d id The fix e d (Table the 5): 6) robot it co m p letio n ru le . the and t h e O p eratio n s o lu tio n s o lu tio n , LPT SPT r u l e and the th at SPT in ru le in te rm s o f c o m p le tio n t im e the shorter tra v e lin g the through re s tric tio n (O peration sequence. caused Its dem onstrated In t h e above s o l u t i o n s , under sequence com pletion case. outperform ed th e a p p lie d the a lg o rith m . T ab les the w ith was a l s o Bound s in g le .ro b o t It sequence B seconds. present the assem bly was tim e LPT r u l e s and last were fix e d for B th is re s tric tio n expected. than fo llo w fo llo w in g o perations w ere firs t the LPT 6 had t h e e ith e r example th at The SPT r u l e I and O p e r a t i o n not [18]. the SPT shows the d id n 't fo llo w SECONDS 0 10 20 30 40 60 60 70 80 90 100 110 120 130 T(pTA ir CpMi^ETjON ]TIMp F ig u re 14. A n a l y t i c a l C o m p l e t i o n Ti m e f o r B r a n c h a nd Bound A l g o r i t h m Rob ot A w i t h the 48 Tab le 5. P e rfo rm a n c e o f t h e Rules R ule: SPT compl e t f o n Se q u e n c e ( fro m -to) O I 5 4 3 2 6 - The in above SPT robot the B w ith under sequence shortest the and for lis te d a ll in the and chart sequence for th is 5-6 both showed Bound in the LPT w h ile the th at sequence tw o the 78.74 robot A and the SPT generated tim e Figure T ab les Br an ch and u nd er obtained com pletio n seconds. to ta l arms sequence The sequence. and robot seconds. was D show t h e se q u e n c e s 3 - 2 and 2 - 6 sequences using 136.65 was performed sequences. and mode and Bound a l g o r i t h m . Appendix p o s s ib le 4-5 s eq ue nc e u s i n g exe cu tio n ru le se q u e n c e o f o perations tim e , LPT worst the best Br an ch assem bly th is the 27.01 49.37 70.3 1 88.05 102.99 127.38 137.11 the the com putations com pletio n Br an ch shows a G a n t t fo r sele c t i 2 3 4 5 6 0 se q u e n c e s e q u e n tia l m u ltita skin g req u ired 21 to the - that due t o selected a n a ly tic a l The b e s t the and The SPT r u l e The ru le SPT r u l e ru le , LPT was f o r c e d shows comp I e t i on t i me se q u e n c e ( from -to) 0 I 2 3 4 5 6 example than the the ru le . t i me 27.01 44. I I 61.60 81.26 104.55 132.47 142.20 i 5 4 3 2 6 O b etter LPT 15 14 t h r o u g h Bound co m p letio n trees tim e SECONDS 0 IO 20 30 40 50 60 70 BO 90 100 110 120 130 CHIP 1 21197 I 17.61 18.981 F ig u re 15. C o m pletion M u ltita s k AIg o rIth m T im e u s i n g Execu tio n Rob ot A an d Ro bo t B u nd er w/a Branch and Bound 50 va Iu es. Un de r e v a lu a tio n the ro b o tic c e ll, be s e le c te d . could Branch of not a s o lu tio n s are cannot sure ro u tin e s are Therefore, th is th is m ake r t h e w hether re a lly The alg o rith m research, arm s w e r e fo llo w in g the ro b o tic control for s im u la tio n c e ll The is The d iffic u lt However, d e c is io n system as the m ake r or his best he expects. has been s u g g e s t e d works c o n flic ts p h ysical resu lts s eq ue nc e a n a ly tic a l alg o rith m s tool the approaches u s u a ll y sim u la tio n through to ta l problem s. s o lu tio n . the ro u tin e physical in v e s tig a te d Physical a physical in would Ho w e v e r , best c o n flic t s im u la tio n or the the v is u a lize . his the assem bly A n a ly tic a l w orking a ph y sic al an on optim al to m in im ized and only of method a lg o rith m . p h ysical d iffic u lt research. how t h e of e xe cu tio n tim es e x e c u t i o n mode was o b t a i n e d scheme ba s e d co m p letio n that Bound approaches. the d e c is io n be and in v e s tig a tio n under a n a l y t i c a l g ive sequence made because perform ance m u ltita skin g control be so lu tio n s a n a ly tic a l in a m u l t i t a s k i n g the sele c tio n the The assem bly tim e through of are ca n for show the v is u a lly system. between in the In robot s im u la tio n . presented in the cell can s e c tio n . Physic a I P hysical s im u la tio n Si m ul a t i on R e s u l t s fo r a ro b o tic assem bly 51 suggest improvem ents in system s. A p h y sic al sp a tial re la tio n s h ip s m a te ria l elem ent the e n tire The m et ho d eva lu a ted assem bly s in g le Al I recorded source to are to the lis te d record programs con trol con trol the in record were method. robot B. number o f steps required the number of the a nd Each were in p u ttin g th e data fo r executable file "TESINI " for the file s d iffe re n t methods: robot method. arms The Program a were program "ULL" A. was Pr o g ra m B ' s m ov em e nt s . to eva lu a te "DLL" "DLL I " of o f the axis. a nd the the th is c e ll s in g le c o n tro lle d stepper robot the contained motors w o u ld be a s many as t h e Furtherm ore, were the co n tro lle d b a s ic a lly m o vi ng ax is cel I . w ith co n trol robot programs lo catio n s defin ed programs robot program These robot. s p e c ifie d steps Program A, E. the the research test. for Program for moved t o robot the is th is a n a ly tic a l by develo ped movements to by movements fo r attached m et ho ds c ritic a l c e ll operate in Appendix movements the to the tra n sfer A ro b o tic u se d perform ance was d e v e l o p e d t o Two task p rio r a executed v is u a lly equipm ent. m e t h o d , a nd a m u l t i t a s k o p eratio n s co d e s developed "ULLI" the be m anufacturing m achines, of id e n tifie d con trol shows perform ed independent sequences task wi I I s im u la tio n two model h a n d lin g d esign that ph y sic al of between an d con trol d esign s im u la tio n mechanisms, in the ac tiv a te d these by name. was developed for the m u ltita sk 52 con trol method. Appendix fo r F. robot co d e d to was To e x e c u t e movements the program. execu tive be t e s t e d in had t h e T ab le 6 robot The updated to the The f i r s t the task-d o u b le the best sequence s o lu tio n . In the best Bound No sequence ph y sic al exp erim ents The e xe cu tio n The a also (robot A or perform ance mode sequence was w ith the the program p rio ritiz e d s eq ue nc e from ta b le The the shows t h e se c o n d exe cu tio n task part mode sin g le tim e exe cu tio n the and Branch mode, and Bound ta s k ,e x e c u tio n mode, determ in ed robot worse th is knew w h i c h 150.04 occurred of in be e x e c u t i o n mode. by was The c o m p l e t i o n c o n flic ts to s e q u e n c e had higher mode. sin g le under a was names had ro u tin e o f the double ro b o t A under B, file obtained robot was d e t e r m i n e d robot s o lu tio n . part execution The c o m p l e t i o n t i m e using next re s u lts shows robot data in be p e r f o r m e d . robot using lis te d movements scheduler tas k -s in g le In is Therefore, the the presents the m u ltita s k B's moment. sin g le fin a lly , the scheduler w ith p rio rity s in g le code decided what s p e c i f i c tim e sim u la tio n . source program, and T h i s means t h a t highest p h y sic al th is file th at c o n tin u o u s ly sequence. program A's in m u ltita s k The seconds. by was the Br a n c h 148.82 during and seconds. the ab o v e B ). both than shortest robots the above under two com pletion a sin g le exp erim ents. tim e was found 53 T ab le 6. Physical S im ulation R esults PHYSICAL SIMULATION RESULTS ROBOT A ASSEfvBLY OPERATIONS SEQUENCE SPT 0 O LPT 0 1 O S i O 4 O 3 O 2 O 6 O o 1 O 2 O 3 O 4 O 5 O 6 O 0 B & B 1 0 O SEQUENCE SPT O O LPT O O B & B O O O 3 O 5 O 4 O 2 O 6 O 0 1 0 5 0 SNGLE TASK SNGLE TASK B B A & B. SINGLE TASK B A SPT MJLTIT ASKNG LPT MULTITASKING B A B R & B 0 3 0 2 ROBOT A AND B A a 4 0 6 I O 2 O 3 O 4 O 5 O 6 I O 2O 5O 4O3O 6 A LPT 154.09 160.15 150.04 ROBOT B OPERATIONS SEQUENCE SPT TIME (SEC) MULTITASKNG A B O O O O O O O O O O O O O O 0 0 0 0 0 0 0 0 0 0 O O O O O O O O O O O O 5 1 1 2 5 1 5 1 1 2 2 1 O O O O O O O O O O O O O 0 158.96 O 0 0 154.00 O 148.82 OPERATIONS 4 3 4 3 4 3 3 4 4 3 4 5 O O O O O O O O O O O O 2 6 6 5 2 6 2 6 6 5 3 6 O O O O O O O O O O O O O 157.96 O 0 0 0 0 0 0 0 0 0 0 169.29 157.96 131.59 123.73 127.00 54 by t h e SPT r u l e com pletio n tim e and for se c o n d s more t h a n The showed th is best sin g le by re s u lts the s e q u e n c e was m e a s u r e d a s outperform ed good cho ices in by fo r mode the the the 9.14 ( robot B ) . w ith two robot arms a ll the s in g le task com pletio n com pletio n tim e tim e for was th is seconds. a n a ly tic a l SPT The seconds, exe cu tio n to The a lg o rith m . 157.96 shortest 123.73 the Bound was c om pa re d LPT r u l e . As d e s c r i b e d and robot exe cu tio n The s e q u e n c e w i t h determ in ed was Branch sequence in t h e m u ltita s k the modes. the ru le chips re s u lts , because as the the of LPT r u l e the lack assem bling of tasks proceeded. From the above re s u lts , B r a n c h and Bound a l g o r i t h m con trol method. recommended for in-d epth the m u ltita sk an a ly s is of was perform ed However, the it concluded best same a task was not method. m u ltita sk the sin g le s o lu tio n con trol the in that Therefore, perform ance was f o I I owed. In of the the c e ll assem bly fo llo w ed m u ltita s k control played im portant sequence. by r o b o t so I u t i o n . O p e r a t i on This Figure 3 to A place occupied means 16 A and r o b o t Ro b o t assem bly a r e a B. an m et hod th at a the in shows 2. the ph y sic al s e le c tin g the B under t h e t r a v e Ied chip ro le , the best physical paths B r a n c h and Bound longest Th i s layout distance o p e r a t i on by r o b o t A serio u sly physical c o n flic t Ieft d e layin g should be in the robot removed PATHS; 2 - 4 - 3 Figure 16. PATHS; Physical Paths followed by Robot A and Robot under the Branch and Bound solution 1 - 5 - 6 B 56 to reduce the S im ila rly , d elay the exe cu tio n O p eratio n 5 m atter fact, d r aw n of by by bo th 16. Tab le Tab le 7. robot a ll Se q u e n c e LPT b etter there s till was Th erefo re, a w ith ro b o tic firs t under p h y sic al number m ic ro ch ip s, by robot robot A c o n flic t. between A. and As two a paths c o n flic ts in physical c o n flic ts of No. o f p h y s i c a l c o n fIic ts the Figure % o f delay w /resp ect to analy tic a l s o l. 10.10 10.65 8.38 3 9 . 10 29.53 38.00 m u ltita sk c o n fIic t s o lu tio n should robot by C o n flic ts t h e . Branch was m in im ize under i m p ro v e m e n t Each physical B '0 0 0 . 3 3 . 3 p h ysicaI arms vr in te rs e c tio n s was the to one r o b o t a nd r em ov e t h e robot. in Physical than robot sequences. Meth od better new s o l u t i o n The of ru le perform ed the the on O p eratio n s in g le task s in g le task s in g le task m u ltita sk m u ltita sk m ulti task The of of were th e by v a r i o u s Control SPT LPT B. & B . SPT LPT B . & B. The those shows Number forced B were robots 7 exp erien ced tim es should re s p e c tiv e ly . co n tro l method and Bound s o lu tio n , but as shown in 17. sought the in Figure th is physical th esis. in terferen ce m u ltita sk ex e c u tio n p lace unassembled an fin is h e d place two According board w i t h m icrochips to the method. board the other among c irc u it four board ROBOT A ROBOT B Ul BOARD/FPFV BOAFD/FPRODUCT PATHS 1 PATHS 2 - 3 - F ig u re 17. P h y s i c a l P a t h s f o l l o w e d by Ro b o t A and Ro bo t u n d e r t h e LPT R u l e s o l u t i o n B 58 c o n fig u ra tio n , robot by A were robot that the chip A. is, The robot com plete two I B c a lle d adju sted the number o f p h y s i c a l tim e for th is th is value w ith com pletio n e ffic ie n c y , They was s e lect The in Figure c o n flic ts should appl ied 2 o f th is 18. sm alle r fo r tim e , mean of I 16 system summarized They were c a l c u l a t e d tim e fo r ea c h by u s i n g t h e was sequence, the seconds. those other c o n flic ts . such m easuring for sequence fo llo w in g S till, fo r values for u tiliz a tio n sequence Th e c o m p l e t i o n param eter flo w chip B, com bination t h e minimum number o f p h y s i c a l ev a lu a tio n robot to th is than to 3 This Un d e r clo ser be a s s e m b l e d and was m i n i m i z e d . re la tiv e ly and t h e are located chip re s u lts sequence. perform ance effe c tiv e n e s s were s e q u e n c e was m e a s u r e d a t was sequences, 4. approach an a s s e m b l y . shown th at chip should are the and same o p eratio n s The chips m easuring in as the the Tab le equations: CompI e t i on T i me n MS where = S t 1- + Ms = t h e co m p letio n tim e t j = the processing tim e o f ta s k dj = the id lin g tim e for d i req u ired the for n tasks i (i task in a sequence S = l,2 ,...,n ) i 6. ROBOT A BOARD/FPRODUCT 'SSEMBLY/ ROBOT B BOARD/FPRODUCT PATHS: 1 - 3 - Figure 18. Physical Paths followed by Robot A and Robot under an adjusted sequence B, 60 T a b le 8. A n a ly tic a l R esults vs. Physical S im ulation ANALYTICAL RESULTS SEQUENCE ROBOT COMPLETION MEAN SYSTEM TIME FLOW TIME UTILIZATION B. S B. SINGLE TASK B. I B. SINGLE TASK B. $ B. SINGLE TASK A B AI B 137.46 137.11 136.65 85.33 84.01 84.11 100.00 100.00 50.00 8. I 6. MULTITASK SPT MULTITASK LPT MULTITASK AI B A4 B A&B 78.74 80.13 87.19 27.42 27.94 30.61 90.98 87.72 83.98 PHYSICAL SIMULATION RESULTS SEQUENCE ROBOT COMPLETION MEAN SYSTEM TIME FLOW TIME UTILIZATION SEC. SEC. I 8. 4 B. SINGLE TASK 8. 4 B. SINGLE TASK B. 4 B. SINGLE TASK A B A4 B 150.04 148.82 157.96 85.33 84.01 84.11 100.00 100.00 50.00 B. 4 B. MULTITASK SPT MULTITASK LPT MULTITASK ADJUSTED MULTITASK A4 A4 A4 A4 127.00 131.59 123.73 116.00 49.78 50.64 47.09 44.83 59.43 57.72 61.64 67.25 B B B B R esults 61 Mean F I ow Time where Fj g = flo w (i = tim e for task i in a sequence S I , 2, . . . , n ) S y st e m U t i I i z a t i on U = M - I ---------------- * M 100 (per robot) where M = comp I e t i on t i me I = to ta I Bo th id le the a n a ly tic a l s im u la tio n re s u lts was b e t t e r than com pletion tim e . the com pletio n tim e re s u lts showed t h a t the sin g le As tim e between c o n s id e rin g t h a t a ro b o tic hours a day, d a y s a w ee k , six the the m u ltita s k task shown and in execution Tab le two 8, e x e c u t i o n mode mode the s eq ue nc e s fa c ility th is physical terms of d iffe re n c e of is in s m all, but wo uld be r u n n i n g t w e n t y d iffe re n c e c o u l d be v e r y im p o rtan t. In t h e p h y s ic a l Branch and sin g le task it generated re s u lts , it Bound s im u la tio n , s o lu tio n e xe cu tio n the was the w ith a resu lts showed t h a t a sin g le robot a mode was t h e b e s t sho rtest concluded com pletio n that the tim e. best under cho ice because Ba sed on t h e s e a n a ly tic a l method 62 cou I d be s in g le task As d ire c tIy exe cu tio n stated b etter in both the Bu t an to best the robots under because of sim u la tio n ph y sic al arm s. to sequence 5.6 % and would or to s o lu tio n sequence improved reduced be was when not a sequence o v e ra ll com pletio n the above it two a to or would as s ys te m by 8 . 6 more method d ig ita l detect between such tim e physical con trol d iffic u lt was recommended w ith c o l l i sons the the using Even s im u la tio n the under met hod and execution very avo id assem bly robot con trol method c o n flic ts . a p h ysical b etter that m u ltita sk a n a ly tic a l it s in g le method. m u ltita skin g c o n flic t a a a n a ly tic a l p h y sic al W ithout fin d the assem bly a to o l, fo r con trol before, s im u la tio n . seek a p p Iie d tw o any robot be d i f f i c u l t the adjusted u tiliz a tio n by % referred to presented in in T a b le 8 . In T ab le 9. T ab le 9. summary, Summary o f t h e discussio ns are Best Sequences. High E ffic ie n c y o h i g h u t i I i z a t i on High E ffe c tiv e n e s s o s h o rte r c o m p le tio n tim e o s h o r t e r mean f l o w t i m e o sh o rte r id le tim e 8. & 8. s in g le task ( r o b o t A o r r o b o t 8) A d justed sequence m u ltita sk ( r o b o t A and r o b o t 8) N o te: No physical Note: A d justed t o m in im ize the number o f p h y s i c a l c o n f l i c t s c o n flic ts 63 CHAPTER 5 SUMMARY AND CONCLUSIONS An e v a l u a t i o n two softw are of a v a rie ty of con trol methods, a p r o g r a m and a m u l t i t a s k th is th e s is . Three a n a ly tic a l the assem bly sequences, the longest p rocessing alg o rith m . the b as is In c e ll, two parts to The for factors should be assem bled a the In c o n tro llin g be e ffe c tiv e be numb er a a nd (LPT), be used t o processing in se le c t ru le (SPT), and t h e B r a n c h and Bound from th is research an in to assem bly account. were designed fo r movements c e ll m us t the im proving the The number ph y sic al c e ll, p o w erfu l. The accordin g and p r o d u c t i o n to or control softw are the q u a n tity . such a way be also co n fig u rated c o n flic ts the in should be ro b o tic F irs t, assem bly p ro c e s s . robot of execution con clu sion s: be t a k e n the under was p r e s e n t e d be minimum a nd a r r a n g e d ro b o tic selected c o n fig u ra tio n , shortest must of Second, task met hod s w e r e im plem enting ro b o tic should number m in im ized . should in ro u tin e s sin g le program, o b tained fo llo w in g and the m in im ize ru le des ig n in g c o m po n e nt s that the re s u lts the a s s e m b la b iIity of exe cu tio n assembly to c o llis io n s . schemes con trol should schemes part types, cell When a s in g le robot 64 was u t i l i z e d , task 100 the exe cu tio n recommended c o n t r o l method. % u tiliz a tio n of This the m et ho d ro b o tic which g e n e r a t e s t h e For the con trol p erip h erial m u ltita s k re s u lts d ev ice s con trol perform ance w ith sin g le of the a part case. p h y sic al a n a ly tic a l term s the of exe cu tio n When m inim ize was 67 to m et hod and P rod uction used f o r e ffic ie n c y and control p o lic ie s in to in v e s tig a te d arm, a of best layout, assem bly could m u ltip le C hapter was when the tim e to to the number 4. An se q u e n c e not not was physical comparison in best sequence c e ll in The the t o m in im ize th e in recommended be observed the m u ltita s k number o f ro b o t arms. have c o n f l i c t s in d e c id in g effe ctive n ess th e ir robot com pletio n tru e managers u s u a l l y between assem bly c e l l the e ffe ctive n ess o b v io u s ly uses showed the 22 % c o n flic ts that amount of the c e ll assem bly the a nd the recommen ded. d es crib e d d efin e is is was one method m o d ific a tio n p h y sic al This %, reduced The c e l l ro b o tic an in com pletio n tim e . s tro n g ly c e ll. was m et ho d v is u a lly . is resu lted a B r a n c h and Bound than con trol c o n flic ts the more c o n s id e ra tio n e ffic ie n c y because complex s in g le Furtherm ore, by sho rtest th is to u tiliz a tio n assem ble and by m o dified c o n flic t system for a method obtained s lig h tly of o b v io u s ly c e ll. a s s e m b l y s e q u e n c e s h o u l d be d e f i n e d a lg o rith m scheme was t h e to systems. in t h i s in tro d u ce For research, the the the best ro b o tic com pletio n 65 tim e , mean factors in u tiliz a tio n As se e n in u tiliz a tio n lower The flo w tim e, a nd determ in in g was a Tab le value u tiliz a tio n m an a g e r effe c tiv e n e s s the facto r 5, a ru le s e ffe c tiv e n e s s . for ev a lu a tin g sequence generated w ith lo n g er value would sch eduling w ith have (lo w er (h ig h er system alg o rith m s or m et ho ds to an d h i g h e r e ffic ie n c y The the e ffic ie n c y . e ith e r a h igher tim e a com pletio n a shorter cho ice u tiliz a tio n ). ach iev e both sim u lta n e o u s ly . value between u tiliz a tio n ) higher m ajor system com pletio n system effe c tiv e n e s s were or tim e. higher and There a lower are few e ffe ctive n ess 66 REFERENCES CITED j 67 I. B a c k e r , T . P . , a n d G. M. S e a l I o n , "An A r c h i t e c t u r e R e a I _ T I me S o f t w a r e S y s t e m s " , IEEE S o f t w a r e , May 1 9 8 6 . 2 . D r e z n e r , Z . , an d S. a nd I n s e r t i o n P l a n s f o r Volume 16, No. 3 . 3 . C r o w l , D. MICRO, A u g u s t A ., "A 1985. for Y . N o f , "On O p t o m i z i n g B i n P i c k i n g Assemble R o b o ts " , I IE T r a n s a c t i o n s , R eal-Tim e Fortran E x ecu tiv e", IEEE 4. F a t h i , E . T . , E . Bosse a nd J , C a s e a u l t , "A D i s t r i b u t e d S y s te m f o r R e a l - T i m e A p p l i c a t i o n s " , IEEE MICRO, December 1987. 5 . H o s s e i n i , J . and N . F a r d , " A n a l y s i s a n d D e s i g n o f a R e a l-T im e M a n u fa c tu r in g Subsystem", P roceedings o f th e 8 t h A nn ual C o n f e r e n c e o f C o m p u te r s and I n d u s t r i a l E n g i n e e r i n g . 6 . M u t h , E . J . , " U s i n g a P e r s o n a l Co mp ut e r as a R e a l - T i m e M u ltita s k in g C o n tro lle r", P r o c e e d i n g s o f t h e 8 t h Annual C o n f e r e n c e o f C o m p u t e r s and I n d u s t r i a l E n g i n e e r i n g . 7. Pa i d y , S . and R . R e e v e , " T h e Use a nd D e v e l o p e m e n t P h y s i c a l S i m u l a t o r " , Annual S i m u l a t i o n Symposium. 8 . T a v o r a , C . J . , "A B a s i c T e c h n i q u e f o r D e s i g n " , C o m p u te r D e s i g n , O c t o b e r 1 9 8 0 . R eal-Tim e 9 . W a i n W r i g h t , R. E . , "A M i c r o c o m p u t e r - b a s e d S y s te m w i t h P u l s e - W i d t h M o d u l a t i o n C o n t r o l " , F e b ru a ry 1985. 10. Owen, 1985 T ., "Assembly 11. G roover, M.P., G r a w - H i I I , 19 8 6 . M. w ith Robots", Wei ss, Sy s te m Model Ro bo t IEEE MICRO, P re n tic e -H a ll "In d u s tria l of Inc., R o b o tics ", 12. B o o t h r o y d , G . , " E c o n o m ic s o f A s se m bl y S y s t e m s " , o f M a n u f a c t u r i n g S y st e m s I , 1 9 8 2 . Mc Journal 68 13 . A n d e r s o n , D . R . , D. I . Sw e e n e y , and T . A. W i l l i a m s , "An In tro d u c tio n to Management S c ien ce", 3rd E d itio n , West P u b l i s h i n g Company, S t . P a u l , M i n n . , 1 9 8 2 . 14. W h i t e , J . W . , " U t i l i t y and Sy ste ms S o f t w a r e " , C o m p u t i n g , Van N o s t r a n d R e i n h o l d Company, 1 9 8 3 . 15. M icro b o t 1984. Inc., "TeachMover User M anual" , Real M icrob ot T im e Inc., 16. Conway, R . W . , W. L . M a x w e ll and L . W. M i l l e r , " T h e o r y o f S c h e d u l i n g " , A d d i s o n - W e s l e y P u b l i s h i n g Company, 19 6 7. 17. S a v itz k y , S . R ., "R e a l-T im e M icro p ro cesso r Van N o s t r a n d R e i n h o l d Company, 1 9 8 5 . 18 . Bedworth, D. C o n tro l System s", D ., J . 1982. E. 19. Borland In te rn a tio n a l, I n t e r n a t i o n a l , I n c . , 1987. Bailey, Inc., "In te g ra te d "Turbo 20. M ic ro s o ft C o rp o ratio n , "M ic ro s o ft M i c r o s o f t C o r p o r a t i o n , 19 8 7 . System s", Prod uction BASIC", Borland Mac ro A s s e m b l e r 5 . 0 " , 21. G r o o v e r , M. P . , " A u t o m a t i o n P r o d u c t i o n S y s t e m s , and C o m p u te r I n t e g r a t e d M a n u f a c t u r i n g " , P r e n t i c e H a l l , 19 8 7. 69 APPENDICES 70 APPENDIX A B r a n c h and Bound T r e e s S i n g l e Case CHP # 2 CHP #1 CHP # 3 CHIP # 3 CHIP # 4 CHP # 4 CHP # 3 F. B O A R D F. B O A R D HOME PO S HOME PO S Figure 19 CHIP # 4 CHP #1 CHP # 4 CHP #1 CHIP # 3 F. B O A R D F, B O A R D F. B O A R D F. B O A R D HOME P OS. HOME POS CHIP # 3 Branch and Bound Tree for Chip #2 Robot A CHP # 2 CHP #1 CHP # 2 CHP # 4 CHP #1 CHP # 4 CHP # 2 CHP # 4 F. B O A R D F. B O A R D F. B O A R D HOME POS. Figure 20. HOME POS. CHP # 4 CHP # 4 F. B O A R D CHP #1 CHP # 2 CHP # 2 CHP #1 F. BO AR D F. BO A R D HOME POS. Branch and Bound Tree for Chip #3 Robot A IN) CHP # 4 CHP #1 CHP # 2 CHP # 3 CHP # 3 CHP # 2 F. B O A R D HOME P O S Figure 21. CHP # 3 CHP # 3 CHP * 1 CHP # 2 CHP # 3 CHP # 1 CHP # 2 CHP #1 F. B O A R D F. BOARD F. B O A R D F. BO AR D F. B O A R D HOME PO & HOfvE P O S HOME P O S Branch and Bound Tree for Chip #4 Robot A HOfvE PO S LU HOME POSITION PART CRCUtT BOARD 6. CHP #1 Figure 22. CHIP # 2 CHP # 3 CHP # 4 General Branch and Bound Tree for Robot B 75 APPENDIX B B r a n c h and Bound T r e e s M u ltita s k in g CHP 1 (Ti Figure 23. Multitask B . and B . Tree for pair 1,2 Figure 24. Multitask B . and B . Tree for pair 1,3 CHP 3 -4 CD Figure 25. Multitask B. and B . Tree for pair 1,4 ■v4 VD Figure 26. Multitask B . and B . Tree for pair 1,5 Q H> 1 CD O Figure 27. Multitask B. and B . Tree for pair 2,1 cup a Figure 28. Multitask B. and B. Tree for pair 3,1 OF> 3 82 Figure 29. Multitask B . and B . Tree for pair 4,1 Of 4 & BOAFD 03 CU Figure 30. Multitask B . and B . Tree for pair 5,1 APPENDIX C Com pletion Ti m e f o r Single Robot T r e e s 85 Table 10. Completion Time for Branches I and 2 - Robot B SEQUENCE oo ASSBvGLNG TME 02O3O4O5O6O0 137-11 0 O 1 O 2 O 3 O 5 O 4 O 6 O 0 13732 OO OO OO OO 1O2O4O3O5O6O0 1O 2 0 4 0 5 0 3 0 6 0 O 10 2 0 5 0 3 0 4 0 6 0 0 1 0 2 0 5O 4O 3 0 6 0 O 137-40 O 1 O O 1 3 O 2 O 4 O 5 O 6 O 0 OO 1 O 3 O 2 O 5 O 4 O 6 O 0 O O I 0 3 0 4 0 2 0 5 0 6 O O O O I O 3 O O O 1 3 0 0 0 10 3 Os 0 4 0 2 0 6 0 4 O 5 0 5 O 2 0 2 O 4 0 13635 13610 13668 13610 144.13 13743 6 O O 140.18 0 0 137.60 0 0 14057 6 86 Table 11. Completion Time for Branches 3 and 4 - Robot B SEQUENCE ASSEKrBUNG TME 0r> 1 O 4 O 2 O 3 O 5 O 6 O 0 O O 1 0 4 0 2 0 5 0 3 0 5 0 OO 1 O 4 0 3 0 OO 1 0 4 0 3 0 OO 1 0 4 0 5 0 O O 1 0 4 0 5 0 OO OO OO OO OO OO 13834 O 136*6 20 50 50 O 5 0 2 0 5 0 O 2 0 3 0 6 0 O 3 0 2 0 5 0 O 138.06 14&82 i365i 141-35 10 5 10 5 I O5 I 05 10 5 02 03 04 06 00 02 04 03 05 00 O3O2O4O6O0 0 3 0 4 0 2 0 6 0 0 04 02 03 06 00 138.79 iaaoo 1 0 5 0 4 0 3 0 2 0 6 0 0 142.2 139*1 nZoo 138.14 Table 12. Completion Time for Branches I and 2 SEQUENCE ASSB/BLNG TNE OO 1 0 2 0 3 0 4 0 5O 6 0 O OO 1 0 203CS>50 4 0 6 0 O 144.80 0 O 1 O 2 O 4 O 3 O 5 O 6 O 0 14269 O O 1 0 2 0 4 0 5 0 3 O6c t > 0 OO 1 0 2 0 5 0 3 0 4 0 6 0 O 14334 OO 1 0 2 0 5 0 4 0 3O6c>0 14269 OO OO OO OO OO OO 1O3O2O4O5O6O0 1 0 3 0 2 0 5 0 4 0 6 OO 1 0 3 0 4 0 2 0 5 0 6 0 0 1O 3 0 4 O 5 0 2 0 6 O O 1O 3 0 5 0 2 0 4 0 6 O O 10 3 0 5 0 4 0 2 0 6 0 0 Robot 143.08 145.06 140.43 141.15 139.78 137.79 14133 137.46 88 Table 13. Completion Time for Branches 3 and 4 - Robot A ASSBvBLNG TME SEQUENCE Oc^ OO OO OO OO OO 1040 1O 4 0 10 40 1d> 4 0 1<t> 4 0 1040 20 20 30 30 50 50 3tb 50 2O 50 20 30 50 30 50 20 30 2O 600 60 O 60 O 60 O 60 O 60 O OO1O5O2O3O4O6O0 O O 1d> 5 0 2 0 4 0 3 0 6 OO OO 1 0 5 0 3 0 2 0 4 0 6 0 0 OO 1 0 5 0 3 0 4 0 2 0 6 0 0 OO 1 0 5 0 4 0 2 0 3 0 6 0 0 O O 1O 5 O 4 O 3 O 2 O 6 O 0 140.44 14070 14070 13006 14077 139.03 142.54 14043 143.12 138.43 14049 138.43 89 APPENDIX D C o m p le tio n Tim e f o r D o u b le R obot T r e e s 90 Table 14. Completion Time for Pair (1,2) Multitasking SEQUENCE (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0.0) (0,0) (0,0) O O O O IP (1,2) (1,2) (1,2) (1,2) (1,2) (1,2) O (1,2) O (1,2) O (1,2) O (1,2) «t> (1,2) O (1,2) t p (3,4) O O (3,4) O (3,5) «t> O (3,5) O O (4,3) tt> O (4,3) t p O (4,5) t > O (4,5) O O (5,3) O O (5,3) O O (5,4) O cP (5,4) Cp ASSQveLNG TK E (5,6) (6,5) (4,6) (6,4) (5,6) (6,5) (3,6) (6,3) (4,6) (6,4) (3,6) (6,3) O (0,0) cP (0,0) O (0,0) (0,0) «t> (0,0) O (0,0) O (0,0) O (0,0) t > (0,0) O (0,0) O (0,0) iP (0,0) 8 2 .9 6 86.0 5 8 3 .5 4 8 6 .0 5 8 4 .3 5 8 7 .1 9 8 1 .3 3 8 3 .4 2 8 4 .3 5 8 4 .8 5 8 1 .9 8 82.31 Table 15. Completion Time for Pair (1,3) Multitasking ASSEMBLING TME SEQUENCE (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) «t> (1,3) Cp O (1.3) Cp (1,3) CP O (1,3) Cp O (1,3) Cp O (1,3) Cp (1.3) Cp C> (1,3) «P> O (1,3) Cp O (1,3) Cp Cp (1,3) O Cp (1,3) cp (2,4) (2,4) (2,5) (2,5) (4,2) (4,2) (4,5) (4,5) (5,2) (5,2) (5,4) (5.4) Cp Cp cp Cp Cp Cp Cp Cp Cp Cp Cp Cp (5,6) (6,5) (4,6) (6,4) (5,6) (6,5) (2,6) (6,2) (4,6) (6,4) (2,6) (6,2) Cp cp Cp Cp Cp Cp Cp Cp Cp Cp cp cp (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) 88.48 82.22 89.06 88.22 90.98 89.54 81.33 83.42 90.98 8 7 .2 0 81.32 81.65 92 Table 16. Completion Time for Pair (1,4) Multitasking ASSEkGLNG TivE SEQUENCE (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0.0) (0,0) (0,0) c> O O <t> O ct> «t> O O O tt> (0,0) O (1,4) (1,4) (1,4) (1,4) (1,4) (1,4) (1,4) (1.4) (1.4) (1,4) (1,4) (1,4) O O C> O O O (2,3) (2,3) (2,5) (2,5) (3,2) (3,2) (3,5) <=> (3,5) O (5,2) O (5,2) O (5,3) O (5,3) (5,6) (6,5) (3,6) (6,3) (5,6) O (6,5) O (2,6) <t> (6,2) O (3.6) O (6,3) O (2,6) O (6,2) O O O O (0,0) C> (0,0) ct> (0,0) (0,0) it> (0,0) O (0,0) (0,0) Ct> (0,0) O (0,0) O (0,0) O (0,0) t p (0,0) 88.31 88.22 89.0 6 88.22 89.92 88.9 0 83.54 86.05 89.92 86.14 83.07 83.57 Table 17. Completion Time for Pair (1,5) Multitasking ASSEkGUNG TKG SEQUB\ICE (2.3) (2.3) O O Ct> (2.4) O tt> (2.4) O tO (3.2) (o.o) <o (1,5) t b (3.2) (0,0) t o (1,5) O (3.4) (0,0) t o (1,5) t o (3.4) (0,0) t o (1,5) t o (4.2) (0,0) t o (1,5) t o (4.2) (0,0) t o (1,5) t o (4.3) (0,0) t o (1,5) O (4.3) (0,0) (0,0) (0,0) (0,0) (0,0) (1,5) (1,5) (1,5) (1,5) (1,5) O IO tO tO O tO CO <0 O O tO tO tO (4,6) (6,4) (3,6) (6,3) (4,6) (6,4) (2,6) (6,2) (3,6) (6,3) (2,6) (6,2) O O O tO tO CO O O tO tO CO tO (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) 88.31 88.22 88.48 88.22 90.15 89.13 83.53 86.05 90.15 88.70 83.68 86.94 Table 18. Completion Time for Pair (2,1) Multitasking SEQUENCE (0.0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0.0) (0,0) O O O CO CO CO CO CO CO O O CO (2,1) (2.1) (2,1) (2,1) (2.1) (2,1) (2,1) (2.1) (2,1) (2,1) (2,1) (2,1) lt> O O CO CO O tO CO CO CO CO CO (3,4) (3,4) (3,5) (3,5) (4,3) (4,3) (4,5) (4,5) (5,3) (5,3) (5,4) (5.4) ASSBveLMG TKE Ct> «t> «t> CO CO CO CO tO O CO CO CO (5,6) (6,5) (4,6) (6,4) (5,6) (6,5) (3,6) (6,3) (4,6) (6,4) (3,6) (6,3) «t> O CO tO tO O CO CO CO O CO CO (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) 81.0 3 84.12 81.01 84.12 80.72 83.56 78.74 80.83 80.72 81.22 78.74 79.07 95 Table 19. Completion Time for Pair (3,1) Multitasking SEQUENCE (0,0) O (0,0) O (0,0) (0,0) (0,0) (0,0) (0.0) (0,0) (0,0) (0,0) (0,0) (0,0) (3,1) «t> (2.4) (3,1) «t> (2.4) t b (3,1) O (2.5) O (3,1) O (2.5) O (3,1) O (4.2) O (3,1) O (4.2) O (3.1) O (4.5) O (3,1) O (4.5) O (3,1) cp (5.2) O (3,1) O (5.2) O (3,1) O (5.4) O (3,1) cp (5.4) ASSe^BLNG TK E O (5,6) «P (0,0) I P (6,5) Cp (0,0) Cp (4,6) O (0,0) IP (6,4) IP (0,0) IP (5,6) O (0,0) Cp (6,5) I P (0,0) I P (2,6) O (0,0) I P (6,2) Cp (0,0) IP (4,6) IP (0,0) O (6,4) O (0,0) IP (2,6) IP (0,0) O (6,2) IP (0,0) 84.93 84.67 85.51 84.67 87.02 85.58 79.77 81.86 87.02 83.2 4 78.74 79.07 96 Table 20. Completion Time for Pair (4,1) Multitasking ASSBvBUNG T K E SEQUENCE (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0.0) (0,0) (0,0) O O O O O O O O O O O (4,1) (4,1) (4,1) (4.1) (4,1) (4,1) (4,1) (4,1) (4.1) (4,1) (4,1) (4,1) O O O O (2.3) (2.3) (2.5) (2.5) (3.2) O (3.2) O (3.5) C> (3.5) O (5.2) O (5.2) «t> (5.3) O (5.3) O O O O O O O O O O O (5,6) (6,5) (3 ,6 ) (6,3) (5,6) (6,5) (2,6) (6,2) (3,6) (6,3) (2,6) (6,2) O O O O O O O O O *t> O O (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) 81.97 80.63 82.67 81.88 87.02 86.00 80.11 82.62 87.02 83.24 80.72 81.22 97 Table 21. Completion Time for Pair (5,1) Multitasking SEQUENCE (0,0) O (5.1) (0,0) O (5.1) (0.0) O (5.1) (0,0) O (5,1) (0,0) O (5.1) (0,0) Cb (5,1) (0,0) Cb (5,1) (0,0) Cb (5,1) (0,0) Cb (5,1) (0,0) Cb (5.1) (0,0) Cb (5,1) (0,0) Cb (5.1) O O Cb «b> Cb Cb Cb Cb Cb Cb Cb (2,3) (2,3) (2,4) (2,4) (3,2) (3,2) (3,4) (3,4) (4,2) (4,2) (4,3) (4.3) ASSBvGUNG JME Cb O O O O Cb O Cb Cb Cb Cb Cb (4,6) (6,4) (3.6) (6,3) (4,6) (6,4) (2,6) (6,2) (3,6) (6,3) (2,6) (6,2) O O Cb Cb O Cb £> Cb Cb Cb Cb Cb (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (0.0) (0,0) 81.68 81.59 81.85 81.5 4 87.02 86.0 0 80.1 3 82.65 87.02 85.58 80.72 83.98 98 APPENDIX E S o u r c e Code f o r P ro g ra m s "U LL", "Ulll", "DLL", "DLL I " 99 Figure 31. 100 HO 120 130 140 150 160 170 180 190 COLOR 1 5 ,1 ,1 'U L L .BAS DEFINT A -Z DIM L (7 ) ' OPEN nCOMl: 9 6 0 0 ,N ,8 ,I ,RS.DS.CS" AS #1 CLS: INPUT"I NPUT F IL E ";A $ OPEN A$ FOR OUTPUT AS #2 CLS.-LOCATE 1 0,20 PRINT "CLEAR ROBOT MEMORY BY PRESSING LOCATE 1 4,20 200 205 210 220 Source code for program "ULL" 'CLEAR' INPUT "ENTER # OF MOVES RECORDED WHEN DONE (0 PR INT#I , "PRESET":INPUT#I , I PRINT #l,"@QOUMP" : INPUT # 1 , SHAKE & 'ZERO' " > ANS > 5 3)? " , NUM.MOVES ' 230 FOR LINUM = 0 TO 52 240 FOR Y = 0 TO 7 250 INPUT # 1 , L (Y ) 260 IF (Y = 0) THEN L (Y ) = L(Y)+(TOT.MOVES) 270 IF ( L I NUM < NUM.MOVES) THEN WRITE # 2 , L (Y ) 280 NEXT Y 290 NEXT LINUM 300 ' 310 WRITE # 2 , LAST.MOV+I 320 WRITE # 2 , 2307 330 WRITE # 2 , LAST.MOV+I 340 FOR I = I TO 5 350 WRITE # 2 , 0 360 NEXT I 370 PRINTmTHE END" 380 END : LAST.MOV = L(O ) 100 Figure 32. Source code for program "DLL I" 100 HO 120 130 COLOR 1 5 ,1 ,1 DEFINT A -Z DIM L (7 ) ' ' ULL. BAS 140 150 160 170 OPEN "COM2:9600,N ,8 , I ,RS,DS,CS" AS #1 CLS: INPUT"I NPUT F IL E ";A $ OPEN A$ FOR OUTPUT AS #2 CLS: LOCATE 1 0,20 180 PRINT "CLEAR ROBOT MEMORY BY PRESSING 190 LOCATE 14,20 200 210 220 'CLEAR' INPUT "ENTER # OF MOVES RECORDED WHEN DONE (0 PRINT #1,"@QDUMP" : INPUT # 1 , SHAKE & 'ZERO' " > ANS > 53)? " , NUM.MOVES ' 230 FOR LINUM = 0 TO 52 240 FOR Y = 0 TO 7 250 INPUT # 1 , L (Y ) 260 IF (Y = 0) THEN L (Y ) = L(Y)+(TOT.MOVES) 270 IF ( L I NUM < NUM.MOVES) THEN WRITE # 2 , L (Y ) 280 NEXT Y 290 NEXT LINUM 300 ' 310 WRITE # 2 , LAST.MOV+I 320 WRITE # 2 , 2307 330 WRITE # 2 , LAST.MOV+I 340 FOR I = I TO 5 350 WRITE # 2 , 0 360 NEXT I 370 PRINTmTHE END" 380 END : LAST.MOV = L(O) 101 Figure 33. Source code for program "DLL" IO COLOR 1 5 ,1 ,1 20 DEFINT A -Z 30 DIM L (7 ) 50 ' 60 OPEN " C 0 M 1 :9 6 0 0 ,N ,8 ,I ,RS.DS.CS" AS #1 70 ' 80 ' --------- U p -lo a d in g from ro b o t t o f i l e s : 90 PRINT # I , "@RESET": I NPUT#I , I 100 CLS 150 INPUT "F IL E ";F $ 340 OPEN F$ FOR INPUT AS #2 350 WHILE (EOF(Z)=O) 360 INPUT #2 , L I ,L Z ,L 3 ,L 4 ,L 5 ,L 6 ,L 7 ,L 8 370 PR INT#I , "0QW RITE",LI ,L 2 ,L 3 ,L 4 ,L 5 ,L 6 ,L 7 ,L 8 :IN P U T # I , I 380 WEND ‘ 390 ' 400 ' > » » » 410 ' 420 430 440 450 EXECUTION ROUTINE « « < « < < « « PRI NT#I , "@RUN":INPUT#I , I CLOSE #1 CLOSE #2 END 102 Figure 34. Source code for program "DLL I" 10 COLOR 1 5 ,1 ,1 20 DEFINT A-Z 30 DIM L (7 ) 50 ' 60 OPEN "COM2:9600,N ,8 , I ,RS.DS.CS" AS #1 70 ' 80 ' --------- U p -lo a d in g from ro b o t t o f i l e s : 90 INPUT " F IL E " ;F $ 100 CLS 150 PR I NT#I , "@RESET": I NPUT#I , I 340 OPEN F$ FOR INPUT AS #2 350 WHILE (EOF(Z)=O) 360 370 380 390 400 410 420 430 440 450 INPUT #2 , L I ,L 2 ,L 3 ,L 4 ,L 5 ,L 6 ,L 7 ,L 8 P R IN T # !," @ Q W R IT E " ,L I,L 2 ,L 3 ,L 4 ,L 5 ,L 6 ,L 7 ,L 8 :IN P U T # !,I WEND ' ' » » > > > EXECUTION ROUTINE « < « « « « « ' P R IN T#!,"@ R U N ":IN P U T#!,I CLOSE #1 CLOSE #2 END ,1 103 APPENDIX F S o u r c e Code f o r P r o g ra m " T E S IN 1 " I04 Figure 35. Source code for program "TESiNi" 70 80 100 110 COM(I) ON 'Scoml 4000 KEY OFF:CLSrCOLOR 15,1 DEFINT A-Z 115 120 125 130 136 O PEN"COM 2:9600,N,8,I ,RS.DS.CS" AS #3 OPENmCOM1:9 6 0 0 ,N ,8 , 1,R S,O S ,CS"AS #1 INPUT"I NPUT No. OF CYCLES";N FOR C=I TO N CLS 137 138 140 150 160 170 180 190 195 200 300 310 320 330 1140 1150 1160 1170 1180 1220 1225 1230 1390 1400 1410 1415 1500 1550 1560 1570 1580 1620 1625 1630 PRINT # I , "PRESET":I NPUT # 1 , IrP R IN T # 3 , "PRESET":INPUT # 3 ,1 LOCATE 4 , IO rP R INT"ASSEMBLIBNG BOARD No. : " ; C OPEN "aO"FOR INPUT AS #2 WHILE EO F(2)=0 INPUT # 2 , L I ,L 2 ,L 3 ,L 4 ,L 5 ,L 6 ,L 7 ,L 8 PRINT # 1 ," P Q W R IT E " ;L I;L 2 ;L 3 ;L 4 ;L 5 ;L 6 ;L 7 ;L 8 :IN P U T # !, I WEND PR INT#I," p R U N " :INPUT#I , I LOCATE 8 , IOrPRINT "PLACING BOARD" CLOSE #2 T IM E $ = "0 0 :0 0:00 " T$=RIG HT$(TIM E$,2) IF T$="28" THEN 1140 GOTO 310 OPEN "b3"FOR INPUT AS #2 WHILE EO F(2)=0 INPUT # 2 ,L 1 ,L 2 ,L 3 ,L 4 ,L 5 ,L 6 ,L 7 ,L 8 PRINT # 3 ,"P Q W R IT E " ;L 1 ;L 2 ;L 3 ;L 4 ;L 5 ;L 6 ;L 7 ;L 8 :IN P U T # 3 ,I WEND PR INT#3, "PRUN": I NPUT#3, I LOCATE 1 0 ,10:PRINT"PLACING CHIP # I" CLOSE #2 T IM E $ = "0 0 :0 0 :0 0 " T$=RIG H T$(TIM E$,2) IF T$="22" THEN 1500 GOTO 1400 PRINT # I , "PRESET":I NPUT # 1 , 1 : OPEN "al"FOR INPUT AS #2 WHILE EO F(2)=0 INPUT # 2 ,L 1 ,L 2 ,L 3 ,L 4 ,L 5 ,L 6 ,L 7 ,L 8 PRINT # l," p Q W R IT E " ;L l;L 2 ;L 3 ;L 4 ;L 5 ;L 6 ;L 7 ;L 8 rIN P U T # l,I WEND PR INT#I , "PRUN": I NPUT#I , I LOCATE 1 2 ,10:PRINT"PLACING CHIP # 2" CLOSE #2 '0 1 IZ .b a s 105 1640 1890 1900 1910 1915 1920 1930 1940 1950 i9 6 0 2010 2015 2020 2030 3000 3010 3020 3030 3040 3050 3060 3070 3080 3120 3125 3130 3140 3150 3160 3170 3180 3190 3200 3210 3220 3230 3240 3250 3280 3290 F ig u r e 3 5 . ( C o n t in u e d ) 'STOP T IM E $ = "0 0 :0 0 :0 0 " T$=RIG HT$(TIM E$,2) IF T$="27" THEN 1920 GOTO 1900 PRINT # 3 , "©RESET":INPUT # 3,I:O P E N ”b5"FOR INPUT AS #2 WHILE EOF(2)=0 INPUT # 2 ,L 1 ,L 2 ,L 3 ,L 4 ,L 5 ,L 6 .L 7 ,L 8 PRINT # 3,"@ Q W R IT E ";L 1 ;L 2 ;L 3 ;L 4 ;L 5 ;L 6 ;L 7 ;L 8 :IN P U T # 3 ,I WEND PR INT#3, "@RUN": I NPUT#3, I LOCATE 1 4 ,10:PRINT"PLACING CHIP # 3" CLOSE #2 'STOP T IM E $ = "0 0 :0 0 :0 0 " T$=RIG H T$(TIM E$,2) IF T$="22" THEN 3040 GOTO 3010 PRINT # I , "PRESET": I NPUT # 1 , IrOPEN "a5"FOR INPUT AS #2 WHILE EO F(2)=0 INPUT # 2 , L I ,L 2 ,L 3 ,L 4 ,L 5 ,L 6 ,L 7 ,L 8 PRINT # 1 ,"@ Q W R IT E ";L 1;L 2;L 3;L 4;L 5;L 6;L 7;L 8:IN P U T #1 , I WEND P R INT#I ,"©RUN":INPUT#I , I LOCATE 1 6 , IOrPRINTnPLACING CHIP # 4" CLOSE #2 T IM E $ = "0 0 :0 0 :0 0 " T$=RIG H T$(TIM E$,2) IF T$="22" THEN 3180 GOTO 3150 PRINT # 3 , "©RESET":INPUT # 3 , IrOPEN "b6"FOR INPUT AS #2 WHILE EO F(2)=0 INPUT # 2 ,L 1 ,L 2 ,L 3 ,L 4 ,L 5 ,L 6 ,L 7 ,L 8 PRINT # 3 ,"© Q W R IT E " ;L 1 ;L 2 ;L 3 ;L 4 ;L 5 ;L 6 ;L 7 ;L 8 :IN P U T # 3 ,I WEND PR INT#3, "©RUN"r I NPUT#3, I LOCATE 1 8 , IOrPRINTnREMOVING FINISHED BOARD" CLOSE #2 T IM E $ = " 0 0 :0 0 :0 0 " :'P R IN T rPRINT" SETTING NEXT CYCLE" T $= R IG H T $(T IM E $,2): LOCATE 2 2 , IOrPRINT TIME$ 106 3300 3310 3320 3330 3660 5140 5150 5160 F ig u r e 3 5 . (C o n t in u e d ) IF T$="33" THEN 3660 GOTO 3290 P R INT#I , "@RESET": I NPUT#I , I PR INT#3, "@RESET": IN P U T#3,I NEXT C CLOSE #1 CLOSE #3 END MONTANA STATE UNIVERSITY LIBRARIES 762 10142971 8