S NE T
E C H N I C A L
N
O T E
Design, Simulation and Operation of Task-oriented Multi-Robot Applications with MATLAB/Stateflow Birger Freymann*, Sven Pawletta, Artur Schmidt, Thorsten Pawletta Hochschule Wismar – University of Applied Sciences: Technology, Business and Design, Research Group Computational Engineering and Automation, Philipp-Müller-Straße 14, 23966 Wismar, Germany; *
[email protected] 6LPXODWLRQ1RWHV(XURSH61( '2,VQHWQ 5HFHLYHG0D\5HYLVHG-XQH $FFHSWHG-XQH
Abstract. Robot programming software is mostly proprietary and cannot be used for other manufacturers’ robots. Nevertheless, there is a desire to allow interactions between robots being developed by different manufacturers in order to set up a Multi-Robot System (MRS). An MRS refers to a team consisting of interacting industrial robots which share skills to increase performance. The mapping of classical control development methods for Single-Robot Systems (SRSs) to MRSs is difficult. Based on a classification of interactions within MRSs, a TaskOriented Control (TOC) approach is suggested and examined. Furthermore, with Simulation Based Control (SBC) an approach for continuous development of event-driven multi-robot controls according to the Rapid Control Prototyping (RCP) is presented. SBC supports TOC and the mapping of interactions via tasks. Based on SBC and MATLAB/Stateflow a prototypical, task-oriented model library for interacting robots is developed and tested.
Introduction 1HZILHOGVIRUDSSOLHGURERWLFVDUHPDGHXSFRQWLQXRXV O\VRPHWKLQJZKLFKLQFUHDVHVWKHQHHGIRUUHVHDUFK)RU H[DPSOH FXUUHQW UHVHDUFK IRFXV RQ PRELOH URERWLFV VHUYLFHURERWLFVDQGKXPDQURERWLQWHUDFWLRQLVUHIHUUHG WRDVCollaborative Robots&RERWV >@,QPDQXIDFWXU LQJLQGXVWULDOURERWVDUHRIWHQXVHGDVIOH[LEOHKDQGOLQJ DQGSURGXFWLRQXQLWV ,QWKHFRQWH[WRI,QGXVWU\WKHUHLVDGHVLUHIRULQ WHOOLJHQW DQG QHWZRUNLQJ IDFWRULHV >@ $PRQJ RWKHU WKLQJVWKHVHDUHFKDUDFWHUL]HGE\DIOH[LEOHDQGYHUVDWLOH SURGXFWLRQRILQGLYLGXDOSDUWVXSWRPDVVSURGXFWLRQ$ Single-Robot System656 PRVWO\GRHVQRWKDYHVXIIL
FLHQWVNLOOVWRPHHWWKHVHUHTXLUHPHQWV7KHUHIRUHMultiRobot Systems056V DUHSURSRVHGDVDNH\WHFKQRORJ\ ,Q DQ 056 WKH URERW V\VWHPV ZKLFK DUH LQYROYHG IRUPDWHDPE\VKDULQJVNLOOVLQRUGHUWRHQKDQFHSHUIRU PDQFH ,Q WKLV ZRUN DQ 056 FRQVLVWV RI FRPPHUFLDOO\ DYDLODEOH656VZLWKDVKDUHGFHQWUDOFRQWUROFRPSXWHU ,QFRQWUDVWWRDQ656WKHLQYROYHGURERWV\VWHPVIRU DQ 056 DOZD\V LQIOXHQFH HDFK RWKHU ZKLFK LV FDOOHG LQWHUDFWLRQ2QHPRWLYDWLRQIRUWKHXVHRIDQ056LVWR LQFUHDVHWKHHIILFLHQF\RIWKHURERWWHDPWKXVUHGXFLQJ WKH SURGXFWLRQ WLPH DQG FRVWV 1HYHUWKHOHVV WKH XVHRI DQ 056 SUHVHQWV QHZ FKDOOHQJHV EHFDXVH FODVVLFDO LQGXVWULDOURERWVDQGWKHLUVRIWZDUHWRROVDUHXVXDOO\QRW GHVLJQHGWREHXVHGLQDWHDP )RUDQ656GLIIHUHQWGHVLJQPHWKRGVIRUFRQWUROGH YHORSPHQWDUHNQRZQ>@EXWWKHWUDQVIHUWRDQ056LV GLIILFXOW>@,QSDUWLFXODUWKHXVHRIURERWVIURPGLIIHU HQWPDQXIDFWXUHVUHSUHVHQWVDPDMRUFKDOOHQJH,QGXVWUL DO URERWV DUH PRVWO\ SURJUDPPHG LQ SURSULHWDU\ GHYHO RSPHQWHQYLURQPHQWVZKLFKGRQRWVXSSRUWWKLUGSDUW\ URERWV6RPHRIWKHVHHQYLURQPHQWVDUHDOUHDG\VXSSRUW LQJ D FRQWURO GHYHORSPHQW IRU 056V EXW XVXDOO\ RQO\ IRU VPDOO WHDP VL]HV D OLPLWHG QXPEHU RI SUHGHILQHG LQWHUDFWLRQVDQGH[FOXVLYHO\IRUURERWVRIWKHSDUWLFXODU PDQXIDFWXUH$OVRWKHLQWHJUDWLRQRIVHQVRUVDQGDFWXD WRUVLVXVXDOO\UHVWULFWHGWRYHQGRUVSHFLILFSURGXFWV 3URSULHWDU\GHYHORSPHQWHQYLURQPHQWVDUHEDVHGRQ YHQGRUVSHFLILF URERW SURJUDPPLQJ ODQJXDJHV $W WHPSWV WR VWDQGDUGL]H URERWLF SURJUDPPLQJ ODQJXDJHV VXFK DV WKH Industrial Robot Language ,5/ DQG LWV VXFFHVVRU WKH Programming Language for Robots 3/5 DUH XVXDOO\ LJQRUHG E\ URERW PDQXIDFWXUHV +RZHYHU WKH RQJRLQJ VSUHDG RI WKH Robot Operating System 526 >@ DQ RSHQ VRXUFH SURMHFW WR SURYLGH FURVVYHQGRUURERWSURJUDPPLQJDQGSURFHVVYLVXDOL]D WLRQVKRZVWKDWWKHUHLVDQXQEURNHQLQWHUHVWLQXQLILHG GHYHORSPHQWPHWKRGVDQGHQYLURQPHQWV SNE 26(2) – 6/2016 83
Freymann et al.
Task-oriented Multi-Robot Applications with MATLAB/Stateflow
,QWKHFRQWH[WRIFRQWUROGHYHORSPHQWGLIIHUHQWGH PDQGV H[LVW >@ ,Q WKLV ZRUN WKH IROORZLQJ LVVXHV ZLOO EH FRQVLGHUHG LQ PRUH GHWDLO L IOH[LEOH DGDSWDWLRQ WR QHZSUREOHPV DQGTXLFNFRPPLVVLRQLQJLL WHVWDELOLW\ PDLQWDLQDELOLW\ LLL FURVVYHQGRU LQWHUDFWLRQV EHWZHHQ URERWVDQGLY VXSSRUWRIYHQGRULQGHSHQGHQWKDUGZDUH DQGVRIWZDUH ,Q RUGHU WR PHHW WKHVH GHPDQGV WKH VRIWZDUH DQG FRQFHSWXDO IRXQGDWLRQ DUH SUHVHQWHG $W ILUVW D QRQ YHQGRUVSHFLILF FRQWURO RI LQGXVWULDO URERWV LV VKRZQ XVLQJ WKH Robotic Control & Visualization 5&9 7RROER[ IRU 0$7/$% DV PLGGOHZDUH ZLWK DVVRFLDWHG LQWHUIDFH 7KHQ WKH FRQFHSW RI Task-Oriented Control 72& GHYHORSPHQW >@ LV GHVFULEHG IRU DQ 656 )RU 056 FRQWURO GHYHORSPHQW WKH Simulation Based Control6%& SURFHGXUHPRGHOLVSURSRVHGZKLFKIROORZV WKHRapid Control Prototyping5&3 DSSURDFKE\$EHO >@6%&HQDEOHVFRQWLQXRXVFRQWUROGHYHORSPHQWIURP WKH HDUO\ SODQQLQJ SKDVH WR WKH RSHUDWLRQDO FRQWURO XVH DQG GHILQHV D IUDPHZRUN IRU SUDFWLFDO LPSOHPHQWDWLRQ ,QDGGLWLRQWKHLQYHVWLJDWLRQVLQ>±@VKRZWKDWWKH 6%&DSSURDFKVXSSRUWV72&)XUWKHUPRUHDFODVVLILFD WLRQ RI LQWHUDFWLRQV EHWZHHQ LQGXVWULDO URERWV LV LQWUR GXFHG EDVHG RQ >@ %DVHG RQ D FDVH VWXG\ WKH PDS SLQJ RI LQWHUDFWLRQV WR WDVNV LV H[DPLQHG 7KH LPSOH PHQWDWLRQ RI WKH 6%& DSSURDFK LV UHDOL]HG LQ WKH 0$7/$%6WDWHIORZHQYLURQPHQW
1 Fundamentals ,QWKLVVHFWLRQWKHQHFHVVDU\EDVLFVIRUWKHGHYHORSPHQW RI D Multi-Robot System 056 FRQWURO DUH H[SODLQHG 7KH PHWKRGV GHVFULEHG DQG WKH WRROV DUH DOUHDG\ XVHG IRUSingle-Robot Systems656V DQGZLOOEHDSSOLHGWR 056V 1.1 Robotic Control & Visualization Toolbox for MATLAB/Simulink $V PHQWLRQHG EHIRUH WKH SURJUDPPLQJ RI URERWLF V\V WHPV LV DIIHFWHG E\ YHQGRU GHSHQGHQW ODQJXDJHV DQG SURSULHWDU\ GHYHORSPHQW HQYLURQPHQWV ([LVWLQJ VWDQG DUGVDUHPRVWO\LJQRUHGE\PDQXIDFWXUHUVZKLFKPDNHV FRQWUROGHYHORSPHQWIRUPXOWLURERWFRQWUROVGLIILFXOWRU HYHQLPSRVVLEOH,QHQJLQHHULQJFRQWUROGHYHORSPHQWLV RIWHQ DVVRFLDWHG ZLWK Scientific and Technical Computing Environments6&(V VXFKDV0$7/$%7RFORVH WKH JDS EHWZHHQ YHQGRUVSHFLILF URERWLF HQYLURQPHQWV DQGFRPPRQ6&(VWKHRobotic Control & Visualization 5&9 7RROER[IRU0$7/$%6LPXOLQNZDVGHYHORSHG >@ 84 SNE 26(2) – 6/2016
TN
7KH 5&9 7RROER[ FRQVLVWV RI WKUHH PRGXOHV L D VHW RI JHQHUDOL]HG URERWRULHQWHG 0$7/$% IXQFWLRQV LL D VHW RI 0$7/$% IXQFWLRQV IRU SURFHVV YLVXDOL]D WLRQ DQG LLL URERWVSHFLILF FRPPDQG LQWHUSUHWHUV 7KH EDVLF VWUXFWXUH RI DQ 5&9 EDVHG FRQWURO LV VKRZQ LQ )LJXUH 7KH Control PC UXQV D 0$7/$% LQVWDQFH ZKLFK SURFHVVHV WKH FRQWURO SURJUDP RQ WKH EDVLV RI IXQFWLRQV RI WKH PRGXOH L 7KH Visualization PC UXQV DQRWKHU LQVWDQFH RI 0$7/$% DQG YLVXDOL]HV WKH SUR FHVVEDVHGRQIXQFWLRQVRIWKHPRGXOHLL 7KHFRPPX QLFDWLRQZLWKUHDOURERWVLVSHUIRUPHGE\WKHURERWFRQ WUROOHUVDQGVSHFLILFFRPPDQGLQWHUSUHWHUVDFFRUGLQJWR WKH PRGXOH LLL $ GHWDLOHG GHVFULSWLRQ RI WKH 5&9 7RROER[FDQEHIRXQGLQ>@
Figure 1: Principle structure of an RCV-based multi-robot application.
,W VKRXOG EH QRWHG WKDW WKH XVH RI DQ 6&( VXFK DV 0$7/$% VLPSOLILHV WKH LQWHJUDWLRQ RI DGGLWLRQDO VHQ VRUVDQGDFWXDWRUVWRWKHFRQWURO 1.2 Task-oriented control design Task-Oriented Control 72& GHVLJQ >@ LV DOUHDG\ NQRZQ IRU656V >@7KH SULQFLSOH LV WRGLYLGH WKH FRPSOH[ FRQWURO SUREOHPV LQWR D VHW RI WDVNV DQG WKHLU FRXSOLQJV 7DVNVDUHORJLFDOPRVWO\LQGHSHQGHQWDEVWUDFWRSHU DWLRQV 2QFH LGHQWLILHG WDVNV DUH FRXSOHG WRJHWKHU WR PDS WKH FRQWURO SUREOHP &RXSOLQJV FDQEH FDUULHGRXW VHTXHQWLDOO\ FRQGLWLRQDOO\ RU LQ D ORRS 6RPH SUREOHP GHVFULSWLRQV PHDQ LW LV QHFHVVDU\ WR XVH WDVNV PXOWLSOH WLPHVRUWRZRUNWKHPRIILQSDUDOOHO7KHJHQHUDOSUR FHGXUH FRUUHVSRQGV WR WKH KXPDQ ZD\ RI WKLQNLQJ LQ VROYLQJFRPSOH[SUREOHPV )LJXUHVKRZVWKH72&DSSURDFKRQWKHH[DPSOHRI D WUDQVSRUWDWLRQ SUREOHP 7KH SUREOHP FDQ EH GLYLGHG GHFRPSRVLWLRQ LQWRWKHWZRWDVNVPickPartDQGPlacePart
TN
Freymann et al.
Task-oriented Multi-Robot Applications with MATLAB/Stateflow
Figure 2: Tasks and subtasks of transport problem.
7KHWDVNPickPartVSHFLILHVWKHJUDVSLQJRIDFRPSRQHQW DWDGHILQHGSRVLWLRQDQGWKHWDVNPlacePartFRUUHVSRQGV WRSODFHPHQWDWDQHZORFDWLRQ7KHWDVNPickPartKDVWR EH H[HFXWHG EHIRUH WKH WDVN PlacePart ZKLFK FRUUH VSRQGV WR D VHULDO H[HFXWLRQ )XUWKHUPRUH WKH ILJXUH VKRZVWKDWDWDVNFDQEHFRPSRVHGRIRWKHUVXE WDVNV )RUH[DPSOHWKHWDVNPickPartFDQEHGHVFULEHGE\WKH VHULDOOLQNLQJRIWKHWDVNVMove0 GripperAction* DQGMove0 $FFRUGLQJWR>@72&VFDQEHUHDOL]HG XVLQJ Top Down GHFRPSRVLWLRQ RU Bottom Up FRP SRVLWLRQ SULQFLSOHV $ 72& VSHFLILFDWLRQ LV QRW GLUHFWO\ H[HFXWDEOH EH FDXVHWDVNVDUHDQDEVWUDFWGHVFULSWLRQRIRSHUDWLRQV$ WDVNGHVFULEHVµwhat¶EXWQRWµhow¶VRPHWKLQJKDVWREH VROYHG 7R SHUIRUP WDVNV D WUDQVIRUPDWLRQ PHWKRG LV UHTXLUHGDVVKRZQVFKHPDWLFDOO\LQ)LJXUH
7KLV KDV WKH DGYDQWDJH WKDW FXUUHQW SURFHVV VWDWHV FDQEHXVHGLQVWHDGRIWKHZRUOGPRGHO7KXVUHDFWLYH FRQWUROV FDQ EH UHDOL]HG ZKLFK FDQ IOH[LEO\ DGDSW WR FXUUHQW SURFHVV VWDWHV DQG IRU H[DPSOH UHVSRQG WR IDXOWV E\ DOWHUQDWLYH SURFHVVLQJ RI LQGLYLGXDO WDVNV +HUHWKHWDVNWUDQVIRUPDWLRQKDVWRNHHSSDFHZLWKWKH SURFHVVG\QDPLFV $QRWKHUH[WHQVLRQRIFODVVLFDO72&LVSDUDPHWHUL]HG WDVNV 7KHVH DOORZ WKH JURXSLQJ RI VLPLODU WDVNV LQWR D FRPPRQ WDVN 7KXV WKH UHXVDELOLW\ LQ UHSRVLWRULHV LQ FUHDVHV ZKLFK DOVR UHGXFHV GHYHORSPHQW WLPHV FRVWV DQGHUURUV 1.3 Simulation based control approach 7KHSimulation Based Control6%& DSSURDFK>@LVD PHWKRGRORJ\ IRU FRQWURO GHYHORSPHQW DQG GHILQHV D IUDPHZRUNIRUSUDFWLFDOLPSOHPHQWDWLRQ7KHPDLQJRDO RI 6%& LV WR SURYLGH D V\VWHPDWLF ZD\ IRURapid Control Prototyping5&3 >@ $FFRUGLQJO\ D JUDGXDO DQG FRQVLVWHQW PRGHOEDVHG FRQWURO GHYHORSPHQW IURP WKH HDUO\ SODQQLQJ SKDVH WR UHDORSHUDWLRQDOXVHLVVXSSRUWHG)LJXUH 7KHFRQWURO GHVLJQV FDQ EH VXFFHVVLYHO\ WHVWHG E\ VLPXODWLRQ DQG VXSSOHPHQWHG E\ DGGLWLRQDO UHTXLUHPHQWV 7R HQDEOH WKLV IRUP RI VWHSZLVH FRQWURO GHYHORSPHQW DQ DSSUR SULDWHVRIWZDUHHQYLURQPHQWRUWRROFKDLQLVUHTXLUHG
Figure 3: Processing of a TOC according to [8].
$OOWDVNVKDYHWREHWUDQVIRUPHGLQWRFRQWUROFRPPDQGV LQRUGHUWRH[HFXWHWKHP7RSHUIRUPWKHWUDQVIRUPDWLRQ LW LV HLWKHU SRVVLEOH WR XVH D ZRUOG PRGHO RU D SURFHVV PRGHO (DUO\ 72&V XVHG D FRPSLODWLRQ DSSURDFK ZKLFK SURGXFHVDQH[HFXWDEOHFRQWUROSURJUDPLQDGYDQFH7KH WUDQVIRUPDWLRQ ZDV FDUULHG RXW EHIRUH WKH FRPPLVVLRQ LQJ E\ XVLQJ D ZRUOG PRGHO 0RUH UHFHQW ZRUNV >@ XQGHUVWDQG WKH WUDQVIRUPDWLRQ VWHS DV D IXQFWLRQ RI WKH RSHUDWLRQDOFRQWURO
Figure 4: The SBC approach.
7KHFRQVHTXHQWXVDJHRIVLPXODWLRQLQDOOSKDVHVRIWKH GHYHORSPHQW SURFHVV LV NH\ IRU GHWHFWLQJ GHVLJQ HUURUV DV HDUO\ DV SRVVLEOH 7KH Simulation Models 60V DUH VWHSZLVHUHILQHG'XULQJWKHWUDQVLWLRQIURPSODQQLQJWR WKH DXWRPDWLRQ SKDVH D VHSDUDWLRQ RI WKH 60 LQWR D Control Model &0 DQG D Process Model 30 LV LQ WURGXFHG:LWKLQWKHDXWRPDWLRQSKDVHWKH60LVFRP SOHWHGE\DQInterface Model,0 SNE 26(2) – 6/2016 85
Freymann et al.
Task-oriented Multi-Robot Applications with MATLAB/Stateflow
,QWKLVVWDJHWKH60FDQEHXVHGIRUV\VWHPVLPXOD WLRQ LQ FRQMXQFWLRQ ZLWK DQ DSSURSULDWH SK\VLFDO SUR FHVV PRGHO RU IRU Software-in-the-Loop 6L/ VLPXOD WLRQ 'XULQJWKHWUDQVLWLRQIURPWKHDXWRPDWLRQWRWKHRS HUDWLRQDOSKDVHWKH60EHFRPHVUHDOControl Software &6 7KLVWUDQVLWLRQLVXVXDOO\NQRZQDVCode Generation 'HSHQGLQJ RQ WKH UHDOWLPH UHTXLUHPHQWV RI WKH FRQWURO DSSOLFDWLRQ WKH 6%& DSSURDFK GLVWLQJXLVKHV EHWZHHQH[SOLFLWDQGLPSOLFLWFRGHJHQHUDWLRQ7KHILUVW W\SH LV WKH FODVVLFDO PHWKRG IRU KLJK UHDOWLPH UHTXLUH PHQWV LQ FRQMXQFWLRQ ZLWK PRVWO\ HPEHGGHG FRQWUROOHU KDUGZDUH ,Q WKLV FDVH WKH H[SOLFLW FRGH JHQHUDWLRQ LV GRQHE\DQDSSURSULDWHFRPSLOHU)RUDSSOLFDWLRQVZLWK UDWKHUVORZWLPLQJLPSOLFLWFRGHJHQHUDWLRQLVVXLWDEOH 7KDWPHDQVWKHODVW60RIWKHGHVLJQSURFHVVLVXVHGDV &6ZLWKRXWPRGLILFDWLRQ7KLVLVSRVVLEOHGXHWRWKH,0 ,W SURYLGHV D SURFHVV LQWHUIDFH HQDEOLQJ 6L/ EXW DOVR RSHUDWLRQDOXVH )ROORZLQJWKH6%&DSSURDFKWKH&6DOZD\VLQFOXGHV D307KXVREVHUYHUFRQFHSWVFDQHDVLO\EHUHDOL]HG,Q WKHFDVHRISRRUO\RUQRWPHDVXUDEOHSURFHVVVWDWHVWKH 30FDQSURYLGHDWOHDVWHVWLPDWHGYDOXHV ,Q>@WKH6%&)UDPHZRUNKDVEHHQVXFFHVVIXO O\ DSSOLHG IRU 656 FRQWURO GHYHORSPHQW IRU GLIIHUHQW PDQXIDFWXUHUV )XUWKHUPRUH LW LV VKRZQ WKDW 6%& VXS SRUWVDWDVNRULHQWHGFRQWUROVSHFLILFDWLRQ)LJXUH
Figure 5: Use of TOC and RCV Toolbox within the SBC Framework.
,Q WKLV FDVH WKH &0 FRQWDLQV WKH WDVNRULHQWHG FRQWURO VSHFLILFDWLRQ 7KH 30 VWLOO KDV D FRPSRQHQWRULHQWHG VWUXFWXUH DFFRUGLQJ WR WKH HOHPHQWV RI WKH UHDO SURFHVV :LWK D WDVNRULHQWHG &0 RQ WRS WKH 30 LV DOVR WKH SODFHRIWDVNWUDQVIRUPDWLRQDVGHVFULEHGLQ6HFWLRQ 86 SNE 26(2) – 6/2016
TN
7KH WDVNV DUH PDSSHG RQWR WKH JHQHUDOL]HG FRP PDQGVRIWKH5&97RROER[6HFWLRQ 7KXVWKH30 UHPDLQV LQGHSHQGHQW DFFRUGLQJ WR FRQFUHWH URERWV 7KH YHQGRUVSHFLILFPDSSLQJLVVXEMHFWRIWKH,0 %HORZ WKH PDSSLQJ RI LQWHUDFWLRQV LQ 056 WR D WDVNEDVHG FRQWURO VSHFLILFDWLRQ XVLQJ WKH 6%& IUDPH ZRUNLVVKRZQDIWHUWKHWHUPLQWHUDFWLRQLVGLVFXVVHG
2 Interactions in MRS ,Q WKH SUHYLRXV VHFWLRQV PHWKRGV DQG WRROV IRU FRQWURO GHVLJQRISingle-Robot Systems656V ZHUHLQWURGXFHG ZKLFK VKRXOG EH DSSOLHG WR Multi-Robot Systems 056V $IXQGDPHQWDOHOHPHQWRIDQ056LVLQWHUDF WLRQV 7KLV VHFWLRQ WUHDWV FKDUDFWHULVWLFV DQG FODVVLILFD WLRQRILQWHUDFWLRQVLQ056V 2.1
Discussion
,Q056VWKHURERWVXVXDOO\VXSSRUWHDFKRWKHULQRUGHU WRLPSURYHWKHWHDPSHUIRUPDQFH7KHWHUP LQWHUDFWLRQ GHVFULEHVWKHPXWXDOLQIOXHQFHRIWKHURERWV$QLQWHUDF WLRQ RIWHQ UHTXLUHV WKH VKDULQJ RI D OLPLWHG UHVRXUFH VXFKDVDURERW¶VZRUNVSDFH)LJXUH )RUH[DPSOHLI WZR URERWV QHHG WR SDVV D ZRUNSLHFH WKHLU ZRUNVSDFHV PXVWRYHUODS7KLVLPSOLHVWKDWWKHURERWVKDYHWRFRRU GLQDWHWKHKDQGRYHUWRDYRLGDFROOLVLRQ2QHSRVVLELOLW\ IRUUHDOL]LQJWKHFRRUGLQDWLRQLVWRH[FKDQJHLQIRUPDWLRQ EHWZHHQWKHURERWV\VWHPV
Figure 6: Example of an MRS with two industrial robots.
2.2
Classification
%DVHGRQWKHJHQHUDOFODVVLILFDWLRQLQ>@LQWHUDFWLRQV RILQGXVWULDOURERWVFDQEHGLYLGHGLQWRVL[FODVVHV)LJ XUHVKRZVWKHH[DPSOHRIDWUDQVSRUWDWLRQSUREOHPIRU EHWWHU LOOXVWUDWLRQ 3DUWVKDYH WREH WUDQVSRUWHG IURP DQ Input BufferWRDQOutput BufferClass 0VWDUWVZLWKDQ 656DQGKHQFHLQYROYHVQRLQWHUDFWLRQ
TN
Freymann et al.
Task-oriented Multi-Robot Applications with MATLAB/Stateflow
Class 1 WR Class 6 VROYH WKH VDPH SUREOHP ZLWK DQ 0567KHFRPSOH[LW\RIWKHWUDQVSRUWDWLRQSUREOHPFDQ LQFUHDVH IURP RQH FODVV WR DQRWKHU FODVV )RU H[DPSOH QHZSDUWW\SHVDUHLQWURGXFHGZLWKVSHFLDOUHTXLUHPHQWV 7RVROYHWKHSUREOHPWKHQHFHVVDU\OHYHORILQWHUDFWLRQ ZLOOLQFUHDVHWRR
7KHURERWVVWLOOVROYHRQHSUREOHPDQGKDYHVHSDUDWH ZRUNVSDFHV 7KHUHIRUH Class 1 DQG Class 2 KDYH WKH VDPHGHJUHHRILQWHUDFWLRQ Class 3.$VIRUClass 2EXWWKHURERWVVKDUHDFRPPRQ ZRUNVSDFH7RDYRLGFROOLVLRQVWKHURERWVKDYHWRFRRU GLQDWH WKHLU PRWLRQV 7KHUHIRUH WKH GHJUHH RI LQWHUDF WLRQLVLQFUHDVHGFRPSDUHGZLWKClasses1 & 2 Class 4.$VIRUClass 3EXWDQRWKHUW\SHRISDUWOHDGV WR D VWURQJHU LQWHUDFWLRQ 7KH QHZ W\SH FDQ RQO\ EH PRYHG E\ WKH WZR URERWV WRJHWKHU 7KXV WKH GHJUHH RI LQWHUDFWLRQLVLQFUHDVHGFRPSDUHGWRClass 3 Class 5.2QHURERWVXSSRUWVWKHRWKHURQHHYHQLIWKH WRRO LV QRW LGHDO IRU WKLV SXUSRVH 7KLV IRUP RI LQWHUDF WLRQLVXVHGWRFRPSHQVDWHIRUWKHRYHUORDGRIRQHURERW E\LUUHJXODUDUULYDORISDUWV Class 6. $ QHZ W\SH RI SDUW ZKLFK FDQQRW EH KDQGOHG E\WKHURERWWHDPUHTXLUHVWKHUHSODFHPHQWRIDURERWRU WKH WRRO ,QWHUDFWLRQ UHIHUV WR WKH PRGLILFDWLRQ RI WHDP PHPEHUV
3 Case Study ,Q WKH IROORZLQJ WKH FRQWURO GHYHORSPHQW IRU D MultiRobot System 056 LV H[DPLQHG E\ D KDQGOLQJ DQG DVVHPEO\ SUREOHP 'LIIHUHQW LQWHUDFWLRQV DUH LPSOH PHQWHG XVLQJ D WDVNRULHQWHG FRQWURO GHVLJQ %DVHG RQ WKHDERYHGHVFULEHGPHWKRGVDQGWRROVWKHFRQWUROZLOO EHGHYHORSHGLQWKH0$7/$%6WDWHIORZHQYLURQPHQW 3.1 Layout and workflow Figure 7: Classification of interacting robots based on [13] – with level of interaction.
Class 0. 2QH W\SH RI SDUW KDV WR EH WUDQVSRUWHG E\ DQ 6567KHURERW¶VWRROLVDGDSWHGWRWKHSDUW7KHWDVNLV FRPSOHWHG ZKHQ DOO SDUWV KDYH EHHQ WUDQVSRUWHG IURP WKHInput BufferWRWKHOutput Buffer7KHUHLVQRLQWHU DFWLRQ Class 1. $Q 056 FRQVLVWLQJ RI WZR URERWV 5 5 ZLWK VHSDUDWH ZRUNVSDFHV %RWK URERWV KDYH LGHQWLFDO WRROV1RH[FKDQJHRILQIRUPDWLRQEHWZHHQWKHURERWVLV UHTXLUHG7KHLQWHUDFWLRQUHIHUVWRWKHFROOHFWLYHVROXWLRQ RIDSUREOHPE\WZRRUPRUHURERWV Class 2.$VIRUClass 1VXSSOHPHQWHGE\DQHZW\SHRI SDUWZKLFKUHTXLUHVWKHH[FKDQJHRIRQHURERWWRRO 5HJDUGLQJ WKH LQWHUDFWLRQ WKHUH LV QR FKDQJH FRPSDUHG WRClass 1
7KH H[SHULPHQWDO VHWXS LV LOOXVWUDWHG LQ )LJXUH ,W FRQVLVWV RI WZR URERWV 5 5 DQG WZR FDPHUDV & & (DFKURERWKDVDVHSDUDWHInput,, DQGOutput Buffer 2 2 LQ LWV ZRUNVSDFH )XUWKHUPRUH ERWK URERWV VKDUH D SRUWLRQ RI WKH ZRUNVSDFH E\ D Common Output Buffer 2&7KHWZRInput BuffersDUHH[WHUQDOO\ VWRFNHGXSZLWKSDUWVRIW\SH$RU% (DFKURERWUDQGRPO\SLFNVXSDSDUWRILWVUHVSHFWLYH Input Buffer7KHSRVLWLRQRIWKHSDUWVLVDVVXPHGWREH NQRZQ 7KH JULSSHG SDUW FDQ HLWKHU EH RI W\SH $ RU % ZKLFK PDNHV LGHQWLILFDWLRQ E\ D FRUUHVSRQGLQJ FDPHUD QHFHVVDU\ 7KH UHVXOW RI WKH LGHQWLILFDWLRQ GLFWDWHV KRZ WRSURFHHGZLWKWKHSDUW,IWKHJULSSHGSDUWLVRIW\SH$ LW FDQ EH GLUHFWO\ SODFHG LQ WKH Output Buffer RI WKH URERW 7KHQ WKH URERW SLFNV XS DQRWKHU SDUW IURP WKH Input BufferDQGWKHSURFHGXUHLVUHSHDWHGXQWLODSDUWRI W\SH%LVLGHQWLILHG7ZRSDUWVRIW\SH%DOZD\VKDYHWR EHDVVHPEOHGZLWKHDFKRWKHUE\ERWKURERWVEHIRUHWKH\ DUHVWRUHGLQ2& SNE 26(2) – 6/2016 87
Freymann et al.
Task-oriented Multi-Robot Applications with MATLAB/Stateflow
Figure 8: Experimental setup of the case study.
)LJXUH VKRZV WKH VXEWDVNV ZKLFK KDYH WR EH GRQH WR VROYHWKHWDVNCommonPlacePart&33 ,IDURERWSLFNV XS D SDUW RI W\SH % KH PRYHV WR D PRXQWLQJ SRVLWLRQ DERYH2FDQGLVEORFNHGWKHQILHOGD XQWLOWKHVHFRQG URERW DOVR SLFNV XS D SDUW RI W\SH % DQG UHDFKHV LWV PRXQWLQJSRVLWLRQILHOGE %RWKURERWVSURFHHGZLWKD V\QFKURQRXVPRWLRQILHOGF LQRUGHUWRSODFHERWKSDUWV LQ 2& FOLFN PRXQWLQJ ILHOG G 6XEVHTXHQWO\ D QHZ F\FOHWDNHVSODFH
Figure 9: Workflow of two robots doing task
TN
7KH WDVN VHTXHQFH LV L JULS D SDUW PickPart LL LGHQWLI\ WKH JULSSHG SDUW ZLWK WKH FDPHUD IndentPart DQGLLL SODFHWKHSDUWLQWKHOutput BufferPlacePart ,I D SDUW RI W\SH % LV LGHQWLILHG WKH WDVN VHTXHQFH FKDQJHV,QVWHDGRIPlacePartWKHWDVNMoveToPosZLOO EH H[HFXWHG ,Q FRQVHTXHQFH WKH URERW PRYHV WR LWV PRXQWLQJSRVLWLRQDERYH2&7KHVXEVHTXHQWWDVNCPP EORFNVWKHURERW)LJXUHD XQWLOWKHVHFRQGURERWDOVR H[HFXWHVWKHWDVNCPP)LJXUHE %RWKURERWVFRRUGL QDWHWKHPRWLRQVXQWLOWKHWDVNCPP HQGV)LJXUHFG 7KHLQGHSHQGHQWKDQGOLQJRIW\SH$SDUWVE\DVHTXHQFH RIWDVNVFRUUHVSRQGVWRDClass 1LQWHUDFWLRQ7KHLQWHU DFWLRQ FDQ EH PRGHOHG E\ SDUDOOHO H[HFXWLRQ RI WDVN VHTXHQFHV 7KH PDSSLQJ RI WKH DVVHPEO\ SURFHVV RI W\SH % SDUWV FRUUHVSRQGV WR D Class 4 LQWHUDFWLRQ EH FDXVH LW QHFHVVLWDWHV WKH FRRUGLQDWLRQ RI ERWK URERWV 7KHQHFHVVDU\WLPHV\QFKURQL]DWLRQDQGFRRUGLQDWLRQLV PDSSHGLQWKHIRUPRIDVHSDUDWHWDVNCPP 3.3
Implementation aspects
7KHLPSOHPHQWDWLRQRIWKHFRQWUROLVEDVHGRQWKHSimulation Based Control 6%& DSSURDFK DQG UHDOL]HG LQ WKH 0$7/$%6WDWHIORZ HQYLURQPHQW ,Q DFFRUGDQFH ZLWK 6%& WKH FRQWURO FRQVLVWV RI D Control Model &0 Process Model 30 DQG Interface Model ,0 )LJXUH 7KH&0VKRZQLQ)LJXUHLPSOHPHQWV WKH Task-Oriented Control 72& ORJLF DFFRUGLQJ WR )LJXUH 7KH WDVN VHTXHQFHV RI ERWK URERWV DUH LP SOHPHQWHGDVSDUDOOHOVWDWHV7KHWDVNCPPLQERWKSDUDO OHO VWDWHV WDVNV5 WDVNV5 LV VLJQDOLQJ D VWDQGE\ IRU DVVHPEOLQJ
CommonPlacePart (CPP).
3.2 Task-oriented analysis $WDVNRULHQWHGGHVFULSWLRQRIWKHZRUNIORZLVVKRZQLQ )LJXUH7KHQRWDWLRQLVEDVHGRQHarel statecharts 7KHILJXUHVKRZVWKHILUVWVWHSRIWKHWDVNRULHQWHGFRQ WURO GHVLJQ 7KH SUREOHP GHVFULSWLRQ LV GRQH XVLQJ WKH WDVNV PickPart IndentPartPlacePart MoveToPos DQG CommonPlacePart &33 7KHFRQWUROORJLFLVLGHQWLFDO IRU ERWK URERWV DQG FDQ EH PDSSHG E\ WZR LGHQWLFDO SDUDOOHOVWDWHV$1'VWDWHV GUDZQDVGDVKHGOLQHV $V ORQJ DV QR SDUW RI W\SH % LV LGHQWLILHG ERWK UR ERWVZRUNLQGHSHQGHQWO\DQGLQSDUDOOHO 88 SNE 26(2) – 6/2016
Figure 10: Task composition for both robots.
TN
Freymann et al.
Task-oriented Multi-Robot Applications with MATLAB/Stateflow
7KH LPSOHPHQWDWLRQ RI WKH FRQWURO LV EDVHG RQ WKH Simulation Based Control6%& DSSURDFKDQGUHDOL]HG LQWKH0$7/$%6WDWHIORZHQYLURQPHQW,QDFFRUGDQFH ZLWK 6%& WKH FRQWURO FRQVLVWV RI D Control Model &0 Process Model 30 DQG Interface Model ,0 )LJXUH 7KH&0VKRZQLQ)LJXUHLPSOHPHQWV WKH Task-Oriented Control 72& ORJLF DFFRUGLQJ WR )LJXUH 7KH WDVN VHTXHQFHV RI ERWK URERWV DUH LP SOHPHQWHGDVSDUDOOHOVWDWHV7KHWDVNCPPLQERWKSDUDO OHO VWDWHV WDVNV5 WDVNV5 LV VLJQDOLQJ D VWDQGE\ IRU DVVHPEOLQJ 7KHLPSOHPHQWDWLRQRIWKHQHFHVVDU\LQWHUDFWLRQ)LJXUH F G ZDV PRGHOHG DV D VHSDUDWH WDVN CPP LQ DQRWKHU SDUDOOHOVWDWH 7KXVWKHLQWHUDFWLRQSULQFLSOHLV PDSSHG WRDFRPPRQUHXVDEOHWDVN 7KH 30 LV PRGHOHG DQDORJRXVO\ WR IXOILOO WKH UH TXLUHPHQWVRIWKH6%&DQGWKH72&DQGLVLOOXVWUDWHGLQ )LJXUH (DFKSURFHVV FRPSRQHQW LV UHSUHVHQWHG DV D SDUDOOHOVWDWHDQGZLWKWZRVXEVWDWHVidleDQGexecTask 7KH VWDWH idle LQGLFDWHV WKDW WKH FRPSRQHQW LV RQ VWDQGE\ 7KH VWDWH execTask LPSOHPHQWV WKH SURFHVV GHSHQGLQJ RQ WDVN WUDQVIRUPDWLRQ %HFDXVH WKH WDVN WUDQVIRUPDWLRQLVPRUHFOHDUO\LPSOHPHQWHGSURFHGXUDO O\ LW KDV EHHQ WUDQVIHUUHG WR D 0$7/$% IXQFWLRQ FDOO 7KH LQSXW SDUDPHWHU LV D QXPHULF YDOXH DQG UHSUHVHQWV WKHGHFRGHGWDVN 7KH,0VKRZQLQ)LJXUHLVUHDOL]HGDQDORJRXVO\ WRWKH30,WGHILQHVDSDUDOOHOVWDWHZLWKWZRVXEVWDWHV IRU HDFK SURFHVV FRPSRQHQW ZKLFK QHHGV WR EH FRQ WUROOHG &RPPXQLFDWLRQ ZLWK WKH UHDO SURFHVV FRPSR QHQWV LV LPSOHPHQWHG LQ HDFK FDVH DV D 0$7/$% IXQFWLRQ7RFRQWUROWKHURERWWKHIXQFWLRQexecTask( ) LVXVHGZKLFKLVEDVHGRQWKHRobotic Control & Visualization5&9 7RROER[6HFWLRQ
)RU WKH FRQWURO RI RWKHU SHULSKHUDOV VXFK DV WKH FDPHUDV0$7/$%VInstrumental Control Toolbox>@ FDQEHXVHG
Figure 12: Statechart of PM based on SBC Framework.
Figure 13: Statechart of IM based on SBC Framework.
Figure 11: Statechart of CM based on SBC Framework.
SNE 26(2) – 6/2016 89
Freymann et al.
Task-oriented Multi-Robot Applications with MATLAB/Stateflow
7KH 6%& EDVHG FRQWURO GHYHORSPHQW LQ WKH 0$7/$% 6WDWHIORZ HQYLURQPHQW VXSSRUWV D JUDGXDO VLPXODWLRQDVVLVWHGGHYHORSPHQWRIFRQWUROVRIWZDUH
4 Summary and Outlook %DVHG RQ PHWKRGV DQG WRROV ZKLFK DUH HVWDEOLVKHG LQ WKH FRQWURO GHYHORSPHQW IRU Single-Robot Systems 656V DQ DSSURDFK IRU Multi-Robot Systems 056V ZDVGHYHORSHG,QFRQWUDVWWR656VLQWHUDFWLRQVPXVWEH FRQVLGHUHG LQ 056V )RU WKLV SXUSRVH D FKDUDFWHUL]D WLRQ DQG FODVVLILFDWLRQ RI LQWHUDFWLRQV LQ 056V ZDV LQWURGXFHG $Q H[DPSOH GHPRQVWUDWLQJ WZR LQWHUDFWLRQ FODVVHV VKRZHG KRZ LQWHUDFWLRQV FDQ EH PRGHOHG DV D JHQHUDO UHXVDEOH WDVN DFFRUGLQJ WR WKH WDVNRULHQWHG URERWFRQWUROSDUDGLJP 7KH SURWRW\SLFDO LPSOHPHQWDWLRQ ZDV EDVHG RQ WKH Simulation Based Control 6%& DSSURDFK LQ WKH 0$7/$%6WDWHIORZHQYLURQPHQWDQGXVHGWKHRobotic Control & Visualization5&9 7RROER[IRU0$7/$% ,WZDVGHPRQVWUDWHGWKDWWKHFRQWUROGHYHORSPHQWRIDQ 056 FDQ EH UHDOL]HG YHQGRU LQGHSHQGHQWO\ DQDORJ WR DQ656DQGZLWKVLPXODWLYHWHVWVWKURXJKRXWWKHFRQWURO GHYHORSPHQWF\FOH $W WKH EHJLQQLQJ GHILQHG UHTXLUHPHQWV DUH ODUJHO\ IXOILOOHG E\ SURWRW\SLFDO LPSOHPHQWDWLRQ 7KH QH[W VWHS ZLOOEHWRH[DPLQHLIRWKHULGHQWLILHGLQWHUDFWLRQFODVVHV FDQ EH PDSSHG WR UHXVDEOH WDVNV $GGLWLRQDOO\ D SURRI RI FRQFHSW IRU D PRUH DGYDQFHG DSSOLFDWLRQ ZLOO EH SURYLGHGLQWKHIXWXUH References >@ %pODQJHU%DUUHWWH0Robotiq: Collaborative Robot EBook>LQWHUQHW@KWWSEORJURERWLTFRPFROODERUDWLYH URERWHERRNFLWHG$SULO >@ +HUPDQP03HQWHN72WWR%Design Prinziples for Industie 4.0 Scenarios: A Literature Review>LQWHUQHW@ KWWSZZZVQRPPEWX GRUWPXQGGHFPVGHIRUVFKXQJ$UEHLWVEHULFKWH'HVLJQ 3ULQFLSOHVIRU,QGXVWULHB6FHQDULRVSGIFLWHG$SULO >@ -DFDN:Intelligent robotic systems: Design, planning and control.OXZHU$FDGHPLF1HZ@ 6LFLOLDQR%Springer handbook of robotics6SULQJHU %HUOLQ
90 SNE 26(2) – 6/2016
TN
>@ 0DNULV60LFKDORV*(\WDQ$&KU\VVRORXULV*Cooperating Robots for Reconfigurable Assembly Operations: Review and Challenges3URFHGLD&,53 ± >@ 2SHQ6RXUFH5RERWLFV)RXQGDWLRQRobot Operating System>LQWHUQHW@KWWSZZZURVRUJFLWHG$SULO >@ 0HLHU+Verteilte kooperative Steuerung maschinennaher Abläufe>GLVVHUWDWLRQ@780QFKHQ*HUPDQ\ >@ :HEHU:Industrieroboter:Methoden der Steuerung und RegelungQGHG)DFKEXFKYHUO/HLS]LJLP&DUO +DQVHU9HUO0QFKHQ >@ $EHO'%ROOLJ$Rapid Control Prototyping, Methoden und Anwendung6SULQJHU >@ 0DOHW]NL*Rapid Control Prototyping komplexer und flexibler Robotersteuerungen auf Basis des SBCAnsatzes>GLVVHUWDWLRQ@5RVWRFN8QLYHUVLW\*HUPDQ\ >@ 3DZOHWWD73DZOHWWD60DOHW]NL*Integrated Modeling, Simulation and Operation of High Flexible Discrete Event Controls0$7+02'WK9LHQQD&RQIHUHQFH RQ0DWKHPDWLFDO0RGHOOLQJ >@ 6FKZDWLQVNL73DZOHWWD73DZOHWWD6.DLVHU&Simulation-based development and operation of controls on the basis of the DEVS formalism3UDJ&]HFK >@ /WK7/lQJOH7Multi-Agenten-Systeme in der Robotik und Artificial-LifeLQ*0':RUNVKRS6DQNW$XJXVWLQ >@ &KULVWHUQ06FKPLGW$6FKZDWLQVNL73DZOHWWD7 KUKA-KAWASAKI-Robotic Toolbox for Matlab >LQWHUQHW@KWWSVZZZPEKV ZLVPDUGHFHDVZBSURMHFWVKWPOFLWHG0D\ >@ 2WWR-6FKZDWLQVNL73DZOHWWD7KUKA-KAWASAKIVisualization Toolbox for Matlab>LQWHUQHW@ KWWSVZZZPEKVZLVPDUGHFHDVZBSURMHFWVKWPOFLW HG0D\ >@ 'HDWFX&)UH\PDQQ%6FKPLGW$3DZOHWWD7 MATLAB/Simulink Based Rapid Control Prototyping for Multivendor Robot ApplicationsWKHG61(6LPX ODWLRQ1RWHV(XURSH ± >@ 6FKZDWLQVNL73DZOHWWD73DZOHWWD6Flexible Task Oriented Robot Controls Using the System Entity Structure and Model Base Approach61(6LPXODWLRQ1RWHV (XURSH ± >@ 3DZOHWWD73DZOHWWD60DOHW]NL*Integrated Modeling, Simulation and Operation of High Flexible Discrete Event Controls$UJHVLP5HSRUW >@ 7KH0DWK:RUNVInstrument Control Toolbox>LQWHUQHW@ KWWSGHPDWKZRUNVFRPSURGXFWVLQVWUXPHQWFLWHG $SULO