Automatic Configuration of the Dynamic Model for Common Industrial Robots
&<6;48? 08AM !8<AM 0QEA
"AFG<GHG8 9BE )EB68FF BAGEB? 4A7 +B5BG<6F ")+
.A<I8EF<GPG $4E?FEH;8 -!
$4E?FEH;8 8E@4AL N@J8AMJB8EAO<E4H>478
Abstract:+B5BG 6BAGEB? FB9GJ4E8 <A;8E8AG?L 78C8A7F BA G;8 @86;4A<64? FGEH6GHE8 B9 4 :<I8A EB5BG @4><A: <G 7<99<6H?G GB E8HF8 4A7 GB F;4E8 FB9GJ4E8 4@BA: 7<998E8AG EB5BG GLC8F -;8E89BE8 @BG<BA 6BAGEB? FLFG8@F 6B@8 <A I8EL ?4E:8 7<I8EF<G<8F FC86<9<6 :B4? B9 G;8 CEB=86G B7(E: <:<G4? (A 78@4A7 B@CHG<A: (E:4A<F@ 9BE +84? G<@8 ,LFG@F J<G;<A G;8 CE<BE<GL CEB:E4@@8 V(E:4A<6 B@CHG<A:W <F G;8 78I8?BC@8AG B9 4A BE:4A<6 EB5BG 6BAGEB? FLFG8@ -;<F <F 4 :8A8E4?<M87 4A7 F8?9 6BA9<:HE<A: 6BAGEB? FLFG8@ 4CC?<645?8 GB G;8 @BG<BA 6BAGEB? B9 4 J<78 6?4FF B9 7<998E8AG EB5BG GLC8F FC86<4??L <G 4HGB@4G8F G;8 FB?I<A: B9 G;8 6?H@FL ><A8@4G<6 4A7 7LA4@<6 8DH4G<BAF A868FF4EL 9BE @BG<BA 6BAGEB? 4A7 B998EF 9HA6G<BA4?<G<8F 9BE 4HGB@4G8 GE4=86GBEL :8A8E4G<BA -;<F C4C8E 9B6HF8F BA G;8 7LA4@<6 EB5BG @B78?
4A7 78F6E<58F ;BJ GB 4HGB@4G<64??L 78E<I8 G;8 7LA4@<6 8DH4G<BAF 9EB@ 4 786?4E4G<I8 FC86<9<64G<BA B9 G;8 EB5BG 4F J8?? 4F G;8 :E4C;<64? HF8E <AG8E9468 5L J;<6; G;<F CEB68FF <F <AIB>87 "A C4EG<6H?4E J8 :8A8E4G8 G;8 6B@C?8G8 %4:E4A:<4A 7LA4@<6 @B78? 9BE :8A8E4? F8E<4? @4A<CH?4GBEF
1 Introduction
"A7HFGE<4? @4A<CH?4GBEF 4E8 8KGE8@8?L 6B@C?8K 7LA4@<6 FLFG8@F HF87 GB C8E9BE@
E8C8G<G<I8 G4F>F FH6; 4F 4FF8@5?L 4E6 4A7 FCBG J8?7<A: @46;<A8 ?B47<A: 4A7 HA?B47<A:
@4G8E<4? ;4A7?<A: 6?H8<A: C4??8G<M<A: CB?<F;<A: 6HGG<A: 4A7 @4AL @BE8 !BJ8I8E ABG 846; EB5BG <F E<:;G 9BE 4 :<I8A G4F> 8: 4 ,64E4 <F ABG FH<G45?8 9BE FCE4L C4<AG<A: -;HF G;8E8 8K<FGF 4 ?4E:8 I4E<8GL B9 7<998E8AG ><A8@4G<6 FGEH6GHE8F 4A7 :8B@8GE<8F ,B@8
@4A<CH?4GBEF 4E8 78F<:A87 9BE 64EEL<A: ;84IL ?B47F 4A7 BG;8EF 4E8 BCG<@<M87 9BE I8EL 94FG 8A7 89986GBE @BI8@8AG "A7887 G;8 :8B@8GEL B9 4 EB5BG 4A7 <GF AH@58E B9 78:E88F B9 9E887B@ C?4L 4 68AGE4? EB?8 <A 4?? 4FC86GF B9 @BG<BA 6BAGEB? FB9GJ4E8
-;8 7<998E8AG @BG<BA 6BAGEB? FLFG8@F B9 @4AL I8A7BEF 4E8 B9G8A 54F87 BA CEBCE<8G4EL FB?HG<BAF -;8A 78I8?BC<A: 4A7 6HFGB@<M<A: FB9GJ4E8 9BE FC86<9<6 ><A8@4G<6F E8DH<E8 :E84G 899BEGF <A G8E@F B9 7B@4<A >ABJ?87:8 G<@8 4A7 6BFG BE 846; F8E<4? ?<A> EB5BG
@4A<CH?4GBE G;8 ><A8@4G<6 4A7 7LA4@<6 @B78?F ;4I8 GB 58 78G8E@<A87 -;8F8 @B78?F 4E8 7<99<6H?G GB 78E<I8 4A7 6B@CHG4G<BA4??L 8KC8AF<I8 -;8 ><A8@4G<6 @B78? E89?86GF G;8 :8B@8GE<6 4A7 G<@8 54F87 CEBC8EG<8F B9 @BG<BA J<G;BHG E8:4E7 B9 G;8 9BE68F BE @B@8AGF
G;4G 64HF8 G;8 @BG<BA 2 3 FC86<4??L <G 78F6E<58F G;8 E8?4G<BAF;<C 58GJ88A =B<AG FC468 4A7 4EG8F<4A FC468 -;8 78G8E@<A4G<BA B9 G;8 ><A8@4G<6 8DH4G<BAF <F 7BA8 <A GJB C;4F8F G 9<EFG G;8 7<E86G ><A8@4G<6F CEB5?8@ <F FB?I87 4A7 G;8A G;8 <AI8EF8 ><A8@4G<6F CEB5?8@ -;8 7<E86G ><A8@4G<6F @B78? 6B@CHG8F G;8 E8FH?G<A: CBF<G<BA 4A7 BE<8AG4G<BA B9 G;8 GBB? 68AGE8 CB<AG -) J;8A G;8 EB5BGXF =B<AG I4E<45?8F 4E8 :<I8A -;<F CEB5?8@ ;4F 4 HA<DH8 FB?HG<BA 4A7 <F <A :8A8E4? 84F<?L FB?I87 (9 @BE8 <@CBEG4A68 <A @BG<BA 6BAGEB?
<F G;8 <AI8EF8 ><A8@4G<6F @B78? J;<6; 6B@CHG8F G;8 =B<AG I4E<45?8F :<I8A 4 78F<E87 CBF<G<BA 4A7 BE<8AG4G<BA B9 G;8 EB5BGXF -) -;<F CEB5?8@ <F @H6; @BE8 6B@C?<64G87 5864HF8 4 ;<:;?L 6BHC?87 ABA?<A84E 8DH4G<BA FLFG8@ ;4F GB 58 FB?I87
?45BE4G8 6BAGEB? FLFG8@F 4?FB ;4I8 GB G4>8 <AGB 466BHAG G;8 @4A<CH?4GBE 7LA4@<6F 8F<78F G;8 @B78? 54F87 6BAGEB? BG;8E 4CC?<64G<BAF B9 4 7LA4@<6 @B78? 4E8 <A EB5BG 78F<:A 4A7 <A F<@H?4G<BA 2,/3 -;8 7LA4@<6 @B78? 78F6E<58F G;8 E8?4G<BAF;<C 58GJ88A G;8 @BG<BA B9 G;8 @4A<CH?4GBE 4A7 G;8 <AG8EA4? 4A7 8KG8EA4? 9BE68F 4A7 GBEDH8F G;4G 4E<F8 7HE<A: <GF BC8E4G<BA 8: <A8EG<4? 68AGE<9H:4? BE<B?<F :E4I<G4G<BA4? 4A7 46GH4G<A:
GBEDH8F BE 9BE68F -;8 7LA4@<6 @B78? 6BAF<FGF B9 4 F8G B9 ABA?<A84E 6BHC?87 F86BA7 BE78E 7<998E8AG<4? 8DH4G<BAF -;8 6BAI8AG<BA4? J4L GB 78I8?BC G;8 @BG<BA 6BAGEB?
FB9GJ4E8 B9 4 :<I8A EB5BG <F GB 7B <G J<G; 4A 8A:<A88E<A: GBB? FH6; 4F &4G%R 0<G;
G;8 7<FF8@<A4G<BA B9 FH6; GBB?F <G ;4F 588A 84F<8E GB CEB7H68 4A7 GB FB?I8 G;8 ><A8@4G<6 4A7 7LA4@<6 8KCE8FF<BAF G;4A 784?<A: J<G; G;8@ @4AH4??L HG G;8L 4E8 FG<?? CEB7H687 9BE 4 C4EG<6H?4E EB5BG 4A7 ;4I8 GB 58 E86B@CHG87 9BE BG;8E EB5BG GLC8F HEG;8E@BE8 G;8F8 FB?HG<BAF 4E8 7<99<6H?G GB <AG8:E4G8 <A 4A 8K<FG<A: 8AI<EBA@8AG 4A7 G;8<E CBEG45<?<GL <F B9G8A E8FGE<6G87 GB BE BEGE4A 6B78
"A G;8 A8KG F86G<BA J8 E8I<8J G;8 FG4G8 B9 G;8 4EG 4A7 <GF E8?4G<BAF;<C GB BHE E8F84E6;
,86G<BA <AGEB7H68F BHE CEB=86G 45BHG G;8 78I8?BC@8AG B9 4A BE:4A<6 EB5BG 6BAGEB?
J;<6; <A6?H78F FB 64??87 BE:4A<6 6B@CHG<A: 6;4E46G8E<FG<6F ?<>8 F8?9 6BA9<:HE4G<BA F8?9
;84?<A: 4A7 F8?9 BCG<@<M4G<BA 984GHE8F -;8 4?:BE<G;@F HF87 GB 6BAFGEH6G G;8 7LA4@<6 EB5BG @B78? 4E8 G;8A <??HFGE4G87 4A7 G;8 6BEE8FCBA78AG FB9GJ4E8 <@C?8@8AG4G<BA <F 78G4<?87 08 6BA6?H78 <A F86G<BA J<G; 4 FH@@4EL 4A7 4 78F6E<CG<BA B9 9HGHE8 FG8CF
2 State of the Art
+B5BG 6BAGEB? FB9GJ4E8 G8A7F GB 58 4 5<: @BAB?<G;<6 4A7 CEBCE<8G4EL FB9GJ4E8 FLFG8@ G;4G
<F 7<99<6H?G GB 8A;4A68 BE GB 474CG GB 7<998E8AG EB5BG GLC8F "A @BFG 64F8F <G <F I8A7BE FC86<9<6 0<G; 8K68CG<BA B9 FB@8 6B@@HA<64G<BA 5HF8F AB FG4A74E7<F4G<BA 899BEGF 6BH?7 CE8I4<? 4G 4?? <A G;8 EB5BG 6BAGEB? 7B@4<A (A G;8 BG;8E F<78 @BE8 BC8AA8FF B9 6BAGEB?
FLFG8@F <F A868FF4EL <A BE78E GB 58 45?8 GB E4C<7?L <AG8:E4G8 A8J 9HA6G<BA4?<G<8F <AGB G;8F8 FLFG8@F 8FC86<4??L J;8A G;8 4CC?<64G<BA E8DH<E8@8AGF 6;4A:8 F 4 6BAF8DH8A68 4 F8E<8F B9 4GG8@CGF J8E8 FG4EG87 GB FC86<9L 4 HA<I8EF4? 4E6;<G86GHE8 9BE 78I8?BC<A: EB5BG<6 6BAGEB?
FB9GJ4E8 J<G; BC8A <AG8E9468F &BE8BI8E FB9GJ4E8 E8HF8 4A7 @4<AG4<A45<?<GL <F :8A8E4??L
<@CEBI87 5L FG4A74E7<M87 <AG8E9468F <@CBF87 5L G;8F8 9E4@8JBE>F
(+((, (C8A +B5BG BAGEB? ,B9GJ4E8 (C8A +84? G<@8 BAGEB? ,8EI<68F <F 4A B5=86G BE<8AG87 4A7 EB5BG <A78C8A78AG 9E4@8JBE> 9BE 4?? 4FC86GF B9 EB5BG 6BAGEB? 2E3 -;8E89BE8 <G 6B@8F J<G; 4 :8A8E4? CHECBF8 ?<5E4EL B9 BC8A FBHE68 FB9GJ4E8 @B7H?8F
(+((, <F 9E88 FB9GJ4E8 ?<68AF87 HA78E G;8 '. % )% 4A7 JE<GG8A <A -;8 6BAGEB? F8EI<68F EHA HA78E +-" J<G; ;4E7 E84? G<@8 CEBC8EG<8F 5HG 4?FB <A VHF8E FC468W J<G;BHG :H4E4AG88<A: E84? G<@8 CEBC8EG<8F !BJ8I8E (+((, <F 4?FB 5BHA7 GB G;8F8 BC8E4G<A: FLFG8@F "G 7B8F ABG 6BAF<78E G;8 7LA4@<6F B9 4 @4A<CH?4GBE 4A7 G;8E8 4E8 6HEE8AG?L AB 7LA4@<6F 4?:BE<G;@F <@C?8@8AG87
-;8 &4G?45 +B5BG<6F -BB?5BK 2B3 <F 4 9E88?L 4I4<?45?8 GBB?5BK @4<A?L HF87 9BE 87H64G<BA 4A7 G846;<A: CHECBF8F "G HF8F 4 AH@8E<64? G86;A<DH8 GB FB?I8 G;8 <AI8EF8
><A8@4G<6F CEB5?8@ -;8 7E4J546> B9 G;BF8 <G8E4G<I8 4CCEB46;8F <F G;4G G;8L 4E8 F?BJ 9BE E84? G<@8 4CC?<64G<BAF 4A7 G;4G G;8L 4E8 HA45?8 GB 9<A7 4?? FB?HG<BAF BE G;8 6B@CHG4G<BA B9 G;8 7LA4@<64? EB5BG @B78? G;8 GBB?5BK <@C?8@8AGF G;8 E86HEF<I8 '8JGBA H?8E 4?:BE<G;@ 2%0)3 HG G;8 GBB?5BK 64AABG CEBI<78 4AL FL@5B?<6 FB?HG<BAF
BF<@<E 8?? BE<8AG87 F<@H?4G<BA B9 <A7HFGE<4? EB5BGF <F 4 EB5BG 4A7 JBE>68?? F<@H?4G<BA FLFG8@ 78I8?BC87 5L G;8 "AFG<GHG8 B9 +B5BG<6F +8F84E6; 4G G;8 .A<I8EF<GL B9 BEG@HA7 2)03 4A7 6HEE8AG?L 7<FGE<5HG87 5L 8FGB BECBE4G<BA -;<F 6B@@8E6<4? I8EF<BA <F I8EL 8KC8AF<I8 4A7 <F CE<@4E<?L 78F<:A87 9BE <A7HFGE<4? F<@H?4G<BA B9 JBE> 9?BJF J<G;
EB5BG<6 FLFG8@F 4A7 <A6?H78F 4 ?<5E4EL B9 EB5BGF 9EB@ @4AL 7<998E8AG I8A7BEF BF<@<E 7B8F ABG 6B@CHG8 G;8 7LA4@<6 EB5BG @B78? "A 4?? B9 G;8 @8AG<BA87 FG4G8 B9 G;8 4EG 4CCEB46;8F G;8E8 4E8 AB F8?9 6BA9<:HE4G<BA BE BG;8E BE:4A<6 6B@CHG<A: 984GHE8F E84?<M87
3 Organic Robot Control
"A BE78E GB 466B@@B74G8 GB 7<998E8AG EB5BG :8B@8GE<8F <G <F A868FF4EL GB 4HGB@4G8 G;8 5H<?7<A: B9 @BG<BA 6BAGEB? FB9GJ4E8 8?<@<A4G<A: @4AH4? CEB68FF8F B7(E: <:<G4? (A 8@4A7 B@CHG<A: (E:4A<F@ 9BE +84? -<@8 ,LFG8@F :E4AG87 5L G;8 8E@4A +8F84E6;
BHA74G<BA J<G;<A G;8 CE<BE<GL CEB:E4@@8 V(E:4A<6 B@CHG<A:W <F 4 CEB=86G GB 4HGB@4G<64??L 6BA9<:HE8 EB5BG 6BAGEB? FB9GJ4E8 -;8 @4<A CEB=86G :B4? <F GB 9H?9<? G;8 78@4A7F B9 F8?9 6BA9<:HE4G<BA <A G;8 6B@C?<64G87 EB5BG<6F 7B@4<A E8DH<E<A: @<A<@4?
;H@4A <AIB?I8@8AG -;8E89BE8 EB5BG 6BAGEB? FB9GJ4E8 <F 5EB>8A 7BJA <AGB 7<998E8AG 6B@CBA8AGF 4??BJ<A: 6B78 E8HF8 4A7 <AG8:E4G<BA -;8 EB5BG 6BAGEB? FLFG8@ <F G;8 5E4<A B9 G;8 EB5BG L HF<A: F8?9 6BA9<:HE4G<BA @8G;B7F G;8 G<@8 4A7 6BFGF 9BE 78I8?BC<A: A8J EB5BG 6BAGEB? FLFG8@F J<?? F<:A<9<64AG?L 58 E87H687 (HE 4CCEB46; <F GB C8E9BE@ FL@5B?<6 64?6H?4G<BAF GB 4HGB@4G<64??L 78E<I8 @4G;8@4G<64? 8KCE8FF<BAF HF87 9BE ><A8@4G<6 4A7 7LA4@<6 6B@CHG4G<BAF ,<A68 <G <F CBFF<5?8 GB JBE> J<G; BA?L FL@5B?<6 74G4 G;8 8DH4G<BAF 4E8 :8A8E4G87 <A 9H?? :8A8E4?<GL -;8F8 8DH4G<BAF 64A BA G;8 9?L 58 6BAI8EG87 GB 6B78 9BE G;8 HF8 <A E84? G<@8 6BAGEB? -;<F CEB68FF <F <A<G<4G87 5L 4 A8J?L 78I8?BC87 6BA9<:HE4GBE J;<6; EHAF 7<E86G?L BA G;8 EB5BG 6BAGEB? 4A7 BC8AF HC 4 ?4E:8 AH@58E B9 7<998E8AG F8?86G<BA 4A7 6B@5<A4G<BA CBFF<5<?<G<8F 846; B9 J;<6; FC86<9<8F 4 7<998E8AG EB5BG GLC8 "A C4EG<6H?4E <G <F CBFF<5?8 GB 78F6E<58 ;BJ 4 @4A<CH?4GBE <F 6B@CBF87 B9 4 F8E<8F B9 6BA64G8A4G87 =B<AGF 4A7 ?<A>F <A BE78E GB 6E84G8 4 ><A8@4G<6 6;4<A @BA: BG;8E G;<A:F G;8 HF8E 64A FC86<9L
-LC8 B9 =B<AGF =B<AGF 64A 8<G;8E 58 E8IB?HG8 BE CE<F@4G<6 G;8<E AH@58E 4 EB5BG @HFG 6BAG4<A 4G ?84FG 9BHE =B<AGF G;8<E 4EE4A:8@8AG 4A7 6BAFGE4<AGF 6BA68EA<A: G;8<E
@BI8@8AG 8: @4K<@H@ I8?B6<GL 4A7 4668?8E4G<BA
$<A8@4G<6 C4E4@8G8EF ?<>8 ?<A> ?8A:G;F 4A7 ?<A> B99F8GF 4E8 8<G;8E 7<E86G?L CEBI<787 5L G;8 @4AH946GHE8E BE 64A 58 @84FHE87 BA G;8 EB5BG 4A7 47=HFG87 I<4 64?<5E4G<BA LA4@<6F 74G4 9BE 846; ?<A> @4FF BA8 I4?H8 @< ?B64G<BA B9 G;8 68AGE8 B9 @4FF
G;E88 4EG8F<4A 6BBE7<A4G8F E8?4G87 GB G;8 <G;9E4@8 EK< EL< EM< 4A7 <A8EG<4 G8AFBEF F<K I4?H8F "KK "LL "MM "KL "KM "LM -;8 9<EFG G;E88 I4?H8F 4E8 G;8 @4FF @B@8AGF B9
<A8EG<4 4A7 G;8 ?4FG G;E88 I4?H8F 4E8 G;8 @4FF CEB7H6GF B9 <A8EG<4 -B <78AG<9L G;8 7LA4@<6 C4E4@8G8EF 9BE 4 6BA6E8G8 EB5BG G;8 C4E4@8G8EF 4E8 @84FHE87 BE 8FG<@4G87 4A7 4 F8E<8F B9 G8FG @BG<BAF <F ABE@4??L 7BA8
,B@8 B9 G;8 F8?86G87 6B@5<A4G<BAF 4E8 ABG 4??BJ87 BE ABG 78F<E45?8 HEG;8E@BE8 FB@8 F8?86G87 984GHE8F <@CBF8 6BAFGE4<AGF BE E8DH<E8@8AGF BA BG;8E 984GHE8F 8: G;8 ><A8@4G<6 FGEH6GHE8 B9 4 ,+ E8DH<E8F G;4G G;8 G;E88 CE<A6<C4? =B<AGF 4E8 C4E4??8? 4A7 G;4G GJB B9 G;8@ 4E8 EBG4GBEL 4A7 G;8 G;<E7 BA8 <F 4 GE4AF?4G<BA4? =B<AG 455E8I<4G87 4F ++- +-+ BE -++ -;8E89BE8 J8 6B@C?8@8AG G;8 6BA9<:HE4GBE J<G; 4 >ABJ?87:8 54F8 45BHG I4?<7 4A7 <AI4?<7 6B@5<A4G<BAF -;8 6BA9<:HE4GBE 4?FB 6B@8F J<G; 4 ?<5E4EL B9 E8HF45?8 6B@CBA8AGF ;4I<A: G;8 F4@8 FC86<9<87 <AG8E9468F ,B 6B@CBA8AGF G;4G 4E8 6B@@BA GB EB5BG 6BAGEB? FLFG8@F 7BAG ;4I8 GB 58 E8<@C?8@8AG87
-;8 4HGB@4G<6 78E<I4G<BA B9 G;8 ><A8@4G<6 @B78? 9BE 4 :8A8E4? EB5BG <F <??HFGE4G87 <A 2003 (HE 4CCEB46; <F GB 4HGB@4G<64??L 6B@CHG8 G;8 8A4I<G !4EG8A58E: ! C4E4@8G8EF 9EB@ G;8 786?4E4G<I8 FC86<9<64G<BA B9 G;8 EB5BG -;8 ! C4E4@8G8EF 78F6E<58 G;8 :8B@8GE<6 E8?4G<BAF;<C 58GJ88A G;8 I4E<BHF =B<AG ?<A> C4<EF B9 G;8 @4A<CH?4GBE L 78G8E@<A<A: G;8 GE4AF9BE@4G<BA @4GE<68F 9BE 846; =B<AG 4A7 FH5F8DH8AG?L 9BE G;8 J;B?8 EB5BG G;8 FL@5B?<6 8KCE8FF<BAF B9 G;8 9BEJ4E7 ><A8@4G<6F 8DH4G<BAF 4E8 4HGB@4G<64??L :8A8E4G87 -;8 <AI8EF8 ><A8@4G<6F <F B5G4<A87 5L 4A4?LG<6 E84FBA<A: 9EB@ G;8 7<E86G
><A8@4G<6F 8DH4G<BAF <A 64F8 G;4G G;8 4A4?LG<64? @B78? B9 G;8 EB5BG 8K<FGF "A G;8 E8FG B9 G;8 C4C8E J8 6BA68AGE4G8 BA 4?:BE<G;@F 9BE 64?6H?4G<A: 4 6?BF87 9BE@ FB?HG<BA B9 G;8 7LA4@<6 8DH4G<BAF B9 4 :<I8A EB5BG J;<6; 7B ABG E8DH<E8 <G8E4G<BA
3.1 Lagrangian equations
-;8 8DH4G<BAF G;4G 78F6E<58 G;8 @4A<CH?4GBE 4E@ 7LA4@<6F 4E8 7<F6HFF87 <A G;<F FH5F86G<BA -;8E8 8K<FG F8I8E4? G86;A<DH8F 9BE 78E<I<A: G;8 7LA4@<6F 8DH4G<BAF F 9<A4?
E8FH?G 4?? B9 G;8@ CEBI<78 4 F8G B9 8DH<I4?8AG 8DH4G<BAF 0;<?8 '8JGBAXF 8DH4G<BAF GE84G 846; E<:<7 ?<A> F8C4E4G8?L 4A7 4?FB 64?6H?4G8F HAJ4AG87 <AG8E46G<BA 9BE68F %4:E4A:8 GE84GF G;8 FLFG8@ 4F 4 J;B?8 GLC<64??L L<8?7<A: <A F<@C?8E 8DH4G<BAF -;8 '8JGBA H?8E 9BE@H?4G<BA F;BH?7 58 CE898EE87 9BE E84? G<@8 6B@CHG4G<BA 9BE 5BG; F<@H?4G<BA 4A7 6BAGEB? !BJ8I8E <G <F 4 E86HEF<I8 9BE@H?4G<BA 08 4E8 @H6; @BE8 <AG8E8FG87 <A 4 6?BF87 9BE@ FB?HG<BA <A BE78E GB :8G 4 58GG8E <AF<:;G <AGB G;8 FGEH6GHE8 B9 G;8 8DH4G<BAF 9BE 4 :<I8A EB5BG (HE 4CCEB46; <F GB 9B??BJ G;8 %4:E4A:<4A 9BE@H?4G<BA J;<6; <F 54F87 BA G;8 7<998E8AG<4G<BA B9 8A8E:L G8E@F J<G; E8FC86G GB FLFG8@F I4E<45?8F 4A7 G<@8 -;8 E8FH?G<A:
8DH4G<BAF 64A 58 64?6H?4G87 <A 6?BF87 9BE@ 4A7 4??BJ 4A 4CCEBCE<4G8 78F<:A B9
@86;4A<64? FGEH6GHE8F -;8 %4:E4A:<4A % 8DH4G<BA <F 789<A87 4F G;8 7<998E8A68 B9 G;8
><A8G<6 $ 4A7 CBG8AG<4? ) 8A8E:<8F 08 4FFH@8 G;4G G;8 CBG8AG<4? 8A8E:L <F :8A8E4G87 5L :E4I<GL 89986GF
i i i
i i
i q
P q K q
K dt
d q L q
L dt
d
i n
-;8F8 8DH4G<BAF E8?4G8 G;8 =B<AG GBEDH8 <4G G;8 46GH4GBEF 4F 4 9HA6G<BA B9 =B<AG CBF<G<BAF I8?B6<G<8F 4A7 4668?8E4G<BAF 08 4?FB HF8 G;<F FL@5B? 9BE G;8 ?<A84E =B<AG 9BE68F B9 CE<F@4G<6 =B<AGF -;8 @4FF <F 6BA68AGE4G87 <A 4 CB<AG BE 4 6BA6E8G8 EB5BG G;8 @4FF 4A7 G;8 @4FF 7<FGE<5HG<BA B9 846; ?<A> 4E8 :<I8A -;8 <A8EG<4 G8AFBE 78F6E<58F ;BJ G;8 @4FF B9 G;8 ?<A> <F 7<FGE<5HG87 J<G; E8FC86G GB 4 FC86<9<87 9E4@8 ;8E8 "A :8A8E4? G;8 <A8EG<4 G8AFBE <F 4 FL@@8GE<6 Z @4GE<K B9 G;8 9BE@
zz yz xz
yz yy
xy
xz xy
xx A
I I I
I I
I
I I I
I
"A CE46G<68 G;8 <A8EG<4 G8AFBE <F HFH4??L 6B@CHG87 45BHG G;8 68AGE8 B9 G;8 @4FF 0<G; G;<F 6;B<68 J8 789<A8 4 :8A8E4?<M87 @4FF @4GE<K 9BE G;8 <G; ?<A> J<G; @<4F G;8 @4FF B9 ?<A> <
4A7 " 4F G;8 Z <78AG<GL @4GE<K -;<F @4GE<K <F G<@8 <AI4E<4AG
A i i
i I
I
M m
-;8 ><A8G<6 8A8E:L 6BAF<FGF B9 G;8 ><A8G<6 8A8E:L B9 GE4AF?4G<BA 4A7 G;8 ><A8G<6 8A8E:L B9 EBG4G<BA 08 B5G4<A G;8 ><A8G<6 8A8E:L B9 4 EB5BG<6 @4A<CH?4GBE 5L 9B??BJ<A: 8DH4G<BA
r Q T I
J r M
T I J Q
K
Q M n
i
i i i i T i i
T i
-;8 ><A8G<6 8A8E:L B9 4 FLFG8@ <F 4 DH47E4G<6 G8E@ 4A7 G;8E89BE8 CBF<G<I8 HA?8FF G;8 FLFG8@ <F 4G E8FG #<<F G;8 <G;C4EG<4? #46B5<4A @4GE<K 7<@8AF<BA <F ZA @4CC<A: G;8 =B<AG I4E<45?8F DTD< GB G;8 <A8EG<4? I8?B6<GL B9 G;8 68AGE8 B9 @4FF B9 G;8 <G; ?<A> -;8 GE4AF9BE@4G<BA @4GE<K -<78F6E<58F G;8 <G; 9E4@8 E8?4G<I8 GB G;8 EB5BGXF 54F8 9E4@8 -;8 I86GBE E<EK< EL< EM< :<I8F G;8 CBF<G<BA B9 G;8 68AGE8 B9 G;8 @4FF B9 G;8 <G; ?<A> J<G;
E8FC86G GB G;8 <G; 9E4@8 &* <F 64??87 G;8 AZA @4A<CH?4GBE @4FF @4GE<K B9 G;8 8AG<E8 F8E<4? 6;4<A "G <F FL@@8GE<6 4A7 CBF<G<I8 789<A<G8 4A7 <F G;8E89BE8 4?J4LF <AI8EG<5?8 08 B5G4<A G;8 6B@C?8G8 CBG8AG<4? 8A8E:L 4F G;8 FH@ B9 G;8 CBG8AG<4? 8A8E:L B9 846; ?<A>
J;<6; 4E8 4 9HA6G<BA B9 G;8 @4FF 4A7 G;8 :8B@8GEL B9 G;8 @4A<CH?4GBE
i T i n
i
m
ig
xg
yg
zT r
P
-;8 :E4I<GL I86GBE :K :L :M <F 8KCE8FF87 <A G;8 EB5BGXF 54F8 9E4@8 BE @BFG EB5BGF J<G; G;8 54F8 @BHAG87 I8EG<64??L BA G;8 9?BBE G;8 :E4I<GL I86GBE <F : J<G;
: @FE8CE8F8AG<A: G;8 :E4I<G4G<BA4? 4668?8E4G<BA )HGG<A: G;8 8DH4G<BAF GB:8G;8E J8 B5G4<A G;8 6B@C?8G8 7LA4@<6 8DH4G<BAF B9 4 @4A<CH?4GBE
Q G
n Q
Q Q C
n T T
t Q M n
i i
i t
n Q
q
P q P q Q
Q Q M
q Q Q Q M
Q q q
Q Q M
Q M
* * <F 4 AZA @4GE<K B9 68AGE<9H:4? 4A7 BE<B?<F G8E@F 4A7 * <F 4 AZ I86GBE B9 :E4I<GL G8E@F &D 4A7 D 78C8A7 BA?L BA =B<AG CBF<G<BAF J;<?8 G;8 BE<B?<F @4GE<K 78C8A7F BA 5BG; =B<AG CBF<G<BAF 4A7 =B<AG I8?B6<G<8F
3.2 Programming Interface
?? 7LA4@<6F 6B@CBA8AGF <@C?8@8AG G;8 F4@8 <AG8E9468 ,B <G <F 84FL GB <AG8:E4G8 A8J 7LA4@<6F 6B@CBA8AGF BE GB FH5FG<GHG8 4 6B@CBA8AG J<G; 4ABG;8E BA8 -;8 9B??BJ<A:
6B78 9E4:@8AGF 78F6E<58 G;8 <AG8E9468F B9 G;8 7LA4@<6F 6B@CBA8AGF G;4G 4E8 4HGB@4G<64??L CEB7H687 9EB@ G;8 8DH4G<BAF B9 G;8 CE8I<BHF F86G<BA -;8 HF4:8 <F I8EL F<@C?8 5864HF8 G;8 7<E86G 4A7 <AI8EF8 7LA4@<6F <F C8E9BE@87 5L 64??<A: G;8F8 9HA6G<BAF -;8 <A<G<4?<M4G<BA B9 G;8 7LA4@<6F C4E4@8G8EF B9 4 EB5BG 4E@ 8: @4FF8F B9 G;8 ?<A>F <F 7BA8 <A 4ABG;8E @8G;B7
-;8 7<E86G 7LA4@<6F 6B@CHG8F G;8 @BI8@8AG B9 G;8 @4A<CH?4GBE 7H8 GB 8KG8EA4? 4A7
<AG8EA4? 9BE68FGBEDH8F -;8 <ACHGF GB G;8 7<E86G 7LA4@<6F 6B@CHG4G<BA 4E8 G;8 6HEE8AG
=B<AG CBF<G<BAF 4A7 I8?B6<G<8F 4A7 G;8 =B<AG 9BE68GBEDH8 I4?H8F -;8 BHGCHGF 4E8 G;8 E8FH?G<A: =B<AG 4668?8E4G<BAF -;8 @8G;B7 E8GHEAF GEH8 <9 G;8 4668?8E4G<BAF 6BH?7 58 64?6H?4G87 9BE 846; =B<AG B9 G;8 @4A<CH?4GBE 4A7 BG;8EJ<F8 94?F8
virtual bool directDynamics
(const Vector &positions, const Vector &velocities, Vector &accelarations, const Vector &torques) const=0 ,<@H?4G<BA E8DH<E8F FB?I<A: G;8 7LA4@<6 8DH4G<BAF 9BE 4668?8E4G<BA -;<F @8G;B7 <F HF89H? 9BE F<@H?4G<BA G;8 @BG<BA B9 4 EB5BG 4E@ -;8 <AI8EF8 7LA4@<6F 6B@CHG8F G;8 9BE68F 4A7 GBEDH8F J;<6; 4E8 A868FF4EL GB C8E9BE@ 4 68EG4<A @BG<BA -;8 <ACHGF GB G;8
<AI8EF8 7LA4@<6F 6B@CHG4G<BA 4E8 G;8 =B<AG CBF<G<BAF I8?B6<G<8F 4A7 4668?8E4G<BAF BI8E 4 FC86<9<87 GE4=86GBEL -;8 BHGCHGF 4E8 G;8 6BEE8FCBA7<A: =B<AG 9BE68GBEDH8 I4?H8F G;4G
;4I8 GB 58 <@CBF87 GB G;8 EB5BG GB 9B??BJ G;8 GE4=86GBEL -;<F @8G;B7 <F HF89H? 9BE 78G8E@<A<A: G;8 F8G CB<AGF B9 G;8 46GH4GBEF G;4G 4E8 E8DH<E87 9BE 4 78F<E87 @BG<BA 4A7 <F 4 FG4EG<A: CB<AG 9BE @B78? 54F87 6BAGEB?
virtual bool inverseDynamics
(const Vector &positions, const Vector &velocities, const Vector &accelarations, Vector &torques) const=0
3.3 Robotics Example
-;8 4HGB@4G<6 78E<I4G<BA B9 G;8 7LA4@<6 8DH4G<BAF ;4F 588A FH668FF9H??L <@C?8@8AG87 F 4A <??HFGE4G<BA J8 8K8@C?4E<?L ABJ 6BAF<78E 4 ,64E4 EB5BG 4E@ -;8 EB5BG ;4F 9BHE 78:E88F B9 9E887B@ <A G;8 4EG8F<4A FC468 -;8 ?<A> C4E4@8G8EF E8DH<E87 GB 64?6H?4G8 G;8 7LA4@<6 8DH4G<BAF 4E8 @4FF @< ?B64G<BA B9 G;8 68AGE8 B9 :E4I<GL 4A7 G;8 G8E@F B9 G;8
<A8EG<4 G8AFBE 4F J8?? 4F G;8 8A4I<G !4EG8A58E: C4E4@8G8EF 78F6E<5<A: G;8 EB5BG :8B@8GEL -;8 ?8A:G; B9 4E@F 4A7 4E8 455E8I<4G87 4F 44A7 4 G;8 I4E<45?8F B9 G;8 9<EFG 4A7 F86BA7 =B<AG 4F 4A7 4A7 G;8 68AGE8 B9 @4FF B9 G;8 9<EFG 4A7 F86BA7 ?<A> 4F EK4A7 EK -;8 CEB687HE8 HF87 GB 78E<I8 G;8 7LA4@<6 @B78? 8AG4<?F G;8 FG8CF FL@5B?<6 :8A8E4G<BA B9 G;8 ><A8G<6 8A8E:L 8DH4G<BAF FL@5B?<6 :8A8E4G<BA B9 G;8 CBG8AG<4? 8A8E:L 8DH4G<BAF 4A7 6B@CHG4G<BA 4A7 7<998E8AG<4G<BA B9 G;8 %4:E4A:8 9HA6G<BAF BE G;<F FC86<9<6 EB5BG G;8 CBG8AG<4? 8A8E:L <F 4 6BAFG4AG F<A68 <G 7B8F ABG 78C8A7 BA G;8 =B<AG I4E<45?8F 08 JE<G8 G;8 7LA4@<6 8DH4G<BAF @BE8 6B@C46G?L <A <GF FG4A74E7 9BE@ 864HF8 B9 G;8 ?<@<G4G<BA B9 FC468 G;8 78G4<?F B9 G;8 78E<I4G<BA 4E8 ABG <A6?H787 ;8E8 -;8 6B@C?8G8 EB5BG<6F @4A<CH?4GBE 7LA4@<6 @B78? <F :<I8A 5L
K
K
KK
K
K K
K K K
F<A 4
@
@ 4 E
@
F<A 4
@
@ 4 E
@
"
@
@ 4 E
@
6BF 4 4 4
@
@ 6BF E 4 E
4 6BF
4
@
@
@ 6BF E 4 4 E E
c c
m m
m m
m
m m m
I m
m I m
m
I a
a m m m
g m m c
c Q m m
m
m m m
m
m m
m
i xxi
i xxi i xxi
Q Q G
Q Q Q C
M
4 Conclusion
"G <F ABG CE46G<64? BE 47I<F45?8 GB 78E<I8 G;8 7LA4@<6 @B78? B9 846; EB5BG @4A<CH?4GBE
@4AH4??L 4A7 64F8 5L 64F8 -;8E89BE8 <A G;<F C4C8E 4 @8G;B7B?B:L 9BE 4HGB@4G<64??L 78E<I<A: G;8 %4:E4A:<4A 8DH4G<BAF ;4F 588A <??HFGE4G87 "A C4EG<6H?4E J8 ;<:;?<:;G G;8 F8?9 6BA9<:HE4G<BA 4A7 FL@5B?<6 CEB68FF<A: 984GHE8F B9 BHE FLFG8@ 4F J8?? 4F G;8 4HGB@4G87 :8A8E4G<BA B9 G;8 7LA4@<6F 8DH4G<BAF :<I8A 4 78F6E<CG<BA B9 G;8 6BAGEB??87 EB5BG H8 GB G;8 4A4?LG<64? A4GHE8 J8 :8G 4 @BE8 :8A8E4? E8FH?G 4A7 64A 4HGB@4G8 G;<F CEB68FF J;<?8 AH@8E<64? @8G;B7F 4E8 B9G8A FC86<9<6 GB 4 68EG4<A CEB5?8@ &BE8BI8E J8 4?FB 4HGB@4G<64??L 7B6H@8AG ;BJ G;8 FB?HG<BAF J8E8 9BHA7
-;8 @BFG 6B@@BA?L HF87 8DH4G<BAF GB @B78? G;8 7LA4@<6F B9 4 EB5BG 4E8 G;8 %4:E4A:8 4A7 '8JGBA H?8E 9BE@H?4G<BAF !8E8 J8 HF87 G;8 %4:E4A:<4A 8DH4G<BAF 5864HF8 G;8L 4E8 FGE4<:;G9BEJ4E7 GB 78E<I8 ?BF87 9BE@ FB?HG<BAF 64A 4?FB 58 58GG8E C4E4??8?<M87 G;4A E86HEF<I8 BA8F 4A7 4E8 8FC86<4??L FH<G87 9BE @H?G< 6BE8 G86;AB?B:L (HE @4=BE :B4?
<A6?H78F G;8 FC86<9<64G<BA B9 4 @B7H?4E FB9GJ4E8 4E6;<G86GHE8 9BE @BG<BA 6BAGEB? J;<6;
64A 58 84F<?L 6BA9<:HE87 0BE> <F BA:B<A: GB <@CEBI8 G;8 FLFG8@ 4A7 GB <AG8:E4G8 9HEG;8E 9HA6G<BA4?<G<8F 8: J8 J<?? 4?FB <@C?8@8AG :8A8E4?<M87 4K<F 6BAGEB??8EF G;4G >88C G;8 46GH4? 46GH4GBEF I4?H8F 4F 6?BF8 4F CBFF<5?8 GB G;8 6BEE8FCBA7<A: F8G CB<AGF 5L @84AF B9
?<A84E 4A7 ABA?<A84E 6BAGEB? 4?:BE<G;@F
Acknowledgements.-;8 JBE> BA J;<6; G;<F 4EG<6?8 <F 54F87 <F :E4AG87 5L G;8 8E@4A +8F84E6; BHA74G<BA J<G;<A G;8 F6BC8 B9 G;8 CE<BE<GL CEB:E4@@8 F88
;GGCJJJBE:4A<6 6B@CHG<A:78FCC
References
2E3 EHLA<A6>K ! E88 ,B9GJ4E8 E4@8JBE> 9BE 7I4A687 +B5BG BAGEB? )EB6887<A:F B9 G;8 G; , 0BE>F;BC BA 7I4A687 ,C468 -86;AB?B:<8F 9BE +B5BG<6F 4A7 HGB@4G<BA ,-+ 'BBE7J<=> -;8 '8G;8E?4A7F 'BI8@58E 2B3 BE>8 )" 6B@CHG8E GBB? 9BE F<@H?4G<BA 4A7 4A4?LF<F G;8 +B5BG<6F -BB?5BK 9BE
&-% )EB6887<A:F B9 G;8 '4G<BA4? BA98E8A68 B9 G;8 HFGE4?<4A +B5BG FFB6<4G<BA &8?5BHEA8 HFGE4?<4 CC #H?L
2)03 E8HA7 )8AF>L 0<F6;A8JF>< + BF<@<E (C8A ,<@H?4G<BA ,LFG8@ 9BE )EB7H6G<BA HGB@4G<BA )EB68FF8F <A )EB6887<A:F B9 G;8 G; "AG8EA4G<BA4? 0BE>F;BC BA +B5BG<6F <A ?C8 7E<4 4AH58 +8:<BA +X CC /<8AA4 HFGE<4 &4L 2 3 B?78A58E: 8A;45<5 8AGBA + B@C?8G8 8A8E4?<M87 ,B?HG<BA GB G;8
"AI8EF8 $<A8@4G<6F B9 +B5BGF " #BHEA4? B9 +B5BG<6F HGB@4G<BA CC
&4E6;
2%0)3%H; #1, 04?>8E &0 )4H? +) (A?<A8 6B@CHG4G<BA4? F6;8@8 9BE @86;4A<64?
@4A<CH?4GBEF ,& #BHEA4? B9 LA4@<6 ,LFG8@F &84FHE8@8AG 4A7 BAGEB? U 2,/3 ,CBA: & /<7L4F4:4E & +B5BG LA4@<6F 4A7 BAGEB? '8J 1BE> #B;A 0<?8L
,BAF
2003 08AM & 0QEA ! +H?8 54F87 8A8E4G<BA B9 &BG<BA BAGEB? ,B9GJ4E8 9BE 8A8E4?
,8E<4? %<A> +B5BG &4A<CH?4GBEF )EB6887<A:F B9 G;8 G; "AG8EA4G<BA4? 0BE>F;BC BA B@CHG8E ,6<8A68 4A7 "A9BE@4G<BA -86;AB?B:<8F ,"-X 8E@4AL