MATLAB/Simulink Based Rapid Control Prototyping ...

8 downloads 438 Views 465KB Size Report
veloped, tested by simulation, put into service (soft commissioning) and finally used as a real control. Con- tinuity of the tool chain, as is needed to meet the re-.
S NE T

E C H N I C A L

N

O T E

MATLAB/Simulink Based Rapid Control Prototyping for Multivendor Robot Applications Christina Deatcu*, Birger Freymann, 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 5HFHLYHG-XO\ 6HOHFWHG$6,0676 3RVWFRQI3XEO $FFHSWHG-XO\

Abstract. Industrial robots are used in various fields of application and many robot manufacturers are active in the market. In most cases, their software solutions are proprietary and, consequently, they cannot be used for third party robots. Moreover, the integration of external hard- or software is highly restricted. Long term standardization efforts for robot programming languages, such as the Industrial Robot Language (IRL) and its successor, the Programming Language for Robots (PLR), have been mostly ignored by robot manufacturers. This fact leads to a restriction on the combined usage of robots. Multi-robot applications where robots have to interact are usually limited to software solutions and robots of one manufacturer. On the other hand, control design in engineering is often carried out by the usage of Scientific and Technical Computing Environments (SCEs) like MATLAB. The Robotic Control & Visualization Toolbox (RCV Tbx) for MATLAB/Simulink tries to close the gap between robot manufacturer-specific software solutions and SCEs. The current version of the RCV Tbx supports a uniform and integrated control development for KUKA and KAWASAKI robots in the MATLAB/Simulink environment. An extension to other robot types is straight forward. Thus, the implementation of heterogeneous multirobot applications is considerably simplified.

Introduction 7KLV SDSHU LV DQ H[WHQGHG YHUVLRQ RI >@ DQG DLPV WR LQWURGXFH WKH 5&9 7E[ IRU 0$7/$%6LPXOLQN DV DQ HDV\ WR XVH 5DSLG &RQWURO 3URWRW\SLQJ 5&3  7RRO IRU PXOWLYHQGRU URERW FRQWUROV 7KH 5&9 7E[ KDV EHHQ XQGHU GHYHORSPHQW E\ WKH UHVHDUFK JURXS Computational Engineering and Automation &($  DW :LVPDU 8QLYHUVLW\VLQFH>@

$V UHVHDUFK LQWR URERWLFV LV SURFHHGLQJ UDSLGO\ DQG QHZ ILHOGV RI DSSOLFDWLRQ IRU URERWV DUH EHLQJ PDGH XS FRQWLQXDOO\ WKH UHTXLUHPHQWV FRQFHUQLQJ URERW FRQWURO GHYHORSPHQW DUH LQFUHDVLQJ WRR )DVW DQG HDV\ FRQWURO SURJUDPPLQJ LQWHJUDWLRQ RI H[WHUQDO KDUGZDUH RU VRIW ZDUHFRPSRQHQWVDQGPXOWLURERWRSHUDWLRQDUHRISDU WLFXODULPSRUWDQFH,QWKLVFRQWH[WLWLVRIWHQGHVLUDEOHWR XVHD6&(VXFKDV0$7/$%IRU5&35&3DFFRUGLQJ WR$EHODQG%ROOLQJ>@LVXQGHUVWRRGDVDQLQWHJUDWHG FRQWLQXRXV FRQWURO GHYHORSPHQW IURP HDUO\ GHVLJQ WR RSHUDWLQJSKDVHLQDKRPRJHQRXVHQYLURQPHQW ,Q DGGLWLRQ WR PXOWLURERW FDSDELOLW\ PXOWLYHQGRU DSSOLFDWLRQV DUH RQH IXUWKHU NH\ DVSHFW 7RGD\ YDULRXV URERWPDQXIDFWXUHUVDUHHVWDEOLVKHGRQWKHPDUNHW7KH\ RIIHU SURSULHWDU\ VRIWZDUH HQYLURQPHQWV ZLWK VSHFLDO URERWSURJUDPPLQJODQJXDJHVVXFKDV.5/ 9(1.8 .$5RERWLFV $6 9(1.DZDVDNL5RERWLFV RU5$3,' 9(1 $%% 5RERWLFV  )URP D VRIWZDUH HQJLQHHULQJ SRLQWRIYLHZDOOWKHVHURERWODQJXDJHVDUHSUHWW\VLPL ODU 1HYHUWKHOHVV ORQJWHUP VWDQGDUGL]DWLRQ HIIRUWV OLNH WKH ,5/ DQG LWV VXFFHVVRU WKH 3/5 DUH VWLOO XQVXFFHVV IXO ,Q DGGLWLRQ DOPRVW DOO URERW PDQXIDFWXUHUV RIIHU D &RPSXWHU $LGHG 5RERWLF &$5  V\VWHP ZKLFK LV DOVR UHIHUUHG WR DV ' URERW VLPXODWLRQ VRIWZDUH &$5 V\V WHPV W\SLFDOO\ SURYLGH SK\VLFVEDVHG URERW PRGHOV IRU RQHPDQXIDFWXUHUDVZHOODVLQWHUIDFHVWR'&$'V\V WHPV 7KXV D VLPXODWLRQ DQG ' YLVXDOL]DWLRQ RI FRP SOHWH URERW FHOOV LV VXSSRUWHG 5RERW FRQWUROV FDQ EH GHYHORSHG ZLWKLQ WKHVH YLUWXDO HQYLURQPHQWV XVLQJ WKH SURSULHWDU\URERWODQJXDJHV6XFK&$5V\VWHPVVLPSOL I\ WKH GHYHORSPHQW DQG FRPPLVVLRQLQJ RI URERW DSSOL FDWLRQV+RZHYHUWKHSURSULHWDU\VRIWZDUHOLPLWVDSSOL FDWLRQV WR SURGXFWV IURP LWV PDQXIDFWXUHU 7KHUH DUH VRPH WKLUGSDUW\ &$5 V\VWHPV DYDLODEOH VXFK DV '5HDOL]H5 E\ 9LVXDO &RPSRQHQWV &RUSRUDWLRQ >@ 7KH\RIIHUDFRPSUHKHQVLYHVROXWLRQIRUVLPXODWLRQDQG 'YLVXDOL]DWLRQRIKHWHURJHQHRXVURERWW\SHV

SNE 25(2) – 8/2015 69

Deatcu et al.

MATLAB/Simulink-based Rapid Control Prototyping

TN

+RZHYHUWKHFRQWUROSURJUDPPLQJLVVWLOOEDVHGRQ WKH GLIIHUHQW SURSULHWDU\ URERW ODQJXDJHV +HQFH WKH GHYHORSPHQWRILQWHUDFWLQJPXOWLURERWFRQWUROVLVFRP SOLFDWHGIRUURERWVIURPGLIIHUHQWPDQXIDFWXUHUV )RU 0$7/$%6LPXOLQN EHVLGHV WKH 5&9 7E[ >@ WKHUH H[LVWV D URERW FRQWURO WRROER[ IRU .8.$ URERWV .8.$ &RQWURO 7RROER[ .&7  GHYHORSHG DW WKH 8QL YHUVLW\ RI 6LHQQD > @ 7KH .&7 FRQQHFWV D UHPRWH 0$7/$%FRPSXWHUYLD7&3,3WRWKHURERWFRQWUROOHU RID.8.$URERW8VDJHRI.&7LVOLPLWHGWRRQHVLQ JOH URERW IURP RQH PDQXIDFWXUHU QDPHO\ .8.$ VR WKDWPXOWLURERWDQGPXOWLYHQGRUDSSOLFDWLRQVFDQQRWEH DGGUHVVHG ,QVSLUHGE\WKHLGHDRI5&3LQFRQWUROWKHRU\WKHUH VHDUFK JURXS &($ EHJDQ LQ  WR GHYHORS D 0$7/$%.5/WRROER[7KLVWRROER[VXSSRUWVFRQWURO SURJUDPPLQJ RI .8.$ URERWV ZLWKLQ 0$7/$% LQ FOXGLQJ WKH XVDJH RI DOO DYDLODEOH 0$7/$% IHDWXUHV 0RUHRYHU LW SURYLGHV D ILUVW 0$7/$% EDVHG &$5 V\VWHP >@ $V ZHOO DV WKH .&7 WKH 0$7/$% .5/ 7E[ ZDV OLPLWHG WR .8.$ URERWV EXW XVHUV DOUHDG\ EHQHILWHG IURP WKH SRZHUIXO PHWKRGV DV ZHOO DV WKH YDULRXV LQWHUIDFHV SURYLGHG E\ 0$7/$% DQG LWV WRRO ER[HV $OPRVW DOO RI WKH SURSULHWDU\ URERW ODQJXDJHV DUH LPSHUDWLYH ODQJXDJHV FRQWDLQLQJ VLPLODU SURJUDPPLQJ HOHPHQWV 7KXV WKH DSSURDFK RI WKH 0$7/$% .5/ WRROER[ ZDV JHQHUDOL]HG $ XQLIRUP URERW FRQWURO ODQ JXDJHIRUURERWW\SHVIURPGLIIHUHQWPDQXIDFWXUHUVKDV EHHQ GHYHORSHG ZLWK WKH 5&9 7E[ IRU 0$7/$% 0RUHRYHU WKH VLPXODWLRQ DQG ' YLVXDOL]DWLRQ WRROV KDYHEHHQHQKDQFHG 7KLV SDSHU LV RUJDQL]HG DV IROORZV 6HFWLRQ LQWUR GXFHV WKH FRQFHSW RI 5&3 DQG UHODWHV LW WR URERW FRQ WUROV ,Q 6HFWLRQ WKH 5&9 7E[ IRU 0$7/$% LV GH VFULEHG 'HVLJQ LPSOHPHQWDWLRQ DV ZHOO DV XVHU LQWHU IDFH DVSHFWV DUH DQDO\]HG )LQDOO\ 6HFWLRQ JLYHV D VXPPDU\DQGLGHQWLILHVSRWHQWLDOVIRUIXWXUHZRUN

,WLVFRPSOHWHGZLWKFRGLQJRIDQH[HFXWDEOHFRQWURO SURJUDPIRUWKHWDUJHWKDUGZDUH7KLVSLHFHRIVRIWZDUH LV WKHQ XVHG WR EULQJ WKH FRQWURO LQWR RSHUDWLRQ 7KH FRPPLVVLRQLQJ SKDVH VWDUWV ZLWK FRPSRQHQW WHVWV DQG HQGVZLWKDWHVWRIWKHFRQWURODFURVVWKHHQWLUHSURFHVV (DFK VWHS RI WKH 9PRGHO PD\ KDYH WR EH SHUIRUPHG VHYHUDOWLPHVDQGWKURXJKVHYHUDOLWHUDWLRQVRULWLVSRV VLEOH WKDW OHDSV EDFN LQ WKH GHYHORSPHQW SURFHVV ZLOO RFFXU

1 Rapid Control Prototyping

$ QRWDEO\ FULWLFDO SRLQW LV WKH WUDQVIHU RI UHVXOWV IURP SODQQLQJ VLPXODWLRQ WR WKH FRGLQJ DQG LPSOHPHQWDWLRQ SKDVHV $V IRU LQGXVWULDO URERWV WKH H[HFXWDEOH FRQWURO SURJUDP IRU WKH WDUJHW KDUGZDUH W\SLFDOO\ KDV WR EH ZULWWHQ LQ D URERW VSHFLILF SURJUDPPLQJ ODQJXDJH D FRQWLQXRXV WRRO FKDLQ LV QRW JXDUDQWHHG 7KH FRQWURO VWUDWHJLHV WKDW UHVXOW IURP WKH SODQQLQJ VLPXODWLRQ DUH KDQGHG RYHU IURP WKH SODQQLQJ HQJLQHHU WR WKH FRQWURO HQJLQHHU7KLVNLQGRIPDQXDOKDQGLQJRYHULVREYLRXVO\ IDXOWSURQH

7KLVVHFWLRQVXPPDUL]HVWKH5&3DSSURDFKDQGKRZLW FDQ EH XVHG IRU URERW FRQWURO GHYHORSPHQW 6\VWHPDWLF GHYHORSPHQW RI FRQWUROV FDQ EH FDUULHG RXW IROORZLQJ WKH9PRGHOGHULYHGIURP2UWK$EHODQG%ROOLJ>@ 7KH 9PRGHO GHILQHV WZR PDLQ SKDVHV WKH GHVLJQ SKDVH DQG WKH FRPPLVVLRQLQJ SKDVH 7KH GHVLJQ SKDVH VWDUWVZLWKWKHSUREOHPVSHFLILFDWLRQDQGFRQWLQXHVZLWK DGUDIWDQGVLPXODWLYHWHVWLQJRIWKHFRQWURODOJRULWKPV 70 SNE 25(2) – 8/2015

1.1 Fundamentals 5&3JHQHUDOO\UHTXLUHVHLWKHUDZHOODGMXVWHGWRROFKDLQ WRIROORZWKH9IURPVSHFLILFDWLRQSKDVHGRZQWRFRGLQJ SKDVH DQG XS WR RSHUDWLRQDO SKDVH RU VXSSRUW IURP DQ LQWHJUDWHG GHYHORSPHQW HQYLURQPHQW 7KLV LQWHJUDWHG GHYHORSPHQWHQYLURQPHQWFDQEHDQ6&()XUWKHUPRUH 6RIWZDUHLQWKH/RRS VLPXODWLRQ 6L/  DQG +DUGZDUH LQWKH/RRS 6LPXODWLRQ +L/  WHFKQLTXHV IROORZLQJ $EHODQG%ROOLJ>@DQGH[SOLFLWDXWRPDWLFFRGHJHQHUD WLRQDUHNH\IHDWXUHVRI5&3FDSDEOHVRIWZDUHV\VWHPV 0DOHW]NL >@ DGRSWHG WKH JHQHUDO 9PRGHO IRU FRQ WUROV IRU URERW FRQWURO GHYHORSPHQW DV LOOXVWUDWHG LQ )LJXUH

 Figure 1: Adopted V-Model for Robot Control Development According to Maletzki [9].

TN

Deatcu et al.

MATLAB/Simulink-based Rapid Control Prototyping

1.2 RCP and proprietary robot controls &RQYHQWLRQDOO\ URERW FRQWUROV DUH FRGHG LQ YHQGRU VSHFLILFSURJUDPPLQJ ODQJXDJHV DQG WHVWHG XVLQJGHGL FDWHG'VLPXODWLRQVRIWZDUH6XFK&$5V\VWHPVRIIHU VRIWZDUHOLEUDULHVZLWKURERWPRGHOVIURPWKHSDUWLFXODU YHQGRUDQGXVXDOO\LQFOXGHLQWHUIDFHVWR'&$'VRIW ZDUH ,Q &$5 V\VWHPV FRQFUHWH FRQWURO VWUDWHJLHV FDQ EHLPSOHPHQWHGZLWKLQWKHVSHFLILFURERWSURJUDPPLQJ ODQJXDJHVRWKDWH[WUDFRGLQJDIWHUVLPXODWLYHWHVWLQJRI WKH FRQWURO LV QRW UHTXLUHG ' YLVXDOL]DWLRQV RI HJ URERW PRYHPHQWV DQG SRWHQWLDO FROOLVLRQV SOD\ D GHFL VLYH UROH LI &$5 V\VWHPV DUH GHSOR\HG &RQWLQXLW\ DV UHTXLUHGIRU5&3LVSDUWO\JLYHQEXWPDQXDONQRZOHGJH WUDQVIHUIURPSODQQLQJWRFRQWUROHQJLQHHULVVWLOOQHFHV VDU\ 7KH FRQYHQWLRQDO URERW FRQWURO SURJUDPPLQJ DS SURDFK VXSSRUWHG E\ &$5 V\VWHPV DQG DVVRFLDWHG ODQ JXDJHVDQGVRIWZDUHUHVSHFWLYHO\DUHGHSLFWHGLQ)LJXUH 

+RZHYHU D FRQWLQXRXV UHXVH RI VRIWZDUH FRPSR QHQWV GXULQJ WKLV WUDQVLWLRQ LV KDUG WR UHDOL]H IRU URERW FRQWURO GHYHORSPHQW EHFDXVH GLIIHUHQW FRQFHSWV DUH XVHG DQG DUH QHFHVVDU\ LQ WKHVH WZR SKDVHV 6WDUWLQJ IURP WKLV SRLQW D FRQWURO HQJLQHHU FDQ LPSOHPHQW DQG GHSOR\ D URERW FRQWURO IRU YHQGRU VSHFLILF URERWV FRP SOLDQW ZLWK WKH GHILQLWLRQ RI 5&3 )RU H[DPSOH IRU .8.$URERWVFRGLQJRIFRQWUROVLVGRQHXVLQJ.8.$ 5RERW /DQJXDJH .5/  DQG VLPXODWLRQ RI WKH FRQWURO ZLWK URERW PRGHOV LV FDUULHG RXW XVLQJ WKH .XND6LP VRIWZDUH &RQWURO WHVWLQJ DQG FRPPLVVLRQLQJ ZLWK WKH UHDO URERW V\VWHP FDQ EH DFKLHYHG E\ DXWRPDWLF FRGH JHQHUDWLRQ RU D FRPPXQLFDWLRQ OLQN DV LOOXVWUDWHG LQ )LJXUH 



 Figure 3: Detailed V-Model for robot control development according to Maletzki [9].



 Figure 2: Conventional robot control development using vendor specific software.

 $IWHUVSHFLILFDWLRQRIWKHFRQWUROUHTXLUHPHQWVWKHSODQ QLQJ HQJLQHHU GHVLJQV FRQWURO VWUDWHJLHV XVLQJ SODQQLQJ VLPXODWLRQWRROV 6XEVHTXHQWO\KHGHOLYHUVDFRQWUROVWUDWHJ\WRDFRQ WURO HQJLQHHU PRVWO\ LQ D WH[WXDO PDQQHU 7KH FRQWURO HQJLQHHU LPSOHPHQWV WKH URERW FRQWURO XVLQJ YHQGRU VSHFLILFWRROVDVOLVWHGLQ)LJXUH$WWKLVSRLQWWKHUHLV D EUHDN LQ WKH WRRO FKDLQ DFFRUGLQJ WR WKH GHILQLWLRQ RI 5&3E\$EHOHWDO>@

 ,Q WKH FDVH RI LQGXVWULDO URERWV DQ H[SOLFLW FRGH JHQ HUDWLRQIRUWDUJHWKDUGZDUHLVQRWQHFHVVDU\7KHFRQWURO SURJUDP IURP WKH GHVLJQ SKDVH LV LPSOHPHQWHG LQ D URERWRULHQWHGODQJXDJHDQGUXQQLQJRQDURERWFRQWURO FRPSXWHUWKDWLVXVHGLQRSHUDWLRQSKDVH,QWKHFRQWH[W RI5&3WKLVDSSURDFKLVFDOOHGimplicit code generation +HQFH FRPPLVVLRQLQJ FDQ EH FDUULHG RXW YLD D VLPSOH FRPPXQLFDWLRQ OLQN EHWZHHQ D &$5 V\VWHP RQ D 3& DQG D URERW FRQWUROOHU 7KLV SUDFWLFH LV FDOOHG Software in the Loop 6L/  DSSURDFK LQ >@ 7KH FRQFHSW RI H[ SOLFLW DXWRPDWLF FRGH JHQHUDWLRQ IRU WDUJHW KDUGZDUH LV LPSRUWDQWIRUPRELOHURERWLFDSSOLFDWLRQV +RZHYHU WKH URERW FRQWURO GHYHORSPHQW VRIWZDUH GHSLFWHG LQ )LJXUH LV YHQGRUVSHFLILF DQG LQFRPSDW LEOH EHWZHHQ W\SHV 7KLV IDFW FRPSOLFDWHV WKH SUHYL RXVO\GLVFXVVHGFRQWUROGHYHORSPHQWRUPDNHVLWQHDUO\ LPSRVVLEOHWRGHYHORSPXOWLYHQGRUURERWDSSOLFDWLRQV SNE 25(2) – 8/2015 71

Deatcu et al.

MATLAB/Simulink-based Rapid Control Prototyping

1.3 RCP and the RCV Toolbox for MATLAB/Simulink &RQWUROV IRU LQWHUDFWLQJ URERWV DQG PXOWLYHQGRU URERW FRQWUROVDUHH[DPSOHVRIDGYDQFHGWDVNVLQURERWFRQWURO GHYHORSPHQW )LJXUH  LOOXVWUDWHV KRZ WKH 5&9 7E[ HDVHV VXFK WDVNV E\ SURYLGLQJ QRW MXVW D JHQHUDOL]HG LQWHUIDFH WR URERW FRQWURO DQG URERW YLVXDOL]DWLRQ FRPPDQGV EXW DOVRWRURERWVIURPGLIIHUHQWYHQGRUVDQGRUW\SHV 7KH FRQWURO HQJLQHHU LPSOHPHQWV D URERW FRQWURO DV D 0$7/$%FRGHGVHTXHQFHRIFRQWUROFRPPDQGV7KHVH FRPPDQGVDUHLQGHSHQGHQWIURPDVSHFLILFURERWYHQGRU DV ZHOO DV IURP D VSHFLILF URERW ODQJXDJH EXW WKH\ DUH YHU\ VLPLODU WR HVWDEOLVKHG URERW SURJUDPPLQJ ODQ JXDJHV VXFK DV .5/ DQG $6 )XUWKHUPRUH FRQWURO FRPPDQGV FDQ EH FRPELQHG ZLWK DQ\ 0$7/$% FRP PDQGV DQG FDQ DOVR EH JHQHUDWHG IURP 6WDWHIORZ RU 6LPXOLQNPRGHOV7KLVRSWLRQHDVHVWKHLPSOHPHQWDWLRQ RI FRPSOH[ FRQWUROV E\ PDNLQJ DYDLODEOH KLJK OHYHO SURJUDPPLQJFRQFHSWV 

TN

2QH RU PRUH FRPSXWHUV ZLWK 0$7/$%6LPXOLQN DQG WKH 5&9 7E[ LQVWDOOHG DFW DV WKH FRQWLQXRXV VRIW ZDUHHQYLURQPHQWIURPWKHHDUO\GHVLJQDQGHYDOXDWLRQ SKDVHYLDFRQWUROWHVWLQJZLWKWKHUHDOV\VWHPDQGILQDOO\ WKHRSHUDWLRQDOSKDVH1RUHFRGLQJRUUHLPSOHPHQWDWLRQ LVQHFHVVDU\UDWKHUWKHFRQWUROSURJUDPFDQEHH[WHQGHG VXFFHVVLYHO\XQWLOLWPHHWVWKHGHPDQGVRIWKHLQWHQGHG FRQWUROWDVN6L/DQG+L/DSSURDFKHVDVGHILQHGLQ>@ DVUHTXLUHPHQWVIRU5&3FDSDELOLW\RIFRQWUROGHYHORS PHQW DUH PHW EHFDXVH WKH VLPXODWHG FRQWURO FDQ EH VWHSZLVH H[WHQGHG WR EHFRPH WKH UHDO FRQWURO IRU WKH RSHUDWLRQDOSKDVH

 Figure 5: A Multi-robot configuration with heterogeneous robot types using the RCV Tbx.

 Figure 4: Robot control programming with the RCV Tbx for MATLAB/Simulink.

0RUHRYHUWKH5&97E[IRU0$7/$%SURYLGHVURERW VSHFLILFLQWHUSUHWHUVFRGHGE\XVLQJWKHYHQGRUVSHFLILF URERWODQJXDJHVZKLFKKDYHWREHLQVWDOOHGRQWKHURERW FRQWUROOHUV 7KH0$7/$%EDVHGFRQWURO3&DQGWKHURERWFRQ WUROOHUVDUHFRQQHFWHGYLDDELGLUHFWLRQDOFRPPXQLFDWLRQ OLQN 7KH LQWHUSUHWHUV DUH UHVSRQVLEOH IRU WKH LGHQWLILFD WLRQDQGH[HFXWLRQRIFRQWUROFRPPDQGVWKDWDUHWUDQV PLWWHG E\ WKH 0$7/$% EDVHG FRQWURO 3& DQG WKH\ GHOLYHU DFNQRZOHGJHPHQWV RU VHQVRU VLJQDOV EDFN )LJ XUHLOOXVWUDWHVDQ5&97E[EDVHGPXOWLURERWFRQILJX UDWLRQ 72 SNE 25(2) – 8/2015

6KRUW FRQWURO VHTXHQFHV RU VLQJOH FRQWURO WDVNV FDQ DO UHDG\EHWHVWHGZLWKWKHUHDOSURFHVVGXULQJGHVLJQDQG HYDOXDWLRQ 6L/  +L/ WHVWV LQ ZKLFK D UHDO FRQWURO GH YLFH LV WHVWHG ZLWK D VLPXODWHG SURFHVV DUH QRW XVXDOO\ UHOHYDQW IRU LQGXVWULDO URERW FRQWUROV DV PHQWLRQHG LQ 6HFWLRQ+RZHYHUWKH\FRXOGEHRILQWHUHVWIRURWKHU GHYLFHV LQ D URERW DSSOLFDWLRQ )XUWKHUPRUH D FRQWURO DSSOLFDWLRQ FDQ DOVR EH WHVWHG LQ D SXUHO\ YLUWXDO HQYL URQPHQW XVLQJ WKH 5&9 7E[ VLPLODU WR WKH XVDJH RI D &$5 V\VWHP )RU WKLV SXUSRVH WKH 5&9 7E[ SURYLGHV 'PRGHOVRIUHDOURERWVDQGRWKHUYLUWXDOFRPSRQHQWV

2 Design and Usage of RCV Tbx for MATLAB/Simulink 7KLVVHFWLRQGHVFULEHVDQGDQDO\]HVWKHVRIWZDUHGHVLJQ RIWKH5&97E[,WGHWDLOVWKHWZRWRROER[GRZQORDGVDV WKH\DUHDYDLODEOHDW>@QDPHO\WKHURERWFRQWUROGRZQ ORDG Robotic Control Tbx DQGWKHYLVXDOL]DWLRQGRZQ ORDG Robotic Visualization Tbx 

TN

Deatcu et al.

MATLAB/Simulink-based Rapid Control Prototyping

,WLVVKRZQKRZDURERWFRQWUROSURJUDPFDQEHGH YHORSHG WHVWHG E\ VLPXODWLRQ SXW LQWR VHUYLFH VRIW FRPPLVVLRQLQJ DQGILQDOO\XVHGDVDUHDOFRQWURO&RQ WLQXLW\ RI WKH WRRO FKDLQ DV LV QHHGHG WR PHHW WKH UH TXLUHPHQWVRI5&3LVJLYHQ+HQFHWKHVDPHVHTXHQFH RIFRQWUROFRPPDQGVFRGHGLQWKHVDPHODQJXDJHFDQEH VHQWHLWKHUWRDYLVXDOL]HGRUDUHDOURERW )LJXUH GHSLFWV WKH PDLQ IXQFWLRQDO SDUWV RI WKH 5&97E[ControlInterpreterDQGVisualizationDUHWKH WKUHH PDLQ IXQFWLRQDOLWLHV ZKLFK DUH GLVWULEXWHG DFURVV WKHWZRVRIWZDUHSDFNDJHV 

7KH LQWHUSUHWHU FDQ EH LQVWDOOHG HLWKHU RQ D URERW FRQWUROOHURURQD0$7/$%3&DVSDUWRIWKHRobotic Visualization Tbx ,PSOHPHQWDWLRQ RI WKH LQWHUSUHWHU VOLJKWO\GLIIHUVGHSHQGLQJRQURERWW\SHDQGURERWFRQ WUROOHU KDUGZDUH +RZHYHU WKH EDVLF SULQFLSOH RI LQWHU SUHWHUSURJUDPDOJRULWKPUHPDLQVWKHVDPH 

 Figure 6: Main parts of the RCV toolbox for MATLAB/Simulink.

$ FROOHFWLRQ RI FRQWURO FRPPDQGV IRU UHDO DV ZHOO DV YLVXDOL]HG URERWV DQG LQWHUSUHWHUV IRU UHDO URERWV DUH GRZORDGHGZLWKWKHILUVWSDUWRIWKH5&97E[WKHRobotic Control Tbx ,QWHUSUHWHUV IRU YLVXDOL]HG URERWV DOVRFDOOHGYLUWXDOURERWVDQGWKHYLVXDOL]DWLRQVRIWZDUH DUHGRZORDGHGZLWKWKHVHFRQGSDUWRIWKH5&97E[WKH Robotic Visualization Tbx&XUUHQWO\ERWKSDUWVVXSSRUW LQWHUSUHWHUV IRU .DZDVDNL )61 .XND $JLOXV .5 7&3,3FRQQHFWLRQ DQGIRU.8.$.5 56FRQ QHFWLRQ  ,QWHUDFWLRQ EHWZHHQ WKH 0$7/$% FRQWURO 3& DQG WKH LQWHUSUHWHU SURJUDP DV ZHOO DV WKH LQWHUSUHWHU DOJR ULWKPLVGHSLFWHGLQ)LJXUH



 Figure 7: Simplified interpreter algorithm.

7KH FRQQHFWLRQ EHWZHHQ LQWHUSUHWHU DQG 0$7/$% FRQWURO 3& LV DOZD\V HVWDEOLVKHG E\ WKH LQWHUSUHWHU ,W FDQHLWKHUEHDQ56RUD7&3,3OLQN$IWHUFRQQHF WLRQLVHVWDEOLVKHGDQGFRPPXQLFDWLRQLQWHUIDFHDVZHOO DV WKH FRPPDQG EXIIHU LV LQLWLDOL]HG URERW FRQWURO FRPPDQGV FDQ EH UHFHLYHG E\ WKH LQWHUSUHWHU &RP PDQGVDUHZULWWHQWRD),)2EXIIHUUHDGIURPWKHUHDQG EURXJKWWRH[HFXWLRQ%XIIHULQJWKHFRPPDQGVLVQHFHV VDU\EHFDXVHH[HFXWLRQRIPRVWFRPPDQGVWDNHVVRPH WLPH

SNE 25(2) – 8/2015 73

Deatcu et al.

MATLAB/Simulink-based Rapid Control Prototyping

7KH LQWHUSUHWHU SURJUDP LV QRW EORFNLQJ PHDQZKLOH DQGUHFHLYLQJRIVXEVHTXHQWFRPPDQGVLVDOZD\VSRVVL EOH 6RPH FRPPDQGV VXFK DV FRPPDQGV IRU VWRSSLQJ WKH URERW IRU VHFXULW\ UHDVRQV RU DOWHULQJ WKH PRWLRQ VSHHG GXULQJ DQ RQJLQJ URERW PRYHPHQW KDYH WR EH H[HFXWHG LPPHGLDWHO\ +DQGOLQJ RI WKRVH FRPPDQGV LV QRWVKRZQLQ)LJXUH 2.1 Part I: Robotic Control Tbx 7KLV VXEVHFWLRQ GHWDLOV URERW FRQWURO SURJUDPPLQJ DQG JLYHVVRPHH[DPSOHVRIURERWFRQWUROFRPPDQGV 7KHFRQWURORIUHDOURERWVUHTXLUHVDQLQWHUSUHWHUSUR JUDP WR EH LQVWDOOHG RQ WKH URERW FRQWUROOHU 7KH LQ WHUSUHWHU IRU HDFK NLQG RI UHDO URERW LV ZULWWHQ LQ WKH DSSURSULDWH URERWVSHFLILF ODQJXDJH DQG FRSLHG WR WKH URERW FRQWUROOHU 7KH LQWHUSUHWHU SURJUDP WDNHV WKH FRPPDQGV IURP 0$7/$% DQG WUDQVODWHV WKHP LQWR FRPPDQGV IRU WKH URERWVSHFLILF ODQJXDJH ZKLFK DUH H[HFXWDEOH E\ WKH URERW FRQWUROOHU 6HFXULW\ FRQVLGHUD WLRQV VXFK DV ZRUNVSDFH VXSHUYLVLRQ DQG PRYHPHQW H[HFXWLRQDUHWKHUHIRUHVWLOOFRYHUHGE\WKHURERWFRQ WUROOHU $IWHUWKHWRROER[LVLQVWDOOHGRQWKHFRQWURO3&DQG WKH DSSURSULDWH LQWHUSUHWHU LV FRSLHG WR WKH URERW FRQ WUROOHUWKHLQWHUSUHWHUSURJUDPRQWKHFRQWUROOHUQHHGVWR EH VWDUWHG )RU 56 FRQQHFWLRQV DIWHU VWDUWXS RI LQ WHUSUHWHU WKH FRQWUROOHU LV UHDG\ WR UHFHLYH 0$7/$% FRQWURO FRPPDQGV LPPHGLDWHO\ )RU 7&3,3 FRQQHF WLRQV WKH LQWHUSUHWHU RQ WKH FRQWUROOHU DFWV DV D VHUYHU DQGZDLWVIRUDVXLWDEOHFOLHQWWRFRQQHFW7KLVFOLHQWLVD URERWREMHFWFUHDWHGRQWKHFRQWURO3& 7DEOH OLVWV DOO DYDLODEOH FRPPDQGV IRU URERW FRQ WURODOSKDEHWLFDOO\  2IHVVHQWLDOLPSRUWDQFHLVWKHrobot()FRPPDQGZKLFK FUHDWHV DQG GHVWUR\V WKH URERW REMHFW ZKLFK DFWV DV DQ LQWHUIDFH IRU FRQWURO FRPPDQGV /LVWLQJ  VKRZV WKH V\QWD[RIWKH robot()FRPPDQG&XUUHQWO\URERWVFDQ HLWKHUEHRIW\SH¶.DZDVDNL¶RURIW\SHµ.XND¶  >> h1 = robot( 'open', 'Kawasaki',... 'tcpip', IP-ADRESS, PORT ); >> h2 = robot( 'open', 'Kuka',... 'serial',COM-PORT); >> robot( 'close', h1, h2);

 Listing 1: Create and destroy robot objects.

 74 SNE 25(2) – 8/2015

rbrake() rcallback() rdisp() rerror() rget() ris() rkill()

rmove() robot() rpoint() rprocess() rreset() rrun() rset() rstatus() rstop() rteach() rwait()

TN

EUDNHWKHPRWLRQRIRQHRUDOOURERWV GLUHFWO\ GHILQHIXQFWLRQVWKDWDUHH[HFXWHGDXWR PDWLFDOO\ IRUPDWWHGGLVSOD\RISRVLWLRQVWUXFWXUHV VHWXSDIXQFWLRQGHDOLQJZLWKHUURU FRGHVUHFHLYHGIURPURERWFRQWUROOHUV JHWLQWHUSUHWHUWRROER[DQGPRWLRQ SURSHUWLHVDQGFXUUHQWSRVLWLRQV FKHFNWKHVWDWXVRIFRPPDQGVDQGSUR FHVVHV EUDNHDQGVWRSWKHPRWLRQRIRQHRUDOO URERWVGLUHFWO\WKHQVHWXSWKHRULJLQDO VWDWHRIURERW V  PRYHDURERW FUHDWHRUGHVWUR\DURERWREMHFWWKDWFDQ EHFRQWUROOHG GHILQHURERWSRVLWLRQVZLWKFRRUGLQDWHV DQGPRWLRQSURSHUWLHV GHILQHFRPSOH[RSHUDWLRQV UHDFWLYDWHURERW V DIWHUDXWRPDWLFVZLWFK LQJRIIRIWKHLQWHUSUHWHU V  UHDFWLYDWHURERW V DIWHUXVLQJUEUDNH RU UVWRS  VHWXSLQWHUSUHWHUWRROER[DQGPRWLRQ SURSHUWLHV VZLWFK21RU2))VWDWXVUHSRUW EUDNHDQGVWRSWKHPRWLRQRIRQHRUDOO URERWVGLUHFWO\ WHDFKDQGVDYHSRVLWLRQVRIDURERW EORFNWKH0$7/$%SURPSWXQWLOWKH VWDWXVRIFRPPDQGVRUSURFHVVHVIXOILOOVD FRQGLWLRQ

 Table 1: List of available robot control commands.

7KH FRPPDQG robot() FUHDWHV D URERW REMHFW DQG UH WXUQVD0$7/$%KDQGOHWRWKHREMHFW7KLVKDQGOHFDQ WKHQ EH SDVVHG WR RWKHU FRQWURO FRPPDQGV WR DGGUHVV WKLV VSHFLILF URERW 6RPH FRQWURO FRPPDQGV VXFK DV rbrake() rkill() rreset() rrun() DQG rstop() DIIHFWDOOURERWVWKDWWKHFRQWURO3&LVFXUUHQWO\FRQQHFW HG WR LIQR KDQGOH LV SDVVHGWR WKH FRPPDQG DV DILUVW SDUDPHWHU&RPSOH[FRQWURORSHUDWLRQVFDQEHFRGHGE\ XVLQJ WKH FRPPDQG rprocess() :LWK WKLV FRPPDQG WDVNVWREHIXOILOOHGE\PRUHWKDQRQHURERWFDQDOVREH GHILQHG6HTXHQWLDODVZHOODVFRQFXUUHQWRSHUDWLRQVDUH SRVVLEOH DQG FRQWURO FRPPDQGV FDQ EH VWUXFWXUHG DQG JURXSHG/LVWLQJVKRZVDVKRUWH[DPSOHIRUDFRQFXU UHQWRSHUDWLRQZLWKWZRURERWV  

TN

Deatcu et al.

MATLAB/Simulink-based Rapid Control Prototyping 2.2 Part II: Robotic Visualization Tbx

>> load P1 P2 >> rprocess( {... Kuka, P1,... Kawasaki,{P2, 'speed', 50},... },... { Kuka, 'home',... Kawasaki, 'home',... } ); Listing 2: Two robots in a concurrent operation pro-grammed with rprocess().

 KukaXQG Kawasaki DUHWKHKDQGOHVIRUWKHURERWV7KH URERWVPRYHDWWKHVDPHWLPHWRWKHSRVLWLRQVP1DQGP2 ZKLFK DUH GHILQHG E\ WKH ORDGHG YDULDEOHV P1 DQG P2.7KH\VWDUWWRPRYHWRWKHLUKRPHSRVLWLRQVRQO\DIWHU WKH\KDYHERWKILQLVKHGWKHLUPRYHV 7KH rprocess() FRPPDQG DOUHDG\ DOORZV VRPH FRP SOH[LW\ EXW IXUWKHUPRUH DOO VWDQGDUG DQG DGYDQFHG SURJUDPPLQJ IHDWXUHV RI 0$7/$%6LPXOLQN FDQ EH XVHG WR FUHDWH HYHQ PRUH FRPSOH[ DQG DOVR VLPXODWLRQ EDVHG URERW FRQWUROV $Q H[DPSOH RI VXFK LQWHJUDWLRQ ZLWK RWKHU WRROV LV GHSLFWHG LQ )LJXUH ZKHUH 5&9 FRQWUROFRPPDQGVDUHHPEHGGHGLQ6WDWHIORZ 

7KH Robotic Visualization Tbx LV WKH VHFRQG VRIWZDUH SDFNDJHRIWKH5&97E[DQGFDQEHXVHGIRUWHVWLQJDQG HQKDQFHPHQW RI FRQWUROV GHYHORSHG ZLWK WKH 5RERWLF &RQWURO7E[,WRIIHUVGLVWULEXWHG'YLVXDOL]DWLRQRIXS WRURERWVLQ0$7/$%DQGDOORZVLQWHUDFWLYHFRQWURO RIYLVXDOL]HGUHDOURERWVDQGDOVRSXUHYLUWXDOURERWVLQD YLUWXDOHQYLURQPHQW7KHUHE\VDIHGHYHORSPHQWWHVWLQJ DQG GHEXJJLQJ RI URERW DSSOLFDWLRQV LV SRVVLEOH )XU WKHUPRUH WKH WRROER[ LQFOXGHV DQ 67/ LQWHUIDFH IRU LPSRUWLQJXVHUGHILQHGJUDSKLFDOREMHFWVGHVLJQHGXVLQJ H[WHUQDO&$'VRIWZDUH 7KH FRQWURO RI D YLVXDOL]HG URERW UHTXLUHV DQ LQWHU SUHWHUSURJUDPWRR,QWHUSUHWHUIXQFWLRQDOLW\IRUYLUWXDO URERWV LV LQFOXGHG LQ WKH Robotic Visualization Tbx ,QWHUSUHWHUV DUH SDUW RI YLUWXDO URERW REMHFWV DQG HVWDE OLVKD7&3,3OLQNEHWZHHQFRQWURO3&DQGYLVXDOL]DWLRQ 3&&RQWUROSURJUDPDQGYLVXDOL]DWLRQFDQSK\VLFDOO\EH ORFDWHGRQWKHVDPH3&UHSUHVHQWHGE\WZR0$7/$% LQVWDQFHV 8VHU WRROER[¶V LQWHUIDFH DV ZHOO DV YLUWXDO REMHFWV LV GHVLJQHG DV D 0$7/$% FODVV )LJXUH SLF WXUHV YLVXDOL]DEOH REMHFW W\SHV WKDW PDS HQWLWLHV RI WKH UHDOZRUOG

 Figure 9: Types of visualizable object.



 Figure 8: State-based control using Stateflow and RCV Tbx.

 7KH LQWHJUDWLRQ RI DUELWUDU\ H[WHUQDO KDUGZDUH ZKLFK FDQDFWDVVHQVRUVRUDFWRUVLVDOVRIHDVLEOH7KLVZRXOG DOORZDELJDGYDQWDJHFRPSDUHGWRWKHUHVWULFWHGDYDLOD ELOLW\ RI DGGLWLRQDO KDUGZDUH ZKHQ GHYHORSLQJ URERW FRQWUROVZLWKSURSULHWDU\VRIWZDUHDQGODQJXDJHV

%HVLGHVYLUWXDOURERWREMHFWVHQYLURQPHQWDOREMHFWVDQG SDUW REMHFWV FDQ EH YLVXDOL]HG (QYLURQPHQWDO REMHFWV DUHSDVVLYHREMHFWVWKDWFDQQRWEHPRYHGE\WKHURERWV 3DUW REMHFWV DUH DOVR SDVVLYH REMHFWV EXW WKH\ FDQ EH SLFNHG DQG PRYHG E\ URERWV ,Q )LJXUH H[DPSOHV IRU HQYLURQPHQWDOREMHFWVDUHWZRWDEOHVDQGDFRQYH\RUD WHVW WXEH UHSUHVHQWV WKH SDUW REMHFWV 5RERW REMHFWV WKDW UHSUHVHQW WKH DFWLYH YLVXDOL]DWLRQ REMHFWV LQFOXGH NLQH PDWLFVZKLFKPDWFKHVWKHNLQHPDWLFVRIWKHFRUUHVSRQG LQJUHDOURERW)XUWKHUPRUHSXUHYLUWXDOURERWVRURWKHU DFWLYHREMHFWVVXFKDVFDUWVFDQEHYLVXDOL]HGLIWKHXVHU GHILQHV DSSURSULDWH NLQHPDWLFV )LJXUH VKRZV WZR YLVXDOL]HGUHDOURERWVDQGDSXUHYLUWXDOFDUW SNE 25(2) – 8/2015 75

Deatcu et al.

MATLAB/Simulink-based Rapid Control Prototyping

7DEOHOLVWVFRPPDQGVRIWKH5RERWLF9LVXDOL]DWLRQ 7E[ 7KH ILUVW WKUHH FRPPDQGV DUH XVHG WR LQLWLDOL]H ILQLVK DQG PRQLWRU D YLVXDOL]DWLRQ VHVVLRQ :LWK WKH FUHDWLRQ RI D 0$7/$% 'ILJXUH DW VWDUWXS D 0$7/$%WLPHUREMHFWLVDOVRVWDUWHG,WHQVXUHVWKDWWKH YLVXDOL]HGREMHFWV DUH UHIUHVKHG  WLPHV SHU VHFRQG WR DFKLHYHDVPRRWKDSSHDUDQFHRIWKHDQLPDWLRQ  ViSu.start ViSu.stop

ViSu.info

ViSu.create()

ViSu.repose_robot() ViSu.delete_robot()

ViSu.place_env() ViSu.repose_env()

ViSu.delete_env()

ViSu.place_part() ViSu.repose_part() ViSu.delete_part()

LQLWLDOL]HWKHYLVXDOL]DWLRQ RSHQDQHPSW\'ZLQGRZ VWRSWKHYLVXDOL]DWLRQGHOHWH DOOYLUWXDOREMHFWVFORVHWKH ILJXUH GLVSOD\DOOYLUWXDOREMHFWV ZLWKWKHLU,'W\SHSRVLWLRQ DQGDGGLWLRQDOLQIRUPDWLRQ GHSHQGLQJRQREMHFWW\SH LQVWDQWLDWHDURERWREMHFWRI W\SHµ.XND¶µ.DZDVDNL¶RU XVHUGHILQHGW\SH DOWHUSRVLWLRQRIURERWREMHFW LGHQWLILHGE\LWVLG GHOHWHDURERWREMHFWLGHQWL ILHGE\LWVLG LQVWDQWLDWHDQHQYLURQPHQWDO REMHFW DOWHUSRVLWLRQRIDQHQYL URQPHQWDOREMHFWLGHQWLILHG E\LWVLG GHOHWHDQHQYLURQPHQWDO REMHFWLGHQWLILHGE\LWVLG LQVWDQWLDWHDPRYHDEOH REMHFW DOWHUSRVLWLRQRIDSDUWRE MHFWLGHQWLILHGE\LWVLG GHOHWHDSDUWREMHFWLGHQWL ILHGE\LWVLG



2.3 Integrated RCV Tbx usage example )LJXUH LQWURGXFHG LQ 6HFWLRQ VKRZV DQ H[DPSOH RI PXOWLURERW FRQILJXUDWLRQ 1RWLFH WKDW LQ WKDW FRQILJX UDWLRQ ZH KDYH LQWHJUDWHG UHDO URERWV IURP GLIIHUHQW YHQGRUV LH IURP .XND $JLOXV .5  DQG .DZDVDNL )61 DQGVRPHYLUWXDOURERWVWRR ,Q WKLV VHFWLRQ ZH IRFXV RQ DQ DFDGHPLF VFHQDULR ZKHUH ZH KDYH D URERW FRQWURO EHLQJ DSSOLHG RQO\ WR VRPHYLUWXDOREMHFWV)RUWKLVLWLVQHFHVVDU\WRVWDUWWZR LQVWDQFHVRI0$7/$%RIWKHVHRQHDFWVDVWKHFRQWURO 3& FOLHQW  DQG WKH RWKHU LV WKH YLVXDOL]DWLRQ VHUYHU 7KHVH 0$7/$% LQVWDQFHV FDQ HLWKHU EH ORFDWHG RQ GLIIHUHQW FRPSXWHUV DV VKRZQ LQ )LJXUH RU RQ WKH VDPHFRPSXWHUDVLQWKHIROORZLQJH[DPSOH7KHH[DP SOH LQFOXGHV WZRURERWV WKH HQYLURQPHQWDO REMHFW WDEOH DQGDWHVWWXEHZKLFKLVLVFODVVLILHGDVDµSDUW¶ /LVWLQJLOOXVWUDWHVKRZ0$7/$%FRQWURODQGYLVXDOL ]DWLRQ LQVWDQFHV FDQ LQWHUDFW 0$7/$% FRPPDQGV LQ OLQHWRDQGKDYHWREHH[HFXWHGRQ WKHYLVXDOL]DWLRQLQVWDQFHZKLOHWKHLQGHQWHGOLQHV WRDQGDUHFRQWUROFRPPDQGVZKLFKKDYHWREH H[HFXWHGRQWKHFRQWUROLQVWDQFH   1 2 3 4 5 6 7

Table 2: User Interface for Visualization.

 7KH RWKHU FRPPDQGV RIIHU LGHQWLFDO IXQFWLRQDOLWLHV IRU WKH WKUHH GLIIHUHQW W\SHV RI YLVXDOL]DEOH REMHFWV URERW HQYLURQPHQWDO DQG SDUWREMHFWV FDQEH,  LQLWLDOL]HG ,,  UHSRVLWLRQHG DQG ,,  GHOHWHG GXULQJ D VLPXODWLRQ VHV VLRQ &XUUHQWO\WKHWRROER[LVEHLQJUHYLVHGH[WHQVLYHO\WR KDUPRQL]H WKH XVHU LQWHUIDFH DQG LPSURYH VRIWZDUH VWDELOLW\DQGUREXVWQHVV

8 9 10 11 12 13 14

>> ViSu.start; >> ViSu.create('Kawasaki', 40000,... [0,0,0,0,0,0]); >> r1=robot('open', 'Kawasaki',... 'tcpip', 'localhost', 40000); >> ViSu.create('Kuka', 40001,... [500,500,0,0,0,0]); >> r2=robot('open', 'Kuka',... 'tcpip', 'localhost', 40001); >> ViSu.place_env('table.stl',... [-800 0 0 0 0 0],'blue'); >> ViSu.place_part('test_tube.stl',... [-800 0 400 45 0 0],'white'); >> rset(r1,'signal', [-9, 10]); >> rmove(r1,'home2'); >> rmove(r2,'home2'); >> ViSu.info; >> ViSu.delete_part(1); >> robot(r1, r2, 'close'); >> ViSu.stop;

 Listing 3: Code Example of Interaction of the two Parts of RCV Tbx for MATLAB/Simulink.



76 SNE 25(2) – 8/2015

TN

TN

Deatcu et al.

MATLAB/Simulink-based Rapid Control Prototyping

$IWHUDYLUWXDOURERWKDVEHHQFUHDWHGZLWKWKHFRP PDQG ViSu.create() WKH 0$7/$% SURPSW IRU WKH YLVXDOL]DWLRQ LQVWDQFH LV EORFNHG XQWLO WKH 7&3,3 FRQ QHFWLRQ WR WKH FRQWURO LQVWDQFH LV HVWDEOLVKHG 7KLV LV DFFRPSOLVKHG ZKHQ WKH DSSURSULDWH robot(’open’,…) FRPPDQG LV H[HFXWHG RQ WKH FRQWURO LQVWDQFH ZKLFK LQLWLDWHVDURERWFRQWUROREMHFW7KHWDEOHDVZHOODVWKH WHVWWXEHMXVWH[LVWYLUWXDOO\DQGDUHSDVVLYHREMHFWVWKDW DUH QRW FRQWUROODEOH DQG WKHUHIRUH KDYH QR FRXQWHUSDUW RQFRQWUROLQVWDQFH$IWHUOLQHLVH[HFXWHGWKHYLVXDOL ]DWLRQORRNVDVGHSLFWHGLQ)LJXUH 



 Figure 11: Visualization example after execution of some control commands.

 Figure 10: Visualization example after creation of objects.

 7KHQ VRPH VLPSOH FRQWURO FRPPDQGV EHJLQQLQJ ZLWK OLQHDUHH[HFXWHG7KHFRPPDQGLQOLQHFORVHVWKH JULSSHU RI WKH .DZDVDNL URERW $IWHU WKDW ERWK URERWV DUH PRYHG WR RQH RI WKHLU SUHGHILQHG KRPH SRVLWLRQV ‘home2’ %DFN RQ WKH YLVXDOL]DWLRQ LQVWDQFH LQIRU PDWLRQ RQ WKH FXUUHQW YLVXDOL]HG REMHFWV LV UHTXHVWHG :LWKWKLVLQIRUPDWLRQWKHXVHUNQRZVWKDWWKHWHVWWXEH LVDµSDUW¶REMHFWZLWK,'DQGFDQEHGHOHWHGGXULQJWKH YLVXDOL]DWLRQ VHVVLRQ 7KLV IHDWXUH LV XVHIXO LI RQH ZDQWV IRU H[DPSOH WR DOWHU WKH VXUURXQGLQJV RI DFWLYH URERWREMHFWVZLWKRXWUHVWDUWLQJWKHYLVXDOL]DWLRQ $IWHU H[HFXWLRQ RI OLQH WKH VFHQDULR ORRNV DV GH SLFWHG LQ )LJXUH 7KH JULSSHU LV FORVHG ERWK URERWV KDYHPRYHGWRWKHLUKRPHSRVLWLRQVDQGWKHWHVWWXEHKDV GLVDSSHDUHG 7KH ODVW WZR FRPPDQGV FORVH WKH 7&3,3 FRQQHFWLRQV DQG ILQDOO\ FORVH DQG GHOHWH WKH YLVXDOL]D WLRQILJXUH 

 :LWKRXW ODUJHU PRGLILFDWLRQV LW LV SRVVLEOH WR DSSO\ WKH VDPHVHTXHQFHRIFRQWUROFRPPDQGVWRUHDOURERWVLQD UHDO HQYLURQPHQW LI ZH DVVXPH WKH UHDO URERWV DUH RI DSSURSULDWH W\SHV DQG SODFHG LQ WKH VDPH SRVLWLRQV ,Q WKLV FDVH LQVWHDG RI WKH FRPPDQGV ViSu.create() WKDW LQLWLDOL]H WKH YLVXDOL]HG UHDO URERWV 7&3,3 DQG 56FRQQHFWLRQVWRWKHFRQWURO3&QHHGWREHHVWDE OLVKHGE\WKHURERWFRQWUROOHUV)RUYLVXDOL]HGURERWVDOO FRQQHFWLRQV DUH RI W\SH 7&3,3 DOWKRXJK IRU D UHDO .8.$ .5 IRU H[DPSOH DQ 56 FRQQHFWLRQ LV QHFHVVDU\+HQFHWKHFRQWUROFRPPDQGLQOLQHKDVWR EH DGDSWHG 7KH FRQWURO REMHFW r2 QHHGV WR EH RSHQHG ZLWKWKHSDUDPHWHU ’serial’LQVWHDGRIZLWK ’tcpip’ ,QVWHDGRIDYLVXDOL]HGWDEOHDQGDYLVXDOL]HGWHVWWXEHD UHDOWDEOHDQGDUHDOWHVWWXEHFRXOGEHSODFHGLQWKHUHDO URERW FHOO 0RWLYDWLRQ IRU VXFK VLPSOH FRQWURO WHVWV E\ VLPXODWLQJWKHPRYHPHQWVILUVWLQDYLUWXDOHQYLURQPHQW FRXOG EH IRU H[DPSOH WR DYRLG FROOLVLRQV EHWZHHQ UR ERWVDQGWDEOH

3 Summary and Further Work 7KH 5&9 7E[ RIIHUV H[FHOOHQW SRVVLELOLWLHV IRU GHYHO RSLQJ PXOWLYHQGRU URERW FRQWUROV LQ D KRPRJHQHRXV VRIWZDUH HQYLURQPHQW ,W IXOILOOV WKH PDLQ UHTXLUHPHQWV RI D 5&3 FDSDEOH WRRO 7KH NH\ EHQHILWV RI XVLQJ WKH 5&9 7E[ DUH WKH SRVVLELOLW\ WR GHYHORS PRQROLWKLF FRQWURO SURJUDPV IRU LQWHUDFWLYH URERWV IURP GLIIHUHQW PDQXIDFWXUHUV DQG WKH HDV\ PDQXIDFWXUHULQGHSHQGHQW LQWHJUDWLRQRIH[WHUQDOKDUGZDUH

SNE 25(2) – 8/2015 77

Deatcu et al.

MATLAB/Simulink-based Rapid Control Prototyping

7KH0$7/$%6LPXOLQNHQYLURQPHQWLVZHOOHVWDE OLVKHGLQWKHDUHDRIHQJLQHHULQJDQGWRGD\LVDVWDQG DUG WRRO IRU HQJLQHHUV +HQFH WKH HQJLQHHU FDQ EHQHILW IURPHPSOR\PHQWRIDOOSURJUDPPLQJWRROVDYDLODEOHLQ WKLVHQYLURQPHQW(VSHFLDOO\IRUUHFHQWDGYDQFHGFRQWURO DSSOLFDWLRQV VXFK DV WKH 6LPXODWLRQ %DVHG &RQWURO 6%& DSSURDFKLQWURGXFHGE\0DOHW]NL>@WKHLQWHJUD WLRQ RI WKH 5&9 7E[ LQWR 0$7/$%6LPXOLQN LV YHU\ DGYDQWDJHRXV 6LPXODWLRQ PRGHOV DUH GLUHFWO\ XVHG DV FRQWUROSURJUDPVLQWKLVDSSURDFKDQGLWLVREYLRXVWKDW 5&9 7E[ FRQWURO FRPPDQGV FDQ HDVLO\ EH LQWHJUDWHG LQWRWKHVHNLQGVRIVLPXODWLYHFRQWURO ,IRQHWDNHVDQRWKHUVWHSLWFDQEHVHHQWKDWPRGHOV HPSOR\HG IRU FRQWURO WDVNV FDQ DOVR EH DXWRPDWLFDOO\ JHQHUDWHG IURP D NQRZOHGJH EDVH DV SURSRVHG LQ WKH 6%& DQG 6\VWHP (QWLW\ 6WUXFWXUH 6(6  DSSURDFK E\ 6FKZDWLQVNL DQG )UH\PDQQ > @ 7KH GHYHORSPHQW RIIOH[LEOHWDVNRULHQWHGPXOWLURERWFRQWUROVLVFRQVLG HUDEO\VLPSOLILHGZLWKWKLVDSSURDFK  References >@ 3DZOHWWD7)UH\PDQQ%'HDWFX&6FKPLGW$. 5RERWLF &RQWURODQG9LVXDOL]DWLRQ7RROER[IRU0$7/$%,Q %UHLWHQHFNHU).XJL$7URFK,HGLWRUVMATHMOD 2015.3URFHHGLQJVRI0$7+02'WK9LHQQD ,QW&RQIRQ0DWKHPDWLFDO0RGHOOLQJ)HE $5*(6,05HSRUW1R$5*(6,09LHQQD$XVWULD 873 3RVWHU >@ 5HVHDUFK*URXS&($  Robotic Control & Visualization (RCV) Toolbox for MATLAB >,QWHUQHW@>FLWHG 0DUFK@$YDLODEOHIURPKWWSZZZPEKV ZLVPDUGHFHDVZBSURMHFWVKWPO >@ $EHO'%ROOLQJ$Rapid Control Prototyping – Methoden und Anwendungen. 6SULQJHU9HUODJ%HUOLQ.  >@ 9LVXDO&RPSRQHQWV&RUSRUDWLRQ   3DRealize-R >,QWHUQHW@>FLWHG2FW@$YDLODEOHIURP KWWSZZZYLVXDOFRPSRQHQWVFRPSURGXFWVGUHDOL]HUU >@ &KLQHOOR)6FKHJJL60RUELGL)3UDWWLFKL]]R'.&7 D0$7/$%WRROER[IRUPRWLRQFRQWURORI.8.$URERW PDQLSXODWRUV,QProceedings of IEEE Int. Conf. on Robotics and Automation$QFKRUDJH$ODVND3 

78 SNE 25(2) – 8/2015

TN

>@ &KLQHOOR)6FKHJJL60RUELGL)3UDWWLFKL]]R'.8 .$&RQWURO7RROER[0RWLRQFRQWURORIURERWPDQLSXOD WRUVZLWK0$7/$%Robotics Automation Magazine ,(((   >@ 0DOHW]NL*3DZOHWWD73DZOHWWD6/DPSH%3$PRG HOEDVHGURERWSURJUDPPLQJDSSURDFKLQWKH 0$7/$%6LPXOLQNHQYLURQPHQW ,QAdvances in Manufacturing Technology – XXWK,QW&RQIRQ0DQXIDF WXULQJ5HVHDUFK ,&05 6HSW/LYHUSRRO 8.3 >@ 2UWK3%ROOLJ$$EHO'5DSLG&RQWURO3URWRW\SLQJ GLVNUHWHU6WHXHUXQJHQLQGHU$XWRPDWLVLHUXQJVWHFKQLN ,QSPS/IPC/Drives Congress1UQEHUJ*HUPDQ\ 3 >@ 0DOHW]NL* Rapid Control Prototyping komplexer und fexibler Robotersteuerungen auf Basis des SBCAnsatzes. >GLVVHUWDWLRQLQ*HUPDQ@5RVWRFN8QLYHUVLW\ *HUPDQ\ >@ 6FKZDWLQVNL73DZOHWWD73DZOHWWD6)OH[LEOH7DVN 2ULHQWHG5RERW&RQWUROV8VLQJWKH6\VWHP(QWLW\6WUXF WXUHDQG0RGHO%DVH$SSURDFK,QSimulation Notes Europe (SNE)   >@ )UH\PDQQ%3DZOHWWD76FKZDWLQVNL73DZOHWWD6 0RGHOOELEOLRWKHNIUGLH,QWHUDNWLRQYRQ5RERWHUQLQGHU 0$7/$%'(968PJHEXQJDXI%DVLVGHV6%& )UDPHZRUNV,QProceedings of ASIM-Treffen STS/GMMS5HXWOLQJHQ$5*(6,0 5HSRUW1U$6,00LWWHLOXQJ$0$5*( 6,0$6,03XE9LHQQD$XVWULD3

Acknowledgement 7KHDXWKRUVDUHWKDQNIXOWRRXUIRUPHUFRZRUNHU7REL DV6FKZDWLQVNLDQGDOOVWXGHQWVZKRZRUNHGYHU\PRWL YDWHG ZLWKLQ WKH SURMHFW )XUWKHUPRUH WKH DXWKRUV DFNQRZOHGJHWKHILQDQFLDOVXSSRUWRIWKH)HGHUDO0LQLV WU\RI(GXFDWLRQDQG5HVHDUFKDQGWKH0LQLVWU\RI(GX FDWLRQ6FLHQFHDQG&XOWXUHRI0HFNOHQEXUJ:HVW3RP HUDQLD

Suggest Documents