Lecture Notes in Control and Information Sciences Editors: M. T h o m a ° M. M o r a r i
266
Springer London Berlin Heidelberg New York Barcelona Hong Kong Milan Paris Singapore Tokyo
StefanoStramigioli Modeling and IPC Control of Interactive Mechanical Systems- A Coordinate-
Free Approach With 98 Figures
~ Springer
Series Advisory Board A. Bensoussan • M.J. Grimble • P. Kokotovic • A.B. Kurzhanski * H. Kwakernaak • J.L. Massey Author Stefano Stramigioli, MSc,PhD Mekelweg 4, 2628CD Delft, The Netherlands
ISBN 1-85233-395-2 Springer-Veflag L o n d o n Berlin Heidelberg British Library Cataloguing in Publication Data Stramigioll, Stefano Modeling and IPC control of interactive mechanical systems a co-ordinate free approach. - (Lecture notes in control And information sciences ; 266) 1.Production control 658.5 ISBN 1852333952 Library of Congress Cataloging-in-Publication Data A catalog record for this book is available from the Library of Congress Apart from any fair dealing for the purposes of research or private study, or criticism or review, as permitted under the Copyright, Designs and Patents Act 1988, this publication may only be reproduced, stored or transmitted, in any form or by any means, with the prior permission in writing of the publishers, or in the case of reprographic reproduction in accordance with the terms of licences issued by the Copyright Licensing Agency. Enquiries concerning reproduction outside those terms should be sent to the publishers. © Springer-Verlag London Limited 2001 Printed in Great Britain The use of registered names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant laws and regulations and therefore free for general use. The publisher makes no representation, express or implied, with regard to the accuracy of the information contained in this book and cannot accept anylegal responsibility or liability for any errors or omissions that may be made. Typesetting: Electronic text files prepared by author Printed and bound at the Athenaeum Press Ltd., Gateshead, Tyne & Wear 69/3830-543210 Printed on acid-free paper SPIN 10776904
Alle mie 'prinsesjes' : Emily 8J Fiona
Preface
This work is based on my Ph.D. doctoral thesis, which I defended in Delft, T h e Netherlands in 1998 [1]. T h e thesis was a b o u t the modeling and control of robots interacting with the environment. The dissertation presented a new paradigm called Intrinsically Passive Control (IPC) based on the ideas initially introduced by Neville Hogan in impedance control [2, 3, 4] with w h o m I had the pleasure and honor to work with during a visit of a few months at MIT. This p a r a d i g m is about approaching robot control as a power consistent port interconnection between the robot to be controlled and the controller, and splits the complete controller in two parts called the I P C and the Supervisor [5]. This structure is a must for robots interacting with the environment for stability reasons. For such systems, it does not make much sense to only control their position or their force as it is explained in Sect. 4.1 and mathematically treated in [6]. After having sent m y dissertation to a colleague and friend, Prof. Bruno Siciliano, during the International Conference of Robotics and A u t o m a t i o n 1998 in Detroit, to my great pleasure, he expressed his positive opinion a b o u t the work and suggested that I publish it as a book. I a m very thankful to him for his advice and support during this process. It took me a while to find the time to work on it and get to its current state. Since my dissertation, some new results have been included and some old ones have been left out. New results are included in C h a p t e r 1, which are the outcome of an extremely pleasant and fruitful collaboration with Bernhard Maschke and Catherine Bidard [7, 8]. Furthermore new results are also presented in C h a p t e r 3 where Dirac structures have been used to model rigid mechanisms. In C h a p t e r 5 a new compensation has been introduced for the control of multi-limbed mechanisms, which has been also tested with success and was carried out during the visit of Cristian Secchi from the University of Bologna to m y lab. Eventually, C h a p t e r 6 presents results concerning the tele-manipulation of Hamiltonian systems. These results have been presented in [9] and are the outcome of a collaboration with Arjan van der Schaft, Bernhard Maschke, Stefano Andreotti and Claudio Melchiorri. In this chapter a new system theoretic condition is presented to analyse the matching of a generalized Hamiltonian system to a communication line.
viii
Preface
Writing a book is a big task and even if I a m the only author, a lot of people have contributed to the results presented in this work and a m o n g others there are a few people t h a t I would like to t h a n k for fruitful discussions. Arjan van der Schaft and Bernhard Maschke besides being excellent scientists, are two extremely pleasant people to work with, but not only. T h e y always make time for discussions and have stimulated m y work continuously. I also have to t h a n k H e r m a n Bruyninckx with w h o m I give a robotics course at the Dutch Institute of Systems and Control, for the extremely pleasant and useful discussions which took place mostly by e-mail. Our collaboration has started recently and it is, to m y great pleasure, increasing constantly. O t h e r colleges that have inspired and s u p p o r t e d m y work, and deserve a mentiom, are Romeo Ortega, Neville Hogan and Ernie Fasse. Furthermore I would like to t h a n k J o h a n H a m b e r g of the Swedish Defence Research Agency for pointing out a problem which has been solved in C h a p t e r 6. Writing a book is nevertheless not only a b o u t scientific discussions but it inevitably has a price to pay in time t h a t I had to withdraw from m y family. M y wife Fiona gave me the time and the love which are also essential to complete such a big task and I really t h a n k her a lot for that. I will be now able to spend some more time with her and my beautiful daughter Emily to w h o m this b o o k is dedicated. I hope that this work will inspire or help the research of other people as a lot of other books have done for me during the past years. Delft, December 2000
Stefano Stramigioli
Co
1.
e
Rigid B o d i e s a n d M o t i o n s 1.1 1.2 1.3
1.4
1.5
1.6
2.
s
............................... P r o j e c t i v e g e o m e t r y a n d E u c l i d e a n spaces . . . . . . . . . . . . . . . . . Rigid bodies a n d O b s e r v e r s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.1 N u m e r i c a l r e p r e s e n t a t i o n of c o n f i g u r a t i o n s . . . . . . . . . . . Twists ................................................ 1.3.1 T r a n s p o r t s to t h e i d e n t i t y of t h e d o m a i n Lie g r o u p . . . 1.3.2 T r a n s p o r t s to t h e i d e n t i t y of t h e r a n g e Lie g r o u p . . . . . 1.3.3 R e l a t i o n s b e t w e e n twists . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.4 N u m e r i c a l r e p r e s e n t a t i o n of twists . . . . . . . . . . . . . . . . . . 1.3.5 T h e link w i t h s t a n d a r d Lie g r o u p s . . . . . . . . . . . . . . . . . Wrenches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.1 Power a n d Power c o n j u g a t e v a r i a b l e s . . . . . . . . . . . . . . . 1.4.2 N u m e r i c a l r e p r e s e n t a t i o n of W r e n c h e s . . . . . . . . . . . . . . . T h e r e l a t i o n b e t w e e n Lie groups a n d Screw t h e o r y . . . . . . . . . . 1.5.1 B i - i n v a r i a n t forms o n se(3) a n d r e c i p r o c i t y of twists .. 1.5.2 I d e n t i f i c a t i o n of twists a n d w r e n c h e s . . . . . . . . . . . . . . . . 1.5.3 D e c o m p o s i t i o n of se(3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5.4 D e c o m p o s i t i o n of s e * (3) . . . . . . . . . . . . . . . . . . . . . . . . . 1.5.5 T h e space of screw vectors . . . . . . . . . . . . . . . . . . . . . . . . . 1.5.6 O p e r a t i o n s o n screw vectors . . . . . . . . . . . . . . . . . . . . . . . Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Kinematics of Rigid Mechanisms ......................... 2.1 K i n e m a t i c pairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 K i n e m a t i c pairs a c t u a t i o n . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.2 P o s i t i o n - i n d e p e n d e n t K i n e m a t i c pairs: lower p a i r s . . . . . 2.2 M e c h a n i s m s T o p o l o g y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 K i n e m a t i c pairs a n d b o n d g r a p h s . . . . . . . . . . . . . . . . . . . 2.2.2 Serial linkages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.3 F o r k i n g linkages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.4 Closed k i n e m a t i c chains . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 C o n c l u s i o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 3 8 14 15 16 18 20 22 28 29 29 30 30 31 31 32 36 37 38 39 41 41 44 46 50 51 54 59 64 66
x
3.
Contents
Dynamics of Rigid Mechanisms .......................... 3.1 S t u d y of D y n a m i c a l s y s t e m s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.1 T h e b e h a v i o r a l a p p r o a c h . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.2 A step further: physics a n d b o n d g r a p h s . . . . . . . . . . . . . 3.2 P h y s i c a l I n t e r a c t i o n a n d I n t e r c o n n e c t i o n . . . . . . . . . . . . . . . . . . 3.2.1 Power P o r t s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.2 Vector spaces a n d i n t e r c o n n e c t i o n s . . . . . . . . . . . . . . . . . 3.2.3 C a u s a l i t y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.4 I n t e r c o n n e c t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 L a g r a n g i a n F o r m u l a t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1 T h e s i m p l e s t case: no p o t e n t i a l e n e r g y a n d no p o r t s . . 3.3.2 A d d i n g energetic p o r t s . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.3 A d d i n g p o t e n t i a l e n e r g y . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 H a m i l t o n i a n F o r m u l a t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.1 P o r t C o n t r o l l e d H a m i l t o n i a n S y s t e m s u s i n g P o i s s o n structures ....................................... 3.4.2 P o r t - c o n t r o l l e d H a m i l t o n i a n S y s t e m s u s i n g Dirac Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5 Nodic e l e m e n t s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.1 I n e r t i a l references . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6 Springs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6.1 G e o m e t r i c a l Springs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6.2 W i n d i n g Springs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7 I n e r t i a s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7.1 K i n e t i c co-energy a n d e n e r g y . . . . . . . . . . . . . . . . . . . . . . 3.7.2 T h e second law of d y n a m i c s . . . . . . . . . . . . . . . . . . . . . . . 3.7.3 A H a m i l t o n i a n f o r m u l a t i o n of a rigid b o d y m o t i o n : t h e Lie-Poisson bracket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.8 D i s s i p a t i o n e l e m e n t s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.8.1 Irreversibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.8.2 A l g e b r a r e p r e s e n t a t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.9 A c t u a t o r s a n d I n t e r a c t i o n p o r t s . . . . . . . . . . . . . . . . . . . . . . . . . . 3.10 E l e m e n t s I n t e r c o n n e c t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.10.1 K i r c h h o f f ' s laws a n d power c o n t i n u o u s i n t e r c o n n e c t i o n . 3.11 H a m i l t o n i a n i n t e r c o n n e c t i o n i n t h e P o i s s o n f r a m e w o r k . . . . . . 3.11.1 I n e r t i a s e q u a t i o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.11.2 Springs e q u a t i o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.11.3 Dissipative e l e m e n t s e q u a t i o n s . . . . . . . . . . . . . . . . . . . . . 3.11.4 T h e i n t e r c o n n e c t e d s y s t e m e q u a t i o n s . . . . . . . . . . . . . . . 3.12 H a m i l t o n i a n i n t e r c o n n e c t i o n in t h e D i r a c f r a m e w o r k . . . . . . . . 3.13 Direct L a g r a n g i a n e q u a t i o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.13.1 T o t a l k i n e t i c co-energy . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.13.2 T h e p o t e n t i a l e n e r g y a n d t h e L a g r a n g i a n . . . . . . . . . . . . 3.13.3 T h e C o n s t r a i n t s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
69 69 69 71 72 72 73 73 74 76 76 78 80 81 81 84 86 87 88 89 94 95 95 98 99 102 102 103 103 104 106 110 110 111 111 112 114 118 119 120 121
Contents
3.13.4 D a m p i n g e l e m e n t s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.13.5 T h e w o r k - s p a c e a n d t h e i n t e r a c t i o n w i t h t h e e n v i r o n ment ............................................ 3.13.6 E l i m i n a t i o n of t h e c o n s t r a i n t s . . . . . . . . . . . . . . . . . . . . . . 3.14 C o n c l u s i o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.
Intrinsically Passive Control 4.1 4.2
4.3 4.4
4.5
4.6
4.7
.
............................. F o r ce versus I n t e r a c t i v e c o n t r o l . . . . . . . . . . . . . . . . . . . . . . . . . . Physical Passivity ...................................... 4.2.1 C o l l o c a t e d c o n t r o l . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.2 R o b u s t n e s s a n d P e r f o r m a n c e . . . . . . . . . . . . . . . . . . . . . . . 4.2.3 S u p e r v i s i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I n t e r c o n n e c t i o n of p o r t - c o n t r o l l e d H a m i l t o n i a n s y s t e m s . . . . . . I n t r i n s i c a l l y P a s s iv e F e e d b a c k . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.1 E n e r g y S h a p i n g . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.2 D a m p i n g I n j e c t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.3 T h e r e s u l t i n g c o n t r o l l e r . . . . . . . . . . . . . . . . . . . . . . . . . . . A simple example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5.1 A c t u a t o r ' s S a t u r a t i o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5.2 T h e m u l t i d i m e n s i o n a l case . . . . . . . . . . . . . . . . . . . . . . . . . 4.5.3 T h e B o s c h T u r b o S C A R A . . . . . . . . . . . . . . . . . . . . . . . . . C o n s i d e r a t i o n s on P o w e r - C o n t i n u o u s C o m p e n s a t i o n s . . . . . . . . 4.6.1 T r a n s f o r m e r - l i k e c o m p e n s a t i o n s . . . . . . . . . . . . . . . . . . . . 4.6.2 A n t i s y m m e t r i c c o m p e n s a t i o n s . . . . . . . . . . . . . . . . . . . . . . Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A Novel Impedance 5.1 5.2
5.3 5.4
5.5 5.6 5.7
Grasping Strategy ................... C o n t r o l l a b l e Springs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Physical Controller Structure ............................ 5.2.1 T h e V i r t u a l O b j e c t D y n a m i c s . . . . . . . . . . . . . . . . . . . . . . 5.2.2 T h e S p r i n g s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2.3 I n t e r c o n n e c t i o n o b j e c t - s p r i n g s . . . . . . . . . . . . . . . . . . . . . 5.2.4 C r e a t i n g D a m p i n g . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The Controlled Hand ................................... I m p l e m e n t a t i o n of t h e C o n t r o l S c h e m e . . . . . . . . . . . . . . . . . . . . 5.4.1 S u i t a b l e S p r in g s e n e r g y f u n c t i o n s . . . . . . . . . . . . . . . . . . . 5.4.2 S t o r i n g P o s i t i o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4.3 T h e W r e n c h e s of t h e s y s t e m . . . . . . . . . . . . . . . . . . . . . . . 5.4.4 S i m u l a t i o n of t h e V i r t u a l O b j e c t d y n a m i c s . . . . . . . . . . 5.4.5 V a r y i n g t h e l e n g t h o f s p r in g s . . . . . . . . . . . . . . . . . . . . . . Taking the Robot Kinematics into account . . . . . . . . . . . . . . . . 5.5.1 I n t e r n a l P a s s iv e C o m p e n s a t i o n . . . . . . . . . . . . . . . . . . . . . Grasping strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
xi
122 122 123 123 125 126 128 129 129 129 130 134 135 136 137 137 140 140 141 142 143 143 145 147 148 149 151 151 154 154 155 158 159 168 169 171 172 173 174 176 177
xii
6.
Co~e~s
IPC in Telemanipulation 6.1
6.2 6.3 6.4 6.5 6.6 6.7
6.8 A.
................................. Geometric scattering ................................... 6.1.1 D i m e n s i o n of t h e s p a c e of s c a t t e r i n g d e c o m p o s i t i o n s . . 6.1.2 P l u s - p r o d u c t i n v a r i a n c e . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1.3 S c a t t e r i n g d e c o m p o s i t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . C a u s a l i t y a n d sign issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Line I m p e d a n c e a d a p t a t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Impedance Matching .................................... 6.4.1 A n i n t e r c o n n e c t i o n a p p r o a c h . . . . . . . . . . . . . . . . . . . . . . Spatial telemanipulation ................................. 6.5.1 A t h r e e d i m e n s i o n a l s i m u l a t i o n . . . . . . . . . . . . . . . . . . . . . D a m p i n g i n j e c t i o n in t e l e m a n i p u l a t i o n . . . . . . . . . . . . . . . . . . . . Experiments ........................................... 6.7.1 L a b o r a t o r y S e t - U p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.7.2 C a s e s tu d i e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mathematical Background
............................... Basic c o n c e p t s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Graph theory .......................................... Concepts from topology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Groups ................................................ V e c t o r spaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.5.1 Te n s o r s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.6 Lie a l g e b r a s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A . 7 Differential g e o m e t r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.7.1 M a n i f o l d s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.7.2 T a n g e n t spaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.7.3 D i s t r i b u t i o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.7.4 M a p p i n g s b e t w e e n m a n i f o l d s . . . . . . . . . . . . . . . . . . . . . . . A.7.5 O r i e n t a t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.7.6 R i e m a n n i a n m a n i f o l d s . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.7.7 C o n n e c t i o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.7.8 E u c l i d e a n m a n i f o l d s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.8 Lie g r o u p s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.8.1 Left a n d r i g h t t r a n s l a t i o n s . . . . . . . . . . . . . . . . . . . . . . . . . A.8.2 R e l a t i o n s Lie g r o u p a n d a l g e b r a . . . . . . . . . . . . . . . . . . . . A.8.3 T h e K il li n g F o r m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.8.4 M a t r i x Lie g r o u p s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
203 203 205 207 207 209 211 213 214 214 216 219 221 221 222 222 227 228 228 229 230 231
B a s i c s o f B o n d Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.1 P h y s i c a l d o m a i n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.2 P o w e r c o n j u g a t e v a r i a b l e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.3 T h e p h y s i c a l m o d e l s t r u c t u r e a n d B o n d G r a p h s . . . . . . . . . . . . B.4 E n e r g y S t o r a g e a n d P h y s i c a l S t a t e s . . . . . . . . . . . . . . . . . . . . . .
237 238 238 239 241
A.1 A.2 A.3 A. 4 A.5
B.
179 179 183 183 183 184 185 186 189 190 191 192 194 194 195 199
Contents
B.5
B.6
B.7 B.8
B.9 B.10 B.11
B.4.1 B o n d g r a p h s r e p r e s e n t a t i o n s . . . . . . . . . . . . . . . . . . . . . . . B.4.2 M e c h a n i c a l d o m a i n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.4.3 Electrical d o m a i n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.4.4 D u a l i t y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.4.5 E x t r a s u p p o r t i n g s t a t e s . . . . . . . . . . . . . . . . . . . . . . . . . . . Free E n e r g y D i s s i p a t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.5.1 Electrical d o m a i n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.5.2 M e c h a n i c a l d o m a i n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ideal T r a n s f o r m a t i o n s a n d G y r a t i o n s . . . . . . . . . . . . . . . . . . . . . . B.6.1 Ideal T r a n s f o r m e r s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.6.2 Ideal G y r a t o r s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.6.3 M u l t i - b o n d s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ideal Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K i r c h h o f f ' s laws, j u n c t i o n s a n d t h e n e t w o r k s t r u c t u r e . . . . . . . B.8.1 1 - j u n c t i o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.8.2 0 - j u n c t i o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.8.3 Effort difference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.8.4 Flow difference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B o n d g r a p h m o d e l i n g of electrical n e t w o r k s . . . . . . . . . . . . . . . . B o n d g r a p h m o d e l i n g of m e c h a n i c a l s y s t e m s . . . . . . . . . . . . . . . Examples .............................................. B.11.1 D C m o t o r e x a m p l e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.11.2 M u l t i d i m e n s i o n a l e x a m p l e . . . . . . . . . . . . . . . . . . . . . . . . .
xiii
242 244 246 248 249 249 250 250 251 251 253 254 256 256 257 259 259 260 260 261 261 261 265
Bibliography ..................................................
267
Index .........................................................
273
1. R i g i d B o d i e s a n d M o t i o n s
This chapter presents a coinplcte framework for defining motion between objects and it explicitly states assumptions often forgotten or not considered in the use of Lie groups for rigid b o d y motions [10, 11]. Tile presentation will sl,art with a formal definition of projective, Euclidean spaces and observers to define relative inotion and twists as intrinsic coordinate-free entities. The chapter contributes by clarifying the intrinsic assumptions made when rigid body motion theory is used and by formally relating screw theory to the theory of Lie groups [7]. A lot of objects we have to deal with every day (.'an be considered rigid bodies. Intuitively, we say that an object is rigid if the distances between its points do not change perceptibly. This means that the concept of rigidity is a model hypothesis and an abstraction: in reality nothing is completely rigid as each object a l w w s has, often imperceptible, deflections. Nevertheless, the abstraction of considering an object rigid is very useful and practical. In this chapter wc will show how we (:an formally define rigid bodies and how we carl describe their relative motion. There are two main ways to describe rigid body motion: screw theory: which is based on the original work of Ball [12] and was then used by Lipkin [13], [14], [15], and Lie groups theory [16]. [17], which is used for kinematics in [10] (see Sect. A.8). Screw theory is t)ased on three elements: 1. on the geometry of lines of the projective extension of the Euclidean three-diinensional space, 2. on Chasles's flmdamental theorem on motions of rigid bodies and 3. on Poinsot's theorem, which is concerned with a system of forces applied to a rigid body [10]. A projective extension of the Euclidean three-dimensional space is needed in order to describe pure rigid body translations as will be shown in the sequel. A pure translation can be associated with a line at infinity called the screw axis. In projective terms, motions are described as metric-invariant collineations [13, 14, 15]. We. can then associate either a twist or a wrench with a screw. A twist describes the inotion of a body, whereas a wrench describes the system of forces applied to a body. In the Lie group approach, the basic starting point is the isometry group SE(a) of the Euclidean three-dimensional spaces which can be used to describe motions. Here twists are seen as elements of the Lie algebra se(3) which correspond to the Lie group S E ( 3 ) (see Sect. A.6). Wrenches are defined a,s
2
1. Rigid Bodies and Motions
/--
Fig. 1.1. A two-dimensional projective space.
elements of the dual (see Def. A.5.3) of se(3), which is indicated as se'(3). Unfortunately, in this approach, the position of a rigid body is identified by an element of SE(3), and a reference frame is chosen the choice of which is not intrinsic. Furthermore, almost everywhere, a framework with coordinates is used and thus certain important hypotheses are hidden. The problem is caused by the fact that from the start, tile group of motions in the Euclidean space ks identified with the set of homogeneous matrices H (see Sect. 1.2.1) of the form
where R is an orthonormal matrix representing a rotation and p a translation vector. This also happens in [10], and here simple but important hypothese~s are hidden which are clear in a coordinate-free framework. Only in [18, 19, 1], the importance and necessity of a N O T intrinsic reference is presented. In this chapter we will try to make all the assumptions explicit in order to build a clear and formally correct framework. After a coordinate-free treatment, coordinates will be added and explicit assumptions will be made. In this framework we will consider a classical mechanical framework with the Galilean separation of space-time 1. 1 Thanks to the special theory of relativity, it is well accepted that space is better modeled as a pseudo-Riemannian four-dimensional manifold endowed with the Minkowsky pseudo-metric [20]. The advantages of a space-time-coupled fourdimensional space is nevertheless only useful when the speed of motions is socalled "relativistic" i.e. when the motions approach the speed of light. For our context, such a detailed consideration of space would be cumbersome and useless so the older Galilean three-dimensional approach will be used.
1.1 Projective geometry and Euclidean spaces 1.1 Projective
geometry
and
Euclidean
3
spaces
Screw theory uses the projective extension of the Euclidean three-dimensional space. Since in this chapter we relate the two approaches, we first start with a formal explanation relating the usual conception of an Euclidean space to its projective extension. In what follows, it is easy to grasp the idea of the lower two-dimensional case when one considers it as a cinema with an infinitely extended screen (the two-dimensional Euclidean space). A point on the screen is actually a b e a m passing through the projector (the origin of the vector space of dimension three which embeds the screen). The plane t h a t is parallel to the screen and passes through the projector is called the i m p r o p e r hyperplane. This concept is formalized using projective geometry 2. To talk a b o u t the 3D Euclidean world in a projective setting, we need three ingredients: 9 A real vector space 124 called the supporting vector space of dimension 4 from which we exclude the origin. 9 An equivalence relation on 124 _ {0}: vl ~ v2 ca 3 a C l~ r 0 s.t. Vl = c~v2. 9 A polarity P, which is a 2 covariant, s y m m e t r i c tensor defined on 124, which in the sequel will be taken to be semi-positive defined and of rank 1. The basic transformations between points of projective spaces are defined as injective linear transformations between the supporting vector spaces. These transformations must be injective to prevent t h a t the subspace corresponding to the kernel of the transformation is m a p p e d to the 0 element of the codomain which is N O T a valid element of the projective space 3. These kinds of transformations are called homographies or collineations and in our case they are mappings from 124 to 124. Maps from 124 to the dual 124. are called correlations. A symmetric correlation as P is called polarity. I m p r o p e r h y p e r p l a n e . Using the polarity P , it is possible to consider the vectors pi belonging to the quadric defined by the polarity P which is culled
the absolute: Pijpip j = 0
p~ E 124.
The absolute is a three-dimensional subspace of 124 which is called the iraproper hyperplane and it is indicated with Z 3 C 124. This hyperplane represents the "points at infinity". The improper hyperplane splits 124 in two disjointed semi-spaces, which we will call positive semi-space, indicated with Z +, and the negative semispace, indicated with Z - . 2 In 1859 Caley, by introducing the concept of an "absolute", showed that projective geometry is the most general geometry. 3 It will be shown later that to obtain a proper definition of the projective space, the 0 element must be excluded.
4
1. Rigid Bodies and Motions
T h e three-dimensional projective space is defined as the quotient space of 124 excluding the origin with respect to the defined equivalent relation: 7)3._
v
- {o}
A representation of the t.wo-dimensional case is r e p o r t e d in Figure 1.1. In a purely projective setting where the polarity is not considered, all points are of the same type. Considering the polarity, we can make a distinction between finite points and infinite points. I n f n i t e points are those whose representative in 124 belong to 2-3 and finite points are the others. We indicate with 7)F the finite points and with 7)or the points at infinity. Clearly it is true t h a t 7) = 7)v OT),~,,. Furthermore, for each finite point p E 7)e' (PuP~I~ # 0), there are representatives v E 124 belonging either to 27+ or to 2-- . We can define the sign function cr for elements v E 124: +1 v E : Z -+ 0 v E 73 -1 rE2--
a(v) :=
(].])
A d j o i n t p o l a r i t y . T o g e t h e r with the polarity 1), one defines its adjoint4Q, which is a 2 contravariant, synnnctric, semi-positive tensor of rank 3. Once a proper base {ex, %, e~, e0} for )24 is chosen, the representations of P and Q become:
p =
0
00 00
1 0
Q =
01 00
In tile same coordinates, a vector of 124 has the form (x, y, z, or) T and if (~ = 0 the vector belongs to 2-3 . P o i n t s a n d F r e e v e c t o r s . It is possible to associate with each pair of finite vectors in 7)F a unique element of 27: f : 7)F x 7)F ---* 2- ; (P, q) ~
P II/)llc~(p)
q I]ql[a(q)
(1,3)
where p,q are any representatives and []-[[ represents the P - n o r m . It, is possible to see t h a t the previous o p e r a t k m is indeed i n d e p e n d e n t of the represe.ntatives of the points and therefore well defined. N o t e that the difference of two points can be calculated using the vector s t r u c t u r e of V 4. F u r t h e r m o r e , the i m p r o p e r h y p e r p l a n e w i t h o u t tim equivMe.nce relation and with the origin of 124 gets the m e a n i n g of the vector space of free vectors. In the usual coordinates, this means t h a t if 4 If instead of 0 on the diagonal elements of P and Q we use e, we see. that Q P = PQ = eI, where I is the identity matrix.
1.1 Projective geometry and Euclidean spaces ""-... "'...
\ "\
\ \ "~.... '....
x
y
Fig. 1.2. Coordinates of a line
<,.x,] s>--
(<,.xA and q =
o
\ % /
we have IIp[l~(p) = ~ , and Ilqll~(q) = a q and therefore -- Xq
f(p,q)=
YP Zp
Yq Zq 0
Note that indeed the ltLst component is equal to zero, which confirms the fact that the clement behmgs to Z. It is common to use the notation p-q:=
f(p,q)
for obviolus reasons, but the normalization of Eq. (1.3) be.fore the subtraction is essential to make the operation intrinsically defined. L i n e s . A line l c p a in a projective context is nothing else than a onedimensional subspace which corresponds to a two-dimcrusional subspace L c 124 (without the origin) of the sut)porting vector space 124. In a projective context it is also possible to talk about line~s at infinity when L c Z a. Nlrthermore, a line (:an be described both as the subspace spanned by two points of 124 arid a~s the intersection of two hyperplancs of 124. As in every 2n-dimensional vector spa~:e an n-dimensional subspace is self-dual, so is a line in p3 (defined 1Lsing 124) a self dual entity. It is possible to show that using the previous coordinates, given two distinct points x, y belonging to a line where
6
1. Rigid Bodies and Motions
. ( )and
where
R3
the corresponding line can be identified homogeneously to a vector of the form a(Y-~)~A whereaEIR-{0}.
(1.4)
Eq. (1.4) can be clearly written as:
It is easy to see t h a t if we choose instead of 9 and 9 two other distinct points on the same line in the usual geometrical sence, the vector l as defined in Eq. (1.4) is the same if a proportional multiplication constant is used. This implies that the space of lines has somehow a projective nature by itself, but it should be noticed that the linear combination of two lines as expressed in Eq. (1.4) is in general N O T a line. Using the usual interpretation of s we can interpret fi and f of Eq. (1.5) using Figure 1.2. Note the projective nature of a line: if instead of fi we would use aft, we would effectively describe:
but this represents the same physical line using the representation of Figure 1.2. If we add to a physical line a direction and a module, we get rid of its projective nature and have what is called a rotor. This can be done by considering the direction and module of ft. E u c l i d e a n p r o d u c t o n t h e i m p r o p e r h y p e r p l a n e . It is now possible to define a proper non-singular, internal product for 2:3, which gives rise to the scalar product which characterizes a proper Euclidean Space. In the previous canonical coordinates, an element v, E 273 is characterized by the last component equal to zero. We can associate with v, E 273 the subspace of hyperplanes -~v, for which v, is what is called the polar with respect to Q:
h 9 ~ , ~ v, = Qh where Q is the adjoint of P. We can now define the scalar product of two vectors vl, v2 in 273 as: (vl, v2) := Vf-~ITQh2
hi 9 YJv~,h2 9 ~.2
(1.7)
It is easy to see t h a t the previous definition is well posed since it is independent of the elements hi and h2 due to the structure of Q. It is now possible to define the distance between the finite points using the norm which can be defined based on the scalar product:
d(pl,P2)
:=
[[pl - P21[ := X,/-(Pl - P2,Pl - P2)
(1.8)
1.1 Projective geometry and Euclidean spaces
7
T h e E u c l i d e a n s p a c e . It is now possible to define the following Euclidean three-dimensional space as the pair (C 3, ()) such t h a t E 3 := p3, and (,) is the scalar product just defined on Ca := 173 which is treated as a vector space. As with T', we indicate with EF finite points and with Coo infinite points and again: E = SF U Eoo.
Proper collineations of the Euclidean space are defined as the collineations which keep the polarity P, and therefore the improper hyperplane Z 3 invariant. It can be seen t h a t in the previous coordinates a proper Euclidean collineation has the form:
C: ~{4 ---* R4;q ~ ~ 0 1] q
(]-.9)
where R E SO(3), the set of positively oriented orthonormal matrices, a, can be either equal to +1 for an orientation-preserving transformation or - 1 for a transformation-changing orientation and p E R 3. Using an abuse of notation, we will often indicate in the sequel with • only the finite points, even if they where previously denoted as ~:r. Looking at the expression of Eq. (1.4) for a line, we can see how these coordinates transform. Using Eq. (1.9) and Eq. (1.4), it is possible to see t h a t the mapping of a line that corresponds to the m a p p i n g of points as reported in Eq. (1.9) becomes: -
-5:
t
where the operator tilde is such t h a t 15 is a skew-symmetric matrix and it is such that iba = p A a for each a E R 3. Using the matrix rotation group SO(3) and the intrinsically defined operation of Lie brackets [18], it is possible to orient E by defining a 3 - f o r m f2 on 2"3. We suppose t h a t the coordinates (ex, e u, ez, e0) are chosen such t h a t ~ ( e x , e u,ez) = +1 and ez = [ex,eu] , where [,] represents the Lie algebra c o m m u t a t o r of so(3). In these coordinates, the operation of vector product "A" in IR3 results in the usual product. More details will be given later on this issue. C o o r d i n a t e f u n c t i o n s . A coordinate k~ for the space C is a 4-tuple of the form
~ = (o,~,~,~)
o~&(or
~,~,~e&
where &, Y, z should be linearly independent 5. If, furthermore k, ~, ~ are orthonormal, we call the coordinates orthonormal. Eventually we call the coordinates positively oriented iff ~2(&, #, ~) = +1, where ~ is the form orientating 5 Properly speaking, in projective geometry, the concept of an homogeneous Cartesian reference can be introduced, which is composed on n + 2 projective points one of which is called the identity. For our needs this is not necessary
8
1. Rigid Bodies and Motions
t h e E u c l i d e a n space. If not o t h e r w i s e specified, we will a l w a y s cotLsider posit i v e l y oriented, o r t h o n o r m a l c o o r d i n a t e s s y s t e m s . W e (:an now define a b a s e for V 4 t h a t is d e p e n d e n t on ~P using t h e four l i n e a r l y i n d e p e n d e n t vectors: ^
^
O
])4
ilollo(o )- 9 of V 4. T h e i n a p which a s s o c i a t e s a r e p r e s e n t a t i v e of a p o i n t of s w i t h its n u m e r ical r e p r e s e n t a t i o n using this b a s e is i n d i c a t e d w i t h ~ i : O
~(p) = (p~,pv,p~,av)
~ p = p S c + PuY + P~Z + o ~ - -
Iloll (o)
C l e a r l y we have t h a t : ~,/h-l ( -, . , - , 0 ) ----2-3
Vi = 1 . . . . . m
(1.11)
a n d t h e r e f o r e t h e s e c o o r d i n a t e s are c h a r a c t e r i z e d b y t h e fact t h a t t h e last c o m p o n e n t t h a t is e q u a l to zero r e p r e s e n t s a p o i n t a t i n f n i t y .
1.2 Rigid bodies and Observers T i l e c o n c e p t of all o b s e r v e r is very i m p o r t a n t a n d is c o u p l e d w i t h t h e c o n c e p t of space: an o b s e r v e r is identified w i t h a E u c l i d e a n s p a c e to which he is r i g i d l y c o n n e c t e d t o g e t h e r w i t h all t h o s e o b j e c t s which are a l w a y s s t a t i o n a r y in r e l a t i o n to him. A set of o b j e c t s which never c h a n g e p o s i t i o n in r e l a t i o n to one a n o t h e r c a n b e c o n s i d e r e d ms a single e n t i t y from a k i n e m a t i c p o i n t of view. For these r e a s o n s a n d for m o r e formal ones t h a t s h o u l d b e c o m e clear in t h e sequel, we c o n s i d e r as m a n y E u c l i d e a n s p a c e s as t h e r e are b o d i e s m o v i n g r e l a t i v e to one a n o t h e r . In tile p r o j e c t i v e s e t t i n g , t h e s e E u c l i d e a n s p a c e s can b e seen as a set of f o u r - d i m e n s i o n a l v e c t o r s p a c e s w i t h a (:ommon p o l a r i t y P and a common improper hyperplane. All o b j e c t will b e a s u b s e t of a E u c l i d e a n s p a c e t o g e t h e r w i t h a inass d e n s i t y flmction which a s s o c i a t e s a value w i t h each of t h e b o d y ' s points. T h e m a s s d e n s i t y flln(:tioil is r e l e v a n t for d y n a m i c c o n s i d e r a t i o n s . F o r k i n e m a t i c c o n s i d e r a t i o n s , it is suffi('ient to define a p r o p e r b o d y B~ as a s u b s e t of a E u c l i d e a n space C~. O n c e we have defined t h e g e o m e t r y of b o d i e s a n d spaces, we c a n i n t r o d u c e t i m e as an a b s o l u t e 6 s c a l a r v a r i a b l e . W e c a n now define w h a t we will call t h e E u c l i d e a n systein. 0 The fact that we will consider time as an absolute is a consequence of the classical separation in inechanics of space and time, which is due to the Galilean hypothesis.
1.2 Rigid bodies and Observers
9
Fig. 1.3. An example of a two-dimensional Euclidean system.
D e f i n i t i o n 1.2.1 ( E u c l i d e a n s y s t e m ) . The ordered set of m, n-dimensional
Euclidean oriented spaces:
,Era} is called a Euclidean system of dimension n and order m We use the Euclidean system as the basic structure to consider relative motions. All the material which will be treated will be general and applicable to n dimensions. Clearly in 3D mechanics, we will have n -= 3. The number m corresponds to the number of objects a n d / o r observers we consider in our study of motion. To understand the concepts intuitively, we consider the two-dimensional Euclidean system $3(2) of Figure 1.3. We use a two-dimensional example for simplicity and to illustrate some concepts which will be introduced later on. We can consider the Euclidean spaces as sheets of paper having an infinite extension which can be placed on one another. In the figures, the sheets are drawn as finite rectangles for the sake of clarity, but they should be thought of as extending infinitely. The following definition is necessary to understand relative positions:
Let g / , g j 9 S m ( n ) be 2 Euclidean spaces with distance functions dz : gz • gz --* ]~+ with 1 = i, j . A n isometry, between gi and ~y is defined as a bijective application h~ : gi --~ gj ; P ~-+ h~ (p) such
D e f i n i t i o n 1.2.2 ( I s o m e t r y ) .
10
1. Rigid Bodies and Motions
Fig. 1.4. Maps between Euclidean spaces.
that Vp, q e ~i, dj (h~ (p), h Yi (q)) = di(p, q). If i = j, we will call the isometry auto-isometry or motion. It is well-known [20] t h a t an isometry does not imply anything a b o u t orientational issues. T h e preservation of orientation can only be defined if "reference orientations" are defined on the spaces under consideration by means of an n - f o r m , which is in our case Y2i. A reference orientation is only necessary for isometrics defined between different spaces: a motion can be defined to be orientation preserving even if no reference orientation is chosen for it.
A positive isometry from Ci with associated orientation Y2i to Ej with associated orientation Y2j we call an isometry h~ : Ei --* Cj such that there exists ~ 9 C~(Ei) s.t. )~(.) > 0 and )~Y2i = (h~)*Y2j where with (h~)* we indicate the pullback operator (see Def. A. 7.20). SE~ (n) denotes the set of positive isometrics from Ei to Ej. The subscript i of hJi corresponds to the domain and the superscript j corresponds to the range space. The set of motions h~ of space Ci is indicated with S E i (n).
D e f i n i t i o n 1.2.3 ( P o s i t i v e i s o m e t r y ) .
To improve our intuition, we could consider the orientation by writing the n a m e of the Euclidean space on each of the sheets (see Figure 1.4). It is t h e n possible to see t h a t in Figure 1.4, h~ is a positive isometry and this can be
1.2 Rigid bodies and Observers
11
seen by shifting tile two sheets of paper such that tile two hammers coincide, as reported b o t t o m left in the figure. Furthermore, h~ is still an isometry, but it is not positive since we must first turn over the sheet before all the points of one s h ~ t correspond to those on the other sheet. This is reported b o t t o m right of the figure. The last mapping, h 2, is not even an isometry since the distances between points arc changed and there is no way that the two sheets can be placed such that the points on one correspond to the points on the other. D e f i n i t i o n 1.2.4 ( R e l a t i v e P o s i t i o n ) . An element h j 6 S E J ( n ) is called a relative position of Ci with respect to Cj. It is important to reflect a moment oil the previous definitions. Observers a n d / o r objects axe associated with a Euclidean space to which they axe rigidly connected. We can think of all these spaces ms interpenetrating. In the example, this "interpenetration" (:an be understood by considering how the sheets overlap. In each instant, all the points of one of the spaces will have associated points on each of the other spaces. In the example "the association" is the one which assigns to all the points of one sheet the corresponding points underneath on another sheet. This map is represented by a positively oriented isometry. It is important at this point to reason without any use of coordinates because it enables us to define entities which axe intrinsic. We carl now define a kinematic state. D e f i n i t i o n 1.2.5 ( K i n e m a t i c S t a t e ) . Euclidean system S'n(n) a point:
We call a kinematic state for a
1 32 . . . . ,h m m-1 ) 6 SE,J (n) x S E ~ ( n ) x . . . X S E m - I h : - - (h 2,h Most of the Euclidean spaces belonging to Sin(n) will repre.sent physical bodies. These spaces have a subset of points B~ C E, where matter is present. This set Bi is called the matter set and it corresponds to the Euclidean space E,. We say that a Euclidean space in Sin(n) is a pure observer iff its matter set is the empty set. In the working example, the set B1 will be the set of points where the hammer is, B2 where the screw driver is and B3 where the spanner is. These are sets in two-dimensional Euclidean spaces. In the example there arc no pure observers which could be thought of as additional sheets with no objects on them. We can now talk about a compatible kinematic state: D e f i n i t i o n 1.2.6 ( C o m p a t i b l e K i n e m a t i c S t a t e ) . We will say that a kinematic state h as defined in Def. 1.2.5 is compatible iff hJ(Bi) V) B j = 0 ViTtj i,j= 1,...,m. The previous definition can be used to describe object impenetrability. This is tile simplest and most basic constraint which has to be satisfied at this stage: rigid objects will not penetrate one another 7. In reality, when bodies are in contact, they will slightly deflect and generate an elastic force which will oppose the compenetration.
12
1. Rigid Bodies and Motions
Fig. 1.5. Compatibility of the kinematic state. The idea of compatibility of state is illustrated in Figure 1.5. The relative position of E1 and C2 does not create any problem for the kinematic state compatibility, but the relative position of E1 and E3 is not compatible since it maps points of an object belonging to one space to points of another object in another space. Remember that in the example, the previously considered map, corresponds to the one which maps points of one sheet iEuclidean space) to the points underneath on another sheet. Here a remark is in order: at first glance the presented framework may seem unnecessarily theoretical and formal. Nevertheless, such an approach is not just fundamentally meaningful; it could be used as the basis for implementing computer tools for the analysis of mechanisms. To be able to describe a mechanism, we need to have formal and exact ways to represent information, and the definitions proposed here help to give such a structure. We can now define the corresponding left, right and conjugation maps between two spaces. Note that if the spaces are different, these operations are neither endomorphisms nor group operations. This is why we use the adjective "hybrid" for the following definitions. D e f i n i t i o n 1.2.7 ( H y b r i d R i g h t a n d L e f t M a p s ) .
We call
Rh{ : SEj i n) -~ SE~ (n) ; h2 ~-~ hj o h~ the r~ght hybrid map for the pair of spaces (Ci, Ej) at h{ e SE~in ) and : SEa(n)
SEa(n) ;
o
the left hybrid map for the pair of spaces iE~,s at h~ e SE~(n). The " o " indicates the composition of maps. The left hybrid map can be used to create a bijection between SEJ(n) and SE~(n) and the right hybrid map can be used to create a bijection between SE~ i n) and SEj(n). Remember that S E j (n) represents the space of absolute relative positions of i and j independent of any relative reference position. Then it is possible to consider how the corresponding representations in SEi(n) and SEj (n) are related given a reference relative position h~. This is done using the hybrid conjugation map.
1.2 Rigid bodies and Observers
13
D e f i n i t i o n 1.2.8 ( H y b r i d C o n j u g a t i o n m a p ) . We will call the map Kh~ := Rh~l Lhj' hybrid conjugation map for the pair of spaces (Ei,$a) in g
h~ C SLy(n). This map can, be expressed as t,h: : S E , ( ~ ) ~ SE~(,~) ; h, ~ h~ o h, o (h~) -~. With respect to the p,'evious definitions of hybrid right,, left and conjugation maps, it is important to note t h a t if the domain and range spaces coincide (if they are the same Euclidean space), these maps become cndomorphisms and correspond to the s t a n d a r d Lie group maps on a special isometry group (see Sect. A.8.1).
Remark 1.2.1 (Swap domain range). If in the previous definition we were to swap the domain space with the range (i ,-, j ) , the result wouht be that r --* r -x, h --~ h-I and the right maps would correspond to the previous left maps and so on. This (:an be formally stated as follows: (L~l(r)) -1 = (h -1
or) -1 :
( r -1 o h )
:
R(hl_l)(r -1)
where r,h E SEa(n) and the previous eh'ments all belong to SEi(n), or dually:
(L~' , ) ( r - ' ) ) - '
= (h o ,'-~)-' = (r o h -~) = R ; ' ( r )
where r, h E SE~ (n) and the previous elements all belong to S E a (n). This remark has i m p o r t a n t implieatioim when twists are introduced. It can be ea~sily verified that Ka~' (e,) = er Vh~ E SEJ (n), where ck 5 SEk(n) is the identity element of the group SEa (n). W(; can consider the tangent m a p of
Kh~: .
)
: T S E i ( n ) --* T S E j ( n ) : (h,.v,) hf oh, o(h3,) -1, ~
(hf oe"'th, o , ,
)
(1.12) t=0
where with e'"th~ we used the usual exponential map (Sect. A.8.6) to consider a (:m've in S,~,',(n) parameterized by t and passing through h, at time t = 0 with velocity vi. It, is now possible to define the hybrid adjoint. D e f i n i t i o n 1.2.9 ( H y b r i d a d j o i n t ) . We call hybrid adjomt from space se,(n) to space set(n ) the following map:
where g(.) indicates the fiber projection (see Def. A.7.6), which in this case corTesponds to the tangent space in ei, the identity element of S E a (n).
14
1. Rigid Bodies and Motions
0 ~
~0
e,
ej
Fig. 1.6. The commutation diagram of the relation among elements of the Lie groups and the reference.
It is important to note that se~(n) and sej(n) are N O T the same and that there is no natural identification for these algebras s. Furthermore, if the domain and range space of Adh~ coincide, the hybrid adjoint corresponds to the usual adjoint group operation (see Def. A.8.5). With reference to Figure 1.6, we can associate an element of SEa(n) or SEj(n) with a relative position of i with respect to j that corresponds to a h~ E SE~ (n) by using a reference
r~ e SEa(n): hi :
: (e,)-'
o hl
(1.13)
hj =
= hl o ( i f ) - 1
(1.14)
Remark 1.2.2. Note that the identification of a relative position by an element of SEi(n) or an element of SEj(n) is N O T intrinsic and depends on the choice of a reference-relative position ~ . This is often not stated in the literature, even though the use of Lie group theory to describe rigid body motions depends on it ! 1.2.1 Numerical representation of c o n f i g u r a t i o n s Up to this moment, we have considered relative positions without using coordinates. For each of the Euclidean spaces Ci belonging to the Euclidean system, we can choose a right-handed orthonormal coordinate system ~i as explained in Sect. 1.1. Doing so, we can identify certain operations to operations within a matrix algebra. We will see that an intelligent choice of the s The vector spaces sei(n) and sej(n) are algebras since they have a commutator operator derived from the Lie bracket of vector fields on SE,(n) and SEj(n). For details see Def. A.7.12 and Def. A.6.1.
1.3 Twists
15
reference ~ , which is dependent on the choice of the coordinates, will yield standard Lie group operations of the matrix group SE(n) as presented in [10]. I s o m e t r i e s in R " . The positively oriented motions in R " will be essential to what follows. It is well known that this set is homeomorphic to the special isometries matrix group SE(n), which is defined in the following way:
where with SO(n) we indicate the special o r t h o n o r m a l group of orthonormal matrices defined as:
SO(n) := {R e ~nx, s.t. det(R) = 1, R -1 = R T } .
(1.16)
At page 7 we have seen t h a t collineations are defined in such a way that they keep the polarity invariant. This implies t h a t such mappings do not change the distances between points since the polarity is the means t h a t is used to define the Euclidean scalar product, and therefore the norm and distance. This also implies that a collineation corresponds to an isometry as defined in Def. 1.2.2 within the same space; therefore the collineation has a representation as given in Eq. (1.9). If, furthermore we require that this isometry is positive, we have a = 1 in Eq. (1.9) and therefore the operation y = h(x) for a positive isometry h from IR'~ to itself corresponds to a matrix multiplication of the form:
=
(1)
where the matrix belongs to SE(n). R e p r e s e n t a t i o n o f r e l a t i v e p o s i t i o n s w i t h c o o r d i n a t e s . Suppose we associate with each C~ 9 S m (n) a right-handed coordinate frame ~Pi. We can, therefore, assign an element of H i 9 SE(n) to each element h~ 9 SE~ (n) which corresponds to the following isometry of l~n:
= v , o h,'. o
(1.1r)
T h e element H i is an element of SE(n) because it is defined as a composition of positively oriented isometries and it is therefore a positively oriented isometry of IR~.
1.3 Twists So far we have considered relative positions without introducing motion. T h e latter is clearly a change of relative position. To be able to talk a b o u t change, we need to consider a time set I which will be an open interval of ]R. We can then consider curves in SEJ(n) parameterized by t E I.
16
1. Rigid Bodies and Motions
Definition
1.3.1 (Relative M o t i o n ) . W e call a differentiable function of
the following form 9 :
I
SL'f
a relative motion of space i with rvspect to j Since relative motions are differentiable, we (:an consider the velocity vector of thc curve at h~, which we indicate as
9
S L (n).
Considering Eq. (1.13) (respectively Eq. (1.14)) we (:an m a p these relative motion velocities to elements of the t a n g e n t bundle TSE2(n) (respectively
TSE3(n)): (L~')
:TSE~(n)--~TSE,(n)
(
, ,,,f )
:
b--o
where with t ~ e"~,thj, we indicate any curve in SE~ (n) ttmt passes t h r o u g h h~ at t i m e t = 0 with velocity v~. An analogous m a p can be used to m a p to TSEj(n) using the hybrid right translation.
Remark 1.3.1 (Inverse. mapping). It is i m p o r t a n t to realize t h a t each h3, : I ~ S E a ( n ) is bijective to a hij : I --* SQ(rt) ; t ~-* (h~(t)) -1. This implies also t h a t to each h~ E Th~,SEJ(n) an element h~j E Th)SEj(n ) will uniquely correspond. This m e a n s ttlat whenever we will talk a b o u t vector fields or distributions on SE~(n), we will also have uniquely c o r r e s p o n d i n g vector fields or distributions defined on SE~(n). So far, we have shown a way to m a p relative velocities to elcments of TSE,(n) or TSEj(n) (see Figure 1.9). Both of these m a p s are not intrinsic since they d e p e n d on a choice of a referenc(~relative position r~. T h e s e elemcnts belong to t a n g e n t bundles of Lie groups and therefore it is meaningflfl to t r a n s p o r t these t a n g e n t vectors to the group identities by m e a n s of either left, or right translations (see Sect. A.8.1).
1.3.1 Transports to the identity of t h e d o m a i n Lie group Consider the element ( L r ~ ) .
( h ~ , v ~ ) w h i c h is the representative in TSEi(n)
of tile relative m o t i o n of g, with respect to g3 in the relative position h~ witti 9 Note the abuse of notation here: h~ has been used both ms an element of SE~ (n) and as a function from I to SE;, (n).
1.3 Twists
E~ p~(O)
0 "~
p~(t)
9 ~
h}(0)
17
Ej "-O
PJ
h~(t)
Fig. 1.7. Commutation diagram of the intrinsic left translations. a relative velocity vj. We can transport this tangent vector to el, the identity element of S E i (n) either by left or right translation. An important result is the following: T h e o r e m 1.3.1. The left translation to the identity of the left hybrid translated tangent vector representative of a relative motion is defined intrinsically and independent of any choice of a fixed reference r j. P r o o f . Consider an element ( h ji, v~) c T, S E j (n). Consider a relative motion
h{: I-a, a]-+ SE~(n) with a > 0 and such that h{ (0) = h~ and d ( h{(t) ) t = o = v Ji- Defining (hi, vi) :=
J J ( n~-~1) (hi,~i)
it is possible to see that hi = hi(0) and vi = d ( h i ( t ) ) t=o where hi(t) = n -1j (h-ji (t)). Ti
To calculate the left translation at the identity of (hi, vi), we have, therefore:
d ( (h}(0) o r ij o rji o h~(t)) ) t = 0 = -dt d-t d- ( ( h } ( O ) ~
t=o .
(1.19)
It is possible to see that the last expression is independent of r i2 and therefore defined intrinsically. We will call the last quantity t~'j C sei(n) the intrinsic twist of the motion of $i with respect to Sj expressed in the space sei(n).
18
1. Rigid Bodies and Motions
Note the notation: in t: '~, the subscript and the second superscript indicate the relative motion, which in this case is i with respect to j. T h e first superscript indicates in which algebra this motion is expressed, which in this case is sei(n). The reader could be t e m p t e d to say t h a t t: '3 is the twist t h a t an observer sitting in Ei would observe. This is N O T the ca.~e, as can be seen in the c o n m m t a t i o n diagram of Figure 1.7: an observer sitting in ~'~ who is looking at a point Pa fixed in Cj would observe a motion t h a t is the exact opposite of the one described. To understand this, consider that the observer Ei for whom the time increases would see. a motion corresponding to a mapping from p,(0) to pi(t) with t > 0, which has a direction that is opposite to the one reported in Figure 1.7 and corresponds to (h~ (0) o [~(t)). If instead of left translating to the identity we right translate, we do N O T get a quantity t h a t is intrinsically defined. This is formally stated below: 1.3.2. The right translation to the identity of the left hybrid translated tangent vector representative of a relative motion is N O T intrinsically defined and is equal to
Theorem
where d
(1.20)
We will indicate with the simplified notation t~ = t3i'j the case in which the two superscripts coincide. P r o o f . With similar definitions as in the previous theorem, we show that:
o
Aar;
(1.21)
1.3.2 T r a n s p o r t s t o t h e i d e n t i t y o f t h e range Lie g r o u p Like we did in the previous subsection, we can first use thc hybrid right translation to m a p relative motions to SEj(n), and then Lie group right or left translations within SEj(n) to m a p to the identity. Tile following two theorems then correspond to the previous ones.
1.3 Twists
E~
19
Ej h}(o)
Pi O 4e"
"- 9
hi(t) " - - - - - - * 9
pj(0)
PJ(t)
Fig. 1.8. Commutation diagram of the intrinsic right translations. 1.3.3. The right translation to the identity of the right hybrid translated tangent vector representative of a relative motion is defined intrinsically, independent of any choice of reference r~ and equal to t j as defined in Eq. (1.20). Theorem
P r o o f . See proof of T h e o r e m 1.3.1.
9
Observing the c o m m u t a t i o n diagram of Figure 1.8, we can see t h a t the twist t j is indeed the twist t h a t an observer sitting in Ej would see. T h e diagram shows that a fixed point Pi E Ci is indeed m a p p e d from a point pj (0) c Cj to future points pi(t). This means t h a t the right translation is somehow more representative. On the other hand, as a consequence of what was said in Remark. 1.2.1, p.13, we could consider that the isometries going from j to i correspond to the inverse of what done so far. This would result in a right i This will be discussed in translation which would give the intrinsic twist tj. detail later. If instead of right translating to the identity we left translate, we do N O T get an intrinsically defined quantity. This is formally stated in what follows: 1.3.4. The left translation to the identity of the right hybrid translated tangent vector representative of a relative motion is N O T defined intrinsically and is equal to
Theorem
~J = Adr~ t~'j . P r o o f . See proof of T h e o r e m 1.3.2.
9
In a similar way, it is also possible to find an intrinsic m a p p i n g which m a p s intrinsic twists of one space to the other. This is formally stated in the following theorem, which can be proven along the same lines as the previous ones.
1.3.5 ( M a p b e t w e e n i n t r i n s i c t w i s t s ) . For any relative position h j, a bijection exists between the intrinsic twists in sei(n) and the ones in sej (n). This map is given by:
Theorem
20
1. Rigid Bodies and Motions
1
Thi SEi
~
Adh~
,~ 8ej
".xx
\
Adhj
~
sei ,
Ad,.~
Thj SEj
.
( se~ ~
LLY
Fig. 1.9. The complete commutation diagram.
t j = Adh~t~ 'j. Adh~ is to the hybrid adjoint of Def. 1.2.9. The presented results are s u m m a rized in Figure 1.9. The thick cross-hatched lines show the intrinsic m a p s to and between the Lie algebras of the Lie groups of the motions of the two spaces under consideration. Only those twists are intrinsic and independent of the reference r{ which are obtained by following the m a p s to the circled set and sej. Furthermore, it has been shown t h a t the s t a n d a r d adjoint m a p s within the Lie algebras of the two spaces are not maps between intrinsically defined quantities. This means t h a t in a coordinate-free framework, it is not correct to say t h a t the adjoint group operation m a p s twists from one reference to the other since one of the two elements is not intrinsic and dependent, on the reference r~. We denoted these nonintrinsic elements with t~ and ti '~'~. 1.3.3 R e l a t i o n s b e t w e e n
twists
It is possible to see t h a t the complete right translation is somehow more representative t h a n the left one since it gives the motion of gi t h a t an observer sitting in gj would directly observe. From the considerations of Figure 1.7 and Figure 1.8, it should be clear t h a t d
t=0
represents the motion of g~ for an observer sitting in gj. In exactly the same way, namely by inverting the domain and range space as explained in Remark. 1.2.1, p.13, we could arrive at the definition of
1.3 Twists
21
Fig. 1.10. Intrinsic twist maps.
i
d
t=0
which would again correspond to the right translation to the identity of the right hybrid translated tangent vector of a motion, but now in the opposite direction: for the isometries from Ej to Ei. A representation of the two intrinsic right translated twists t j and tji is shown in Figure 1.10. It is possible to see that the direction of t~ is opposite to the one of t21. This relation can be formally stated in the following theorem. T h e o r e m 1.3.6 ( T w i s t r e l a t i o n s ) . With the notation used previously, the
following identities hold: 9
Ad +i,j= -Adh~ t}
(1.22)
and tj=i
-t~. = - A d h} t~ = Ad h} t~#.
(1.23)
Instead of giving a formal proof of the previous theorem, we use Figure 1.11, Figure 1.12, Figure 1.13, Figure 1.14 to understand the result. The top figures show the right translated relative motion in the two directions and the bottom ones show the left translated. The left figures correspond to the intrinsic map 7ra~ j which is also denoted with 7rh~(Figure 1.11) and Zrh~ (Figure 1.13) of Figure 1.9 and the right figures correspond to the intrinsic maps 7r~] (Figure 1.12) and 7rJ} (Figure 1.14) of a diagram similar to Figure 1.9, but now the considered isometries would belong to SE~ (n) instead of SE~ (n).
22
1. Rigid Bodies and Motions
E~ Pi
.~___.~
h}(O)
~ - .
E~
6 pj(0)
~ . ! ~ Fig. 1 . n .
t~ =
C,
pi(O) o
~
o
pi(0) 9
~.PJ
(t)
i (h~(t) o h~(o))Io.
h}(o)
6 h~(o)
Fig. 1.12. t} = ~a (h}(t) o h{(O))lo.
6
pj
Pi
9
)
h~(0)
"*,, p~(0)
h} (t)
Fig. 1.1a. t~'~ = ~ (h}(O) o h{(t))l o.
Fig. 1.14. t F =
6
-~
9 pj (t)
(~(o)ohi(t))Io.
1.3.4 N u m e r i c a l r e p r e s e n t a t i o n o f t w i s t s We have seen in Sect. 1.2.1 that once we have chosen coordinates, we can relate a relative configuration h~ e SE~ (n) to a matrix belonging to S E ( 3 ) . We can associate the relative position h{ E SEa(n) with the matrix H{, which corresponds to the change of coordinates from ~i to ~Pj. Now consider a point p E Ci. If we take the numerical representation p i of this point p using the coordinates ~ , we clearly have that 16~ = 0 since p is a fixed point of Ci. We can then write the numerical representation of this point in the coordinate ~Pj fixed with gj. Using the coordinate-change matrix H j := Cj o h{ o r we obtain:
PJ = H{ pi Differentiating over time, we have: /bj = / : / { p i where we used the fact t h a t / 5 i = 0 and consider the homogeneous coordinates introduced in Sect. 1.1 for points:
Before proceeding, we need a result which is well known and useful for what follows.
1.3 Twists
23
"lMble 1.1. The possible forms of twists Notation t~'j :~
"j T := H$, H,
.~ = Hi7~ H,
/5# = H~(7~p,)
7~i,,#
t~'i ~
"5 , T := H, H$
'5 ~ y ~ H, =
p1 = r
:F,#"
T h e o r e m 1.3.7. Given a m a t r i x H 6 S E ( 3 ) differentiabily depending on a scalar t, we have that: /IH-1,H-1/-t
6 se(3).
where
and & is the s k e w - s y m m e t r i c m a t r i x such t h a t / o r any vector x, &x = w A x.
The set of matrices se(3) which result from the product of a matrix belonging to S E ( 3 ) times the derivative of its inverse (or vice versa) is called the Lie algebra of S E ( 3 ) . The elements belonging to se(3) are the numerical representative of the twists i n / - f r a m e or in j - f r a m e . We will use the following notation:
The vector T is the vector of Plficker coordinates of the twist :F, and we will abusively call this a twist as well. We therefore have a vector representation of a twist and a matrix representation: T 6 •6 and 7~ 6 l~4• respectively. For the twist of C, with respect to s we consider /Sj = /:/~p~ and we have the two possibilities reported in Table 1.1. Furthermore
and
=:> #
= r A (RJip i + I:~i)+ v
24
1. Rigid Bodies and Motions
Remark 1.,'].2 (Inte773retation twists). T h e rotational p a r t is tile usual angular rotation. T h e linear velo(:ity part of tile twist .T;,,, , v = pj, A wj,,i + pj.i is the velocity of a point q t h a t is rigi(tly connected to ~'j and passing t h r o u g h tile origin of ~P,, and N O T tile velocity of the origin of ~Pj with respect, to ~'i: this is N O T a ge()metric entity and it would be conceptually w r o n g !! C h a n g e s o f c o o r d i n a t e s for t w i s t s : t h e a d j o i n t r e p r e s e n t a t i o n . Tile twists in i - f r a m e and in j - f r a m e are relate(t by a linear m a p called hybrid adjoint mapping which was defined in Def. 1.2.9. To find a numerical representation of this map, just look at Table 1.1 and consider the. relation between tl '-7 and ta,'J reported in Eq. (1.22):
t~'i := t ~ = Adh~t~ '~
(1.25)
Numerical representatio,,s of tl '~ and t~ 'J are 7: ''J a.nd Z:'J respectively, as defined in Table 1.1. This implies t h a t tile numerical representation of tile Adjoint is such that:
Ad.( : se(3)
H~TIIj
---* se(3); T ~
Since this m a p is linear, the question arises how we can express the previ(nm m a p ms a matrix o p e r a t o r on twists as expressed as six-dimensional vectors T as defined in Eq. (1.24). This can be done with a s t r a i g h t f o r w a r d calculation. Starting from tile previous definition
i-I[ . ~'3.J. tt[
.
II['-r:" . ~ ~'~"
which represents the mapping their form as seen in Theorem
-',j Hji H,j T~
(1.26)
of twists we can write out the matrices 1.3.7 and obtain:
using
.- ,
,~,j,)
.) ]
\ {I
1
]
which implies after h~w steps 1~ 10 Note that for any orthonormal matrix R, the following identity holds: Rd;R 'r = (Rw)-where the operator 'tilde' yieMs a skew symmetric matrix that corresponds to its argument.
1.3 Twists
fJ,J va,'\
=
(n~
~ )
(~','"-' asi Orta
'.a , R a~l~ + *,'~,0 i '-~'J
o
)
- (n, ~, )- g .4- n,,, o
"~ )
o /r)j ,*,j ", j.,~,j\ ~, ~,,,,~, ,+ <,,,
((R',<"/\
)=
3 - ~,J Rj)~ * j.,i,j \ -(R,~q + R,~,
/ R f - *,j Ri
\
25
0
)
0
((n;o:")"
- j, .z,j a.,~,J\ Y'Ri~'O + Ri~i )
Finally we have obtained
Lj,,
/j., ,.J.,~ ((,eft/)-
: ~;
"o) : ~
~m, .'.J
o
~,!.J)
~'-"~ +R'~'
:H',#'H;
which implies:
V" (~;'q =
=
(<'q \ ~'i" )
We indicate this now as:
TJ,O = AdH; T ' ~ where
is the matrix representation of the linear m a p we where looking for, and in the Lie group setting it is calh'd the adjoint representation of the Lie 9roup
sE(a) on ,~e(a)[18, 1]. The matrix AdH~' is dependent on H~ and this implies t h a t if the relative position of Cz changes with respect to Cj, H~ will change and as a consequence, the matrix AdH~' will be time varying. We will need the time derivative of AdHj' for expressing the dynamics of a rigid body.
Remark 1,3.,~. It is i m p o r t a n t to note that the adjoint m a p corresponds to a positive (or = +1) collineation of lines, as shown in Eq. (1.10). This shows a first relation between Lie group elements of se(a) and the projectiw; geometry of lines. We can generalize this result by looking at, more Euclideml spaces belonging to a Euclidean system. T h e main result follows:
26
1. Rigid Bodies and Motions
T h e o r e m 1.3.8 ( T w i s t c o m p o s i t i o n ) . Consider a Euclidean S y s t e m Sin(n) and two positive integers k , i such that k < i < m . We find *.1 ,k+l t~ = t~+ l + "~%~.., %+2 + "a.~ ~ % ~ k +,k+2 a + 9 .. + Adh~._lt~-I where hZq E SE~q(n) is the relative position of q with respect to I and tq C is the intrinsic twist corrvsponding to the m o t i o n of q with respvet to l. P r o o f . Define any set of (:()ordinates ~Pz with l = i . . . . . m for the Euclidean space.s belonging to the Euclidean system. If we do this, wc can associate with each h j 9 S E ~,(n) a matrix H[ 9 S E ( n ) . In the chosen coordinates, tile twist t k is represented by ~bk 9 se(n), which we have s(n'.n defined ms: ~k =/:/~H~r
(1.27)
l~lrthermore, it is possible to see t h a t H~ = H zi - l H i,-1 + 2 H kk+ l - 2 "'" H kk+i By substituting the last equation in Eq. (1.27), we obtain: .
d (r4k
.
.
.
T4k+l
,-2
Hi-1 Hi
~-1
i-1
T4k+~r4a+t~
H i - 2 . . . . . k+l *~k
;
/:/kk+l Hk+lk + H~+I gOk+tUk+:a~Uk+l + "'" + H *-1 k ([_l~-lHi ~*'k+'e*'k+l J**k ~ z-l)Hkt-I = r
+ tt~+ ,*k+2"bk+ttI~+'~+" " + H a,_~T'-iH'-',
k
(1.28)
and going to the vector representation of lwists using what is presented (m page 24 we obtain: Ti~ = T2+~ + AdH~" ,*~+2 T~+t + A d H ~ =7~+3 ,k+'e + - "
+AdH~
7,,-~
(1.29)
which proves the result for any (:oordina~c system.
9
In the following chapters, bond graphs will be largely used. T h e following result will turn out to be extremely useful to describe inter(:onnections and relative motions in the bond graph framework. T h e o r e m 1.3.9 ( T w i s t s r e f e r e n c e ) . Given two Euclidean spaces $i and ~j that are moving with respect to each other with a relative twist t~ 9 se a (n), if we consider" any other Euclidean space $~ the following identity holds: t~ = Adh~(t ~, - tk).
(1.30)
P r o o f . From T h e o r e m 1.3.8 we have that:
t', = t~k + A d . i t~. Furthermore, by the rclations of Eq. (1.22) and Eq. (1.23), we have that: = - Adh~ t k + Adh~ t~. Finally, using the linearity of the operator Adh~ ., we obtain the result.
9
1.3 Twists
27
A d j o i n t t i m e d e r i v a t i v e . In order to find an expression of the adjoint time dcrivative for time varying
we should take a look at
where we (:an deduce i~.3Dj w~ li'j = R j~R ", j, v , ' i j = R jZ~ 9 o r v- zi'j =Rjau, lt,
By definition
R~ ~p,R, +~R, R,)
~
o) R,
=
93: J
(~-/9
RO~) (~,'~ ohm,J ) =
AdH~ adT:.J
where
[~' ~,j0 ) a%, := \~,j
(1.al)
is called the adjoint representation of the Lie algebra [18]
;~'~ o ) Note that the matrix adT is a function of a twist T and not of a relative position H as AdH. Since we have adrkJ we could now investigate what adT, ~ looks like. This can be answered using the following theoreal. T h e o r e m 1.3.10 ( C o o r d i n a t e s e h a n g e s o f adT). Changes of coordinates of the adjoint time derivative due to changes of coordinates of the argument twist are related as follows:
adT,.~ = Adll ~ adT~.J AdH~
28
1. Rigid Bodies and Motions
se~(n)
AdH
THSE(n)
sej(n) Fig. 1.15. The Lie group commutation diagram.
Proof.
AdH~adT~'jAdH~=f-Rtkt~PkRk RlO)adT~'SIPkRkR~)\(lRkl
0
=
/ Dl -,k,j ~k "'" I r~l ~ k , j lgk lO1 ~,k,J l:~k
Tr
1.3.5 T h e link w i t h s t a n d a r d Lie g r o u p s It is possible to link t h e material presented as a c o m p l e t e l y coordinate-free t r e a t m e n t to the purely algebraical Lie g r o u p approach. 1 . 3 . 1 1 . If we choose as a reference r~ = ~ - i o ~Pi, with the coordinate functions ~k k = 1 , . . . , n then Adr~ , Adr} as defined in Def. 1.2.9 will be represented by the identity, and all the maps on the right-hand side of the diagram in Figure 1.9 will have the same representations as the symmetrically corresponding maps on the left.
Theorem
P r o o f . C a n be shown b y using a representation w i t h coordinates. j
,,
Note t h a t the choice of r i = ~j 1 o ~Pi has a very s t r a i g h t f o r w a r d explanation: we consider as a reference-relative position t h a t position in which the c o o r d i n a t e frames ~Pi a n d ~Pj, coincide. This choice is useful for practice b u t
1.4 Wrenches
29
N O T intrinsic and depends on the choice of ('.()ordinate frames h)r an initial relative position. By using coordinates, we ax:hieve t h a t the c o m n m t a t i o n d i a g r a m of Figure. 1.9 "folds" its right and left parts on one a n o t h e r to give the stan(lard Lie g r o u p c o m m u t a t i o n diagrain reported in Figure 1.15, where H = ohj
=
oh,
=
1.4 Wrenches In the previous section wc analyzed the relative inotion of two Euclidean spaces. This resulted in a presentati(m of the twists as a kind of generalized, intrinsically defined, configuration-indet)endent velocities. By considering the dual (:ntities of velocities, we can directly define forces between two Eu(:lidcan spaces. Note that. the following trc.atment will not look at the effect of an applied force but only at its kinematics. Hence, we do not consider d y n a m i c s at this stage.
1.4.1 P o w e r and P o w e r conjugate variables In Sect. 1.3 we have considered relative velocities of tile two Euclidean spaces g~ and g~ as el(.`ments of the t a n g e n t bundle TSE~ (n) or TSE~ (n). In a point
h~ 9 SE~ (n)
we can consider tile co-vectors belonging to
Ti:~SE j (n)
which.
applied to elements of Th~SE~(n ), result in a scalar. This dual s t r u c t u r e is exactly the one we need to define forces and their duality with velocities. A force can in fact be seen as a 1 - f o r m (see Sect. A.5) which, when it is applied to a vector t h a t corresponds to a velocity, results in a scalar, which, in its turn, corre.sponds to the power supplied by the entity t h a t generates the force. It is well known t h a t forces and velocities t r a n s f o r m differently u n d e r coordinate changers which are not o r t h o n o r m a l and, therefore, they are different kinds of tensors (see Sect. A.5.1).
Remark I.~.I (Geometry of a linear force). It, is obvious to visualize a velocity vector of a point mass a,s a vector with a direction and m a g n i t u d e . Not m a n y people realize t h a t a force (a co-vector or one-form) can be visualized in this way as well, as only the existence of the Euclidean metric allows it. W i t h o u t a metric, it would not be possible to visualize a co-vector, like a force, as a vector, it would then look like a hyperplane! For all the reasons mentioned above, we consider a generalized force between two Euclidean spaces C~ and Ej as an element of T*SE~(n) or, equivalently as an element of T*SE~(n). It is possible to corusider a d i a g r a m dual to the one of Figure 1.9 and to define the dual spaces of sei(n) and sej(n), which will be indicated with
30
1. Rigid Bodies and Motions
se~ (n) and se~ (n). We could intrinsically define elements t h a t correspond to the dual vector spaces of sei(n) and sej(n), which are circled in Figure 1.9. Elements belonging to the intrinsic se; (n) and se; (n) will be called wrenches. 1.4.2 N u m e r i c a l r e p r e s e n t a t i o n
of Wrenches
Since as we already mentioned wrenches are dual to twists, if we choose for twists a six-dimensional column vector representation as
we can choose for wrenches a six-dimensional row vector representation. Using a dual basis for the wrenches, one thus obtains a vector representation of the wrenches:
w = (m :) where rn represents a torque and f a linear force. Thanks to the duality structure, the power may be expressed as: Power = W T = rrtw + f v C h a n g e s o f c o o r d i n a t e s for W r e n c h e s . As the wrenches belong to the dual space of twists, the change of coordinates for twists induces the adjoint change of wrenches. Since power is a scalar and as such independent of coordinate systems, we should have
W3T.3, 9 = W i T . ~,"" Hence in the numerical representation, the transformation of wrenches is given by the transposition of the adjoint mapping:
( W i ) T = AdTH~,( W J ) T It is important to note, as shown in Figure 1.16, t h a t if the m a p p i n g AdH~' m a p p e d twists from ~P~ to ~Pj, the transposed m a p s wrenches in the opposite direction: from ~Pj to ~ ! This is because wrenches are duals of twists and they are pulled back.
1.5 The
relation
between
Lie groups
and
Screw
theory
It is now possible to formally relate Lie groups theory [17] to the the theory of Screws [12]. This section reports an extension of the results first presented
in [71.
1.5 The relation between Lie groups and Screw theory
31
%
AdH~ se(3) se*(3)
~.~
se(3) ~'(3)
--'
r Fig. 1.16. The direction of the adjoint mappings
1.5.1 B i - i n v a r i a n t f o r m s o n s e ( 3 ) and reciprocity of twists It has been shown in [21] t h a t the space of bi-invariant, and therefore intrinsic, 2-forms defined on sei(3) is a linear combination of the hyperbolic metric ~ i j and the Killing form ~,~j. In the coordinates we used so far, their numerical representations are: 1
(o/00 aod
And a general bi-invariant metric is given by:
~ = h~) + kf~
h, k E lR.
Among all the possible metrics, there are two which have special properties and allow us to directly relate Lie groups to the theory of screws. If we consider the kernel of ~ , it is different t h a n the trivial zero element of sei(3) iff h = 0. A proportional element of the Killing form has therefore a first special property. Furthermore, a m o n g all the ~ s there is just one metric which is generated by an involutive map, which means t h a t an expression of its inverse is equal to the form itself and this is obtained when k = 0 and h = 2. These involutivity p r o p e r t y results are fundamental to relate Lie groups to screws and corresponds to the self-duality of lines. We indicate Y) = 2~ and J~ = - 8 8 These two special 2-forms are fundamental for w h a t follows. 1.5.2 I d e n t i f i c a t i o n o f twists and w r e n c h e s Using the involutive m a p Y) and the duality p r o d u c t on se(3), one m a y identify the twists with the wrenches. In the sequel we shall use this identification in order to identify b o t h twists and wrenches with screws.
32
1. Rigid Bodies and Motions
se,(3)....'---"~se~(3) Adh ~
l Ad~
se~(3)~seT(3) Fig. 1.17. The contraw~riant map
Therefore one m a y define tile following map, denoted by t3 # from twists T E se(3) to wrenches W = (:/'), as follows: (la,; T') = ~3(T, T ' )
VT' C se(3)
(1.32)
It is remarkable that. using this identification, one can identify the ~utjoint m~pping with its eontra-gradient map, in other words, the coordinate change of twists and wrenches (see Figure 1.17). l~lrthermore, as we can give a vector interpretation of a force as explained in Remark. 1.4.1, p.29. it is possible to give a screw interpretation of a wrench using ~3, as will be shown later. It is even possible to define a bracket on se~(3) by: [,,,,,w d := { ~ - ' w ~ , ~ - ~ , , , ]
u,,, w2 9 sea(n)
The relation between twists (and wrenches) and lines in p a is stated by the c.lassical Chasles (and Poinsot) theorem. For expressing these theorems, some subspaces and subsets of se,(3) need to be defined using the bi-invariant forms [13].
1.5.3 Decomposition of sei(3) D e f i n i t i o n 1.5.1 ( S e l f reciprocal sub set). We call self-reciprvcal subset the following subset of sei(3) : R := {t i c sei(3) s.t S~,3tita = 0}. D e f i n i t i o n 1.5.2 ( A x i a l s u b s p a c e ) . ing subspace of se,(3):
We call an axial subspace the follow-
a := {t i c sei(3) s.t. ~et,it*t~ = 0}. It is the biggest subspace whose numerical representation is invariant to changes of the origin of the c.oordinates system. D e f i n i t i o n 1.5.3 ( L i n e s s u b s e t ) .
subset of se~(3): L:--R-a
We call a lines subspace the following
1.5 The relation between Lie groups and Screw theory
33
Fig. 1.18. The relation of the sets in se(3).
Note that R and L are N O T subspaces, but a is. Furthermore, a c R. T h e o r e m 1.5.1 ( G e o m e t r i c a l i n t e r p r e t a t i o n o f L). A n y element (w r A w)T ~ L is characterized by the fact that it leaves a line of g invariant in the direction aw and furthermore this line passes through r. P r o o f i Using the coordinates we introduced previously, we know that the form of an element of L will be:
Since ~ ~ 0 due to the fact that L = R - a, we can consider in these coordinates the orthogonal complement w • of w. The fact that l E R results in the algebraic condition ~2Tv = 0
in these coordinates. This implies that v E w • and therefore there exist a unique r E ]~3 such that v = r A aJ. It is therefore possible to express ANY element of L in the following form:
where w r 0 and corresponds to a line as reported in Figure 1.2. Consider now the motion of C~ with respect to Ej. Take any fixed point p C Ei. Once we have chosen any orthonormal coordinate system !P~ for Ei and ~y for Ey, we can express the change of homogeneous coordinates from ~i to ~j with an homogeneous matrix H I E SE(3), as usual. If we indicate the homogeneous coordinates o f p in !Pi with P~ and in q~j with PY, we have:
Tp = Ti -J,J H~j P = T~PJ
pJ=/
(1.34)
where we have used the definition of twists reported in Table 1.1. Since the twist belongs to L we have:
(
34
1. Rigid Bodies and Motions
If t h e p o i n t p E ~:~ is t o be fixed n o t o n l y for E2 b u t also for ~:3, we m u s t have from Eq. (1.34):
+ r A w ,J = u , ~ + r A ~
0 = PJ
T h e p r e v i o u s c o n d i t i o n is satisfied if:
which is a line p,~ssing from r a n d d i r e c t e d a l o n g u iJ.
9
F r o m t h e p r e v i o u s t h e o r e m , we c a n c o n c l u d e t h a t a twist l E L t h e r e f o r e c o r r e s p o n d s to a r o t a t i o n a r o u n d t h i s line.
Remark 1.5.1 (Orientation of space). From w h a t we jlmt s t a t e d , it follows t h a t we c a n a s s o c i a t e a p u r e r o t a t i o n w i t h a line b e c a u s e it is t h e set w h i c h is left, i n v a r i a n t by a r o t a t i o n . N e v e r t h e l e s s , this set is left i n v a r i a n t for a n y r o t a t i o n a r o u n d t h a t line in b o t h p o s s i b l e d i r e c t i o n s a n d of a n y i n a g n i t u d e . W e have t h e r e f o r e a w a y to a s s o c i a t e a r o t a t i o n w i t h a w.'ctor w which gives t h e o r i e n t a t i o n of t h e line. Its m a g n i t u d e can t h e n be a s s o c i a t e d w i t h t h e a n g u l a r speed. N e v e r t h e l e s s , we still have two p o s s i b l e choices in o r i e n t i n g t h e i n v a r i a n t line. T h e s e two choices c o r r e s p o n d to t h e o r i e n t a t i o n of space. S u p p o s e t h a t you a r e in front of a m i r r o r a n d c o n s i d e r a r o t a t i o n a r o u n d a line which goes from o u r eyes to t h e m i r r o r . If we c o n s i d e r a clockwise r o t a t i o n a s s o c i a t e d w i t h a v e c t o r d i r e c t e d t o w a r d ttle m i r r o r , we have chosen a r i g h t h a n d e d space; if we a s s o c i a t e a c l o c k w i s e r o t a t i o n w i t h a v e c t o r c o m i n g from t h e m i r r o r t o w a r d us we have a l e f t - h a n d e d o r i e n t a t i o n . N o t i c e t h a t a m o t i o n t o w a r d t h e m i r r o r looked t h r o u g h t h e m i r r o r c o r r e s p o n d s to a m o t i o n t o w a r d us which shows t h a t a m i r r o r c h a n g e s tile o r i e n t a t i o n of space, a n d t h a t is why t h i s is called a reflection. T h i s c a n b e o b v i o u s l y a s s o c i a t e d w i t h t h e u s u a l c o n c e p t i o n of o r i e n t a t i o n : a s s o c i a t i n g to t h e z axis of a c o o r d i n a t e f r a m e t h e o r i e n t a t i o n of t h e s h o r t e s t r o t a t i o n a r o u n d z, b r i n g i n g x t o w a r d y. Theorem
1.5.2 (Geometrical
interpretation
o f a). Any element (0 V) T E
a leaves free vectors invariant. P r o o f . It is e a s y to see t h a t t h e p r e v i o u s t w i s t leaves all p o i n t s a t infinity ( P = (a, y, z, 0)) i n v a r i a n t a n d t h e r e f o r e also v e c t o r s l y i n g on t h e i m p r o p e r h y p e r p l a n e c o r r e s p o n d to free vectors. 9 F r o m t h e p r e v i o u s t h e o r e m , we c a n c o n c l u d e t h a t a t w i s t a E a c o r r e s p o n d s to a t r a n s l a t i o n p a r a l l e l to v. B a s e d on t h e s p e c i a l m e t r i c s .~ a n d ~ , we c a n define a n i n t r i n s i c s u r j e c t i v e , b u t n o t i n j e c t i v e o p e r a t i o n , which is c a l l e d polar map: p:sei(3)--+a
;
tiH~fl~,jt
i
1.5 The relation between Lie groups and Screw theory
35
N o t e t h a t we have i n v e r t e d ~ in o r d e r to get a p r o p e r t e n s o r m a p . It is now p o s s i b l e to e x p r e s s C h a s l e s ' t h e o r e m as follows: Theorem 1.5.3 (Chasles). For any t E s e i ( 3 ) , there exists a l E L and two constants ~z, ~a E ll~ such that: t = oil + aap(l)
(1.35)
I n particular, w h e n t E se2(3) -- a, l is unique. l ~ l r t h e r m o r e , as a c o n s e q u e n c e of T h e o r e m 1.5.3, we can a l w a y s w r i t e a twist as: rA~t
+aa
(0)
(1.36)
w h e r e 5 is a u n i t vector. It is now p o s s i b l e to u n d e r s t a n d b e t t e r w h a t is said in R e m a r k . 1.3.2, p.24. F r o m t h e d e c o m p o s i t i o n of Eq. (1.36), we can see t h a t if we t a k e a general t w i s t T = (Wv), t h e v e l o c i t y v can be i n t e r p r e t e d as a s u m of two c o m p o n e n t s which give t h e v e l o c i t y of a v i r t u a l p o i n t t h a t is p a s s i n g t h r o u g h t h e (:()ordinate s y s t e m , which is used to e x p r e s s t h e twist. T i m following t h e o r e m is also very i m p o r t a n t b e c a u s e it allows us to e x p r e s s a p u r e t r a n s l a t i o n as t h e s u m of two r o t a t i o n s . Theorem 1.5.4 (Axial decomposition). 11,12 E L such that a = li - lu.
For any a E a, there exist
As a d i r e c t c o n s e q u e n c e of T h e o r e m 1.5.4, we c a n e x p r e s s a n y e l e m e n t a E a as:
-- r2)
A
A
"
O n e of t h e c o n c l u s i o n s we can d r a w from w h a t has b e e n said so far is t h a t : sez(3) = s p a n { L } a n d t h e r e f o r e we c a n get a n y t w i s t as a linear c o m b i n a t i o n of e l e m e n t s of L which is a k n o w n r e s u l t in t h e c o n t e x t of screw theory. It is also p o s s i b l e to a n a l y s e t h e c o m m u t a t i v i t y of p u r e r o t a t i o n s a n d t r a n s l a t i o n s using t h e Lie a l g e b r a s t r u c t u r e of se(3). T h i s c a n b c also used to c h a r a c t e r i z e a screw m o t i o n . Theorem 1.5.5 (Commutativity o f R o t a t i o n s a n d T r a n s l a t i o n s ) . The sequence o f a pure translation Ta and a pure rotation TL iS c o m m u t a t i v e i f f the rotation is in the s a m e direction as the translation.
36
1. Rigid Bodies and Motions
P r o o f . It is k n o w n in Lie g r o u p t h e o r y t h a t the c o m m u t a t i v i t y can be tested using the Lie algebra c o m m u t a t o r . Consider a generic pure r o t a t i o n as a twist in L:
(o
rAw
0
a n d a pure t r a n s l a t i o n as a twist belonging to a:
T h e order of the two motions is interchangeable iff their c o m m u t a t o r is zero a n d therefore iff [TL, Ta] : T L T a - TaTL = 0
s u b s t i t u t i n g we get:
(o o (~
-- (: ~
T h e previous is clearly equal to zero iff &v = w A v = 0, which is the case for nonzero vectors iff v and aJ are oriented in t h e s a m e direction.
1.5.4 D e c o m p o s i t i o n of
se*(3)
T h e decomposition which has b e e n shown for sei (3) c a n be directly m a p p e d to se*(3) defining R* = ~ # ( R ) , a* = ~ # ( a ) a n d L* = ~ # ( L ) , where ~)# has b e e n defined in Eq. (1.32). T h e Poinsot t h e o r e m is t h e n expressed: Theorem
1 . 5 . 6 ( P o i n s o t ) . F o r a n y w c se*(3), there exist a l* e L* and t w o c o n s t a n t s az, c~a E ]R s u c h that: w = all* -t- sap*(/*)
(1.37)
I n particular, w h e n w E se*(3) - a*, l* is u n i q u e .
A pure m o m e n t m a y be o b t a i n e d as the s u m of two forces. Theorem
1.5.7 (Dual
axial decomposition).
F o r a n y a* E a*, there
exist l~, l~ E R* s u c h t h a t a* = l~ - l~.
O n e of the conclusions we can d r a w from w h a t has b e e n said so far is t h a t : se* (3) ----span{L* }
1.5 The relation betwe.cn Lie groups and Screw theory 1.5.5 The space of screw
37
vectors
We have seen t h a t any d e m e n t of se(3) belonging to the lines subset L h ~ a line ~ s o c i a t e d with it, n a m e l y the line whi(:h stays invariant during this rigid rotation. To do this bijectively, we need to associate with a line a direction and a m a g n i t u d e which would characterize tile a n g u l a r velocity of the corresponding twist belonging to L. In this way, we loose the hoinogeneous character of lines, and obtain the vectors E L (or L*). These vectors are called bound line vectors (or 7"otors). Conversely, lines (not at infinity) are m e m b e r s of the projectivization li of L. Considering the whole set of projective lines, including lines at infinity, and leaving their homogeneous character, the set R of self-reciprocal twists is obtained. T h e vectors of R arc called line vectors [13]. T h o s e vectors t h a t correspond to lines at infinity, m e m b e r of a, are then called fi'ee line vectors [13] (or also free vectors). Conversely, projective lines are Inembers of the projeetivization of R. Neither L nor R are vcctor spaces, but L sp,ms a 6-dimensional vector space t h a t corresponds to se(3). We can now define the vector space of screws 1 . 5 . 4 ( S c r e w v e c t o r s ) . We define the following 6-dimensional vector space the vector space of screws in ~i:
Definition
s, v := {(t,w)
9
•
: ,,, = a t }
Not('. t h a t the previous is indeed a vector space because it has inherit,ed the vector space s t r u c t u r e of se, (3) a n d / o r se~ (3). T h e previous space is also called the space of motors. Geome.trieal screws, defined by a line and a pitch, arc m e m b e r s of the projectivization of S v [22], which therefore results in a 5-dimensional space (see Sect. 1.1). Definition 1.5.5 (Screws).
We call the space of screws of the space s the
following quotient space:
s,-
-o
where with ~ we indicate the following similitude relation:
sl ~ s2 ** 3 a E N r O ; s l = a s 2 11 With projectivization is intended the process of considering elements a, b E L equivalent iff there exist a scalar c~ 7~ 0 such that a = c~b.
38
1. Rigid Bodies and Motions
1.5.6 Operations
on screw vectors
Operations on twists or on wrenches, or between wrenches a n d twists, can now be m a p p e d to operations on screws. Given two screws sl and s2 associated with two elements al(tl,Dtl), a2(t2,-~t2) E S V, their reciprocal product is defined as: sl (~)s2 := tT~t2 T h e reciprocal p r o d u c t corresponds to the duality p r o d u c t of twists a n d wrenches. Let sl and s2 associated with tl E se(3) a n d w2 E se(3)* respectively, sl C) s2 := (tl, w2) W h e n sl (~)s2 : 0, the two screws are said to be reciprocal. Reciprocity of screws is used to express non-working condition. Line vectors are selfreciprocal; this corresponds to the self-duality of lines. Let us consider the scalar tlT~t2. T h e c o r r e s p o n d i n g screw o p e r a t i o n is called a perpendicular product a n d it is indicated with:
slOs2 := tT~t2 T h e vector p r o d u c t called associated Lie and twists, we
space se(3) is a Lie algebra a n d therefore it has an internal a c o m m u t a t o r which corresponds to the Lie brackets of the g r o u p S E ( 3 ) . W i t h the previous association between screws can define the screw vector product as:
S l A S2 := [tl,t2]
Using the usual coordinates we have: 81 A 82 : ~
Vl
'
132
031 /k 132 ~- 0J 2 A Y 1
As already mentioned, we can associate with a screw s a screw c o r r e s p o n d i n g to a line at infinity which is called its polar and will be indicated with s': s' = ~-lJ~ts A s u m m a r y of these relations is r e p o r t e d in Table 1.2. As screws m a y be d e c o m p o s e d as sum of b o u n d and free line vectors; o p e r a t i o n s on screws m a y be reduced to operations on line vectors. G e o m e t r i c distances a n d relations between lines m a y then be used very efficiently to p e r f o r m calculation [13] [23]. In particular the reciprocity of line vectors is equivalent to the incidence of their lines (axes).
1.6 Conclusions
39
T a b l e 1.2. The relation between Lie groups and Screw operations
1.6
Name
Screw
Lie Group
Rec. product
81 (~ 82
tT~t2, (h, w2}
Perp. product Screw vect. prod. Polar
81~82
t'( ~ t 2
81 A 82
[tl, t2]
s' = p(s)
s I _-- 2)-1As
Conclusions
This chapter has shown t h a t behind the use of Lie groups for rigid b o d y motions, there are implicit assumptions that, even if more or less "natural", are not intrinsic and just depend on a choice of relative reference between spaces (see Remark. 1.2.2, p.14). It is always i m p o r t a n t to pinpoint those assumptions which are not intrinsic: any hypothesis which is not intrinsic can in fact be considered a modeling hypothesis and should be made explicit as such. Twists have been analyzed in detail and their mappings and relations have been shown. T h e intrinsic mappings using right translations are the ones which give the motion of a space with respect to an observer space directly and have been denoted with only one subscript and one superscript: i or tj. A complete formal relation between the Lie group approach and Screw theory has then been presented. This one-to-one relation between the Lie group approach and the screw approach is due to the existence of two biinvariant forms known as the Killing form and the Hyperbolic or Klijn form. T h e space of screw is equivalent in this way to the projectivization of the Lie algebra of rigid b o d y motions.
2. K i n e m a t i c s of Rigid M e c h a n i s m s
The word kinenmtics comes from the Greek tcvuepc~ (kinema) which means motion. This science studies the description of motion as such without considering its cause. A lot of work has been done in this field [10, 11, 13, 1]. The. study of kinematics in the framework of bond graphs has been also investigated [24, 1]. The purpose of this chapter is to give a reasonably complete framework of concepts needed in the kinematics of rigid mechanisms. In the previous chapter we treated the general description of rigid bodies with respect to each other. In order to describe the kinematics of a rigid robot or a generic rigid mechanism, we need to treat the connection between bodies. ]'his connection is characterized by the kinematic pairs or joints. So far, we have only described impenetrability constraints (see Def. 1.2.6) which are meaningflfi for the description of collisions/contacts between objects. Kinematic pairs, which will be the subject of Sect. 2.1, are. additional constraints representing the connections between bodies. In Sect. 2.2, we will therefore talk about the description of different kinematic structures which will be classified according to their topology. For this purpose, concepts of graph theory will be used. The necessary background is reported in Sect. A.2. For an extensive treatment Oil graph and matroid theory, we refer to [25].
2.1 Kinematic pairs Intnitively, one would define a kinematic pair (K.P.) as an entity which physically constraints tile relative motion of two objects. It is an ideal entity which completely and rigidly opposes certain relative motions between two objects. We can have two extreine cases of a K.P. : one which does not allow any relative motion between the two bodies to which it is connected, and one which does allow motion in any direction. The first one will be called a rigid kinematic pair and the second one a degenerate kinematic pair. These two case.s are clearly of no particular interest since we can consider the two bodies connected to a rigid kinematic pair as one, and a degenerate K.P. (:an be ignore.d. In all other eases: we have allowed and forbidden relative motions. Actuators, springs, dampers or any other nodic element can be used to create h)rces which influence the motion along the allowed directions as it will be seen in Chapter 3.
42
2. Kinematics of Rigid Mechanisms
It is important to realize that a K.P. is an ideal entity and that in reality we could always model the connection between two bodies by means of anisotropic 1elastic-dissipative elements which would have high stiffness along the forbidden directions. In this chapter we analyze the kinematics of a mechanism and do not pay any attention to the consequences of forces applied to it. We could de^scribe a K.P. as the set of allowed relative positions of two objects. Identifying one of the bodies Bi with its Euclidian space t~i and another one Bj with its Euclidian space ~'~, we could then define a kinematic pair as a subset of SE~ (n). This choice only uses the structure of a set and as such it is not very powerful for analysis purpose~s. Fhrthermore, 1. certain kinds of constraints which are called nonholonomic cannot be treated in this way and therefore another approach follows, 2. we only consider scleronomic "2 K.P. which means entities which are not time dependent. The starting point we choose is a differential one: we define a K.P. by associating the possible relative moving directions the K.P. allows to any relative position of the two bodies. Under certain conditions, this kind of description corresponds to a distribution defined on the manihfld of isometries between the two bodies representing the relative positions. From now on we talk either about relative motion of Euclidian spaces or about bodies: when we consider a body B~ we leave implicit that it has a Euclidian space E~ associated to it. D e f i n i t i o n 2.1.1 ( K i n e m a t i c P a i r ) . Given two bodies B~ and Bj, a kine-
matic pair between Bi and B 3 is a set of vector fields ~ := { v l , v 2 , . . . , Vp} on the manifold SE~ (n). For h~ e SE~ (n), the number of linear independent
vectors v,(h{),...
T SE (n) is caned degrees of eedom (d.or
of the pair in h~. Each of the vector fields gives a possible relative moving direction for tim two bodies which we e• as twists for the relative motion. We suppose that all the possible relative moving directions are given by a positive combination of the vector fields, as it is stated in the next assumption: We assume that a kinematic pair ~ between two bodies Bi and Bj with relative position h j E SE~(n) allows a relative motion in the direction v c Th~' SE~(n) iff there exist positive real numbers Ok such that v -- ~ z (~zvl with vl c ~ .
Remark 2.1.1. Note that, the previous definition allows that we could have a kinematic pair permitting a motion in a direction v E ThJ" SE~ (n) and N O T 1 Isotropic comes from the Greek isos (equal) and tropos (rotation) which means direction independent, anisotropic means direction dependent. 2 Scleronomic comes from the Greek and means rigid. They are given an attribute of "rigid" because the configuration manifold defined later that describes them is not time dependent and therefore the configuration manifold is a "rigid surface".
2.1 Kinematic pairs
43
Fig. 2.1. An holonomic joint in a unilateral position.
Fig. 2.2. A two dimensional lower pair in a bilateral position.
Fig. 2.3. A position dependent kinematic pair.
Fig. 2.4. A nonholonomic kinematic pair.
in the opposite direction - v : the K.P. cannot be characterized in general by a subspace. We call such a configuration h j unilateral and bilateral if allowing v implies allowing - v . We can graphically represent the possible moving directions as a vectorial convex hull. In general, a unilateral constraint corresponds to the contact between two bodies: penetration of two objects is not possible. Such a unilateral kinematic pair could therefore model the situation reported in Def. 1.2.6. An example of a K.P. in a unilateral configuration is shown in Figure 2.1: the moving ball is touching the socket and cannot move further in that direction. The same joint in a bilateral configuration is reported in Figure 2.2: the ball can move in any direction. Almost all the K.P.s encountered in practice will be bilateral in an open subset O C SEJ~(n) and unilateral in the b o u n d a r y points of O which will be called end-stops. This is what happens for the joint shown in Figure 2.1 and Figure 2.2. For a bilateral configuration we can associate a complete subspace of Th~S E j (n) to a point h~ E S E j (n), instead of a set of vectors in ThJ S E j (n) corresponding to a convex hull. In this case, we can use a distribution which associates to a point a subspace of the tangent space of SE~ (n) in that point.
44
2. Kinematics of Rigid Mechanisms
Definition 2.1.2 ( R e g u l a r K . P . ) . We say that a kinematic pair k~ is regular on O, an open set of S E j (n), iff in each point of O, k j is bilateral and the corresponding distribution Ak~ is constant dimensional. If we have a regular kinematic pair k j on O, then we can analyse involutivity of the corresponding defining distribution Ak~.
Definition 2.1.3 ( H o l o n o m i c and N o n h o l o n o m i c K . P . ) . We say that a regular kinematic pair on 0 is holonomic iff its corresponding distribution is involutive and otherwise we say that the regular K.P. is nonholonomic. The K.P.s of Figure 2.1, Figure 2.2 and Figure 2.3 are holonomic, but the one of Figure 2.4 is not. This because the coin of Figure 2.4 can rotate around the axis which is orthogonal to the base plane and passes through the contact point and rotate around its s y m m e t r y axis, but it cannot slide sidewise; nevertheless, any position can be reached by properly using these two degrees of freedom. T h e o r e m 2.1.1 ( K i n e m a t i c P a i r C o n f i g u r a t i o n ) . If there is a regular kinematic pair k3i on 0 C SE~(n), then a unique connected sub-manifold QJ C 0 passing through a point in 0 exists that corresponds to the integral of the involutive closure of the distribution Ak~ associated to k j. P r o o f . This is a direct consequence of Frobenius theorem. See e.g. [16, 26]. m Furthermore, if the involutive closure of Ak~ is of constant dimension k, this connected sub-manifold will be of dimension k. The largest sub-manifold of SE~ (n) that satisfies the previous theorem and passes through the point h~ corresponding to the current relative position, corresponds to the relative configuration manifold. We denote it as Q~(k~) or sometimes as QJ. For construction, the current relative position h~ (0) at the current time instant J If there is a degenerate kinematic pair as t = 0 should belong to QiJ (ki). defined at the beginning of this section, we have ~iJ (ki)J ----SE/j (n).
Remark 2.1.2. If a K.P. is holonomic, the d.o.f. (dimension of the distribution Ak~) is the same as the dimension of the configuration manifold. In the nonholonomic case, the d.o.f, is LESS t h a n the dimension of the configuration manifold. Consider for example the pair reported in Figure 2.4: the d.o.f, is two, but the configuration manifold is four-dimensional. This is indeed a characterizing feature of nonholonomic pairs. 2.1.1 K i n e m a t i c pairs actuation A mechanism can be actuated by imposing wrenches between the bodies of which it is composed. Physically, this is done by putting actuators such as
2.1 Kinematic pairs
45
electrical motors or hydraulic pistons between pairs of links. T h e relative motion of these two links can be constrained by a. kinematic pair. T h e wrenches generated by the actuators work, in general, only in certain directions. We could have actuators generating wrenches not in all the directions allowed by the kinematic pair. l)epending on how m a n y directions we can actuate, we (:an cla.~sify the kinematic pair. In order to do this we need to set up a proper formalism which will here be treated. We can associate to a kinelnatic pair k j a co-distribution z ~ defined on
SEJ(n)
which represents the possible relative forces t h a t we can apply between bodies i and j, by means of actuation. To each relative configuration h~ c ~ , this co-distribution associates a subspace of E:~, This sub-
SEa(n).
space can then be m a p p e d to se~ (n) and se~ (n) bv the techniques shown in Chapter 1. In general these two subspaces depend on tile relative configuration h~. If we coiLsider a regular K.P. (see Def. 2.1.2), we can decompose z~f in the following way:
where ~k~ is the m a x i m m n co-distribution contained in z~_ such that ~k~ Ak,~ = 0, Ak~ is a distribution defining the regular K.P. (see Def. 2.1.2) and / ~
is a co-distritmtion representing part of the applied forces. ^.
The co-distribution Ak~ represents those forces which m'e counteracted by the K.P. and therefore have no effect on the relative position of the pair. If, for example, we consider an ideal kinematic pair allowing only one relative rotation between two bodies, the force applied by any a c t u a t o r trying to translate the two bodies will not have any effect. These are the forces represented by the co-distrilmtion A~*~. On the other hand, any vector t h a t k, belongs to / ~ and is different than zero can correspond to an exchange of energy between the bodies connected by the pair and the element generating the force. This implies an influence on the relative motion. These forces can exchange energy because, by eoilstruetion, if the K.P. is not rigid and has degrees of freedom, there is at least one allowed motion which is not in the kernel of Ak,~-
We can now consider the following distributiona: :=
-
n
The distribution Ak~ is by construction a sub-distribution of Ak~ and represents those directions which can be actuated to effect the motion. We can then classify kinematic pairs into three types according to their actuation: :~ Note that A ~ is NOT unique.
46
2. Kinematics of Rigid Mechanisms
9 z~k~ = 0: this means there are no forces t h a t can be actuated such t h a t they have effect on the relative position of the kinematic pair. Such a kinematic pair is said to be non actuated or passive. 9 z~k~' C Ak~ : where the subset relation is strict and excludes the coincidence of the two distributions. This means t h a t only certain directions can be actuated at the kinematic pair. Such a kinematic pair is said to be partially
actuated. 9 Ak~ ----Ak~ : this means that a force in any direction can be actuated at the kinematic pair. Such a kinematic pair is said to be fully actuated. If the distribution z~kj is integrable, it is possible to define an actuation space that corresponds to the configuration of the actuators.
Remark 2.1.3. It is often common in robotics to consider the configuration space corresponding to the actuation space. In a more general setting, this is not correct since we can have redundantly actuated systems. Suppose t h a t Ak~ -- Z~k~ is involutive. We can first consider tile sub-manifolds of Q~i consisting of the integral leaves of Ak~ -- z~k~, and then we can define an equivalent relation on ~ . D e f i n i t i o n 2.1.4. We say that p,q 9 Q~ are equivalent and denote it by p ",~ q, if they belong to the same integral leaf of Ak~" - z~k~' . It is now possible to define the actuation space for the considered case. D e f i n i t i o n 2.1.5 ( K i n e m a t i c
Pair
Actuation
Space).
The quotient
manifold
is called the actuation space for an holonomic kinematic pair for which Ak~ -Ak~ is involutive, Remark 2.1. 4. In the very common case of a one-dimensional and fully actuated K.P. we have ,4~ = Q~i, as in normal cases.
2.1.2 Position-independent Kinematic pairs: lower p a i r s . Let us now consider a special case of bilateral kinematic pairs which are called lower pairs. These kinematic pairs have the feature of being somehow independent from the current relative position h~ of the two bodies. In C h a p t e r 1, we have seen that we can intrinsically and uniquely associate to each v 9 Th~ SE~ (n) two vectors t~. and ~ belonging respectively to the Lie algebras sei(n) and sej(n). These Lie algebras are vector spaces and as such they are independent of the relative current position h~ of the two bodies. We
2.1 Kinematic pairs
47
can therefore consider those bilateral regular kinematic pairs whose defining free directions mapped to se~ (n) or to sej in) are constant subspaces of the two Lie algebras for the varying configuration h~, as is explained in the following definition: D e f i n i t i o n 2.1.6 ( L o w e r P a i r s ) . A holonomic, regular kinematic pair k~
on 0 c S E j (n) is said to be a lower pair iff Vh~ e O, the vector subspace
7(Jh~lake"(h~)) C sej (n) is constant for variation of h~ allowed by Ak~.
An important result which justifies the previous definition is that if an involutive distribution Ak~ on SE~ (n) maps to a constant subspace of 8ej (n), then the inverse distribution Ak~ on SEjin ) (see Remark. 1.3.1, p.16) also maps to a constant equMly dimensional subspace of seiin). This is very important since it means that lower pairs are intrinsic entities. T h e o r e m 2.1.2. If the map of an involutive distribution Ak~ on SE~(n)
J of Figure 1.9 is a constant to sej (n) by means of the intrinsic mapping 7rh~ subspace of sej (n) for all configurations h~ e SE~ (n) belonging to an integral leaf of Ak~ , then the mapping of its inverse Ak} E SEj(n) to sei(n) through 7rih} is also a constant subspace of sei(n) of the same dimension. P r o o f . For simplicity let us consider two Cartesian coordinates ~i and ~j for the Euclidian spaces Ci and Cj respectively. It has been shown in Sect. 1.2.1 that an element of h~ 9 SEa(n) can be represented by a matrix HI 9 SE(n). At the same time, elements corresponding to the vectors of se~ (n) or sej (n) will correspond to matrices of the form reported in Theorem 1.3.7. For consistency the notation H~ = (H~) -1 is used. By hypothesis, the involutive distribution Ak~ maps to a constant subspace of sej in). Suppose that this subspace is of dimension k, where k corresponds to the degrees of freedom of the kinematic pair represented by the lower pair. T h e n there are k constant matrices At with 1 = 1 , . . . , k representing a basis of the constant subspace of sej (n). Any possible moving direction can therefore be expressed as a linear combination of these matrices. It was shown in Eq. (1.26) that the adjoint mapping a = Adhb is represented in matrix form by A = H B H -1. Using this, we can consider ~z := -H~AgH~ corresponding to the elements m a p p e d by -Adh} to sei(n) in the following way:
t} = -Adh}t ~ Since by assumption Ai is a base of the subspace and refers to the matrix representation of twists, for any allowed motion vj C sej (n) there will be k scalars Ap p = 1 , . . . , k such that the matrix representation Tj of vj can be expressed as:
48
2. Kinematics of Rigid Mechanisms k "j Tj = H~ H~i = E
ApAp
p=l
which implies that:
p=l
Consider now the time derivative of ~ht for any of the allowed motions corresponding to the distribution. Since the At are by assumption constant, we have:
~t
= - H ~"Ai t H :
j
-
~ "J = E H~AtH:
i j) = At (H~ApAtH~ - H'jA~ApH~
p=l
p:l
where [,] is the m a t r i x c o m m u t a t o r (see Sect. A.6) representing the Lie bracket of the Lie algebra sej (n). Since the considered distribution is involutive, the constant subspace of sej (n) representing the possible directions is closed under the operation of Lie brackets and therefore some structural constants cq,. "~ exist such that:
p:l
\m:l
p:l m:l k
Z xaA H (2.2) m:l m where AG := ~ p k= l ApCpz"
Eventually, since ~hm = _//~iiA,~H~, J we have:
m~l
which means t h a t the subspace of sei(n) spanned by the vectors corresponding to the ~z l = 1 , . . . , k is invariant and therefore constant. ..
Remark 2.1.5. It is i m p o r t a n t to notice that, due to the hypothesis on involutivity, this result only holds for holonomic kinematic pairs.
2.1 Kinematic pairs
49
The latter result is related very closely to a well known result of Lie group theory which is also reported by [21], which says that the configuration manifold of a lower pair, after certain choices of reference, corresponds to a a subgroup of SE(3). The followed approach is considered more intrinsic from a conceptual point of view since it does not assume any reference positions (see Remark. 1.2.2, p.14). D e c o m p o s i t i o n o f a l g e b r a s i n d u c e d b y a l o w e r p a i r . From the previous section, we conclude first that a lower pair is characterized by a constant subspace in sei(n) and sej(n). These two subspaces are called the allowed twists for the pair, in space i and in space j respectively, and are indicated with ~A and ,yjA. We can then consider the complements of these subspaces. It is important to note that since there is not an intrinsic 4 positive definite metric defined on sei(n) [21], we cannot talk about orthonormal complements and therefore complements are not unique. A proper complement subspace of the allowed twists is called forbidden twists subspace and is denoted by T~F3 and ~ 3F~ - By definition the complements should be such t h a t the two Lie algebras are the direct sum (see Def. A.5.10) of the free and forbidden twists: se~(n) = zA~,~9 ZF~,~ , sej(n) = 7j~ 9 Z~-..
(2.3)
The subspaces T~A or T_3A characterize the relative motion. By choosing any 3 ,~ base for T4~,j or TjA, we can easily express the relative velocities of the two bodies numerically. If we consider the dual algebras se* (n) and se~ (n), we can intrinsically define the subspace )4; C. of se* (n) dual to T A" w
:=
c
= 0
c
where (,) denotes the duality product. We can do the same to define w c i . The subspace W C. is called set of constraint wrenches. We can define a actuation subspace WAy as a possible complement of the constraint wrenches such that:
se~(n) = W2d | W C , se;(n) = W~,i | W~,i.
(2.4)
Once again the complements wAy and wAi are N O T unique and represent all the wrenches we can use to create relative motion. A base of the actuation wrenches subspace can be used to define controlling inputs. We can really first choose the complements I/VAj and wAi and then take their unique duals complements (or perp) to define T F and ~ F E x p o n e n t i a l c o o r d i n a t e s f o r a l o w e r p a i r . We have already seen in Theorem 2.1.1 that for a general holonomic kinematic pair k j between body i 4 The only two intrinsic 2-covariant tensors are the Killing form which is singular and the hyperbolic metric which is not singular but also not positive definite.
50
2. Kinematics of Rigid Mechanisms
and b o d y j, it is possible to define a configuration sub-manifold QJi c SE~ (n). If we are dealing with a lower pair, it is possible to find a very convenient chart for this sub-manifold around any point r{ E QJ. This chart is obtained by means of the exponential m a p from a Lie sub-algebra to its Lie sub-group. To understand this, consider the point r j E Q{ around which we want to have a local chart. We can then define:
Qj := (Rr~)-IQ~ where R ~ is the hybrid right translation as defined in Def. 1.2.7. By means of this position, the point r iJ will be m a p p e d to the identity of the Lie group SEj (n). Furthermore, it is well known in literature [21] that, for a lower pair, Qj is a subgroup of SEj(n). Let us now consider a base of the constant, k dimensional subspace TjA and indicate these base vectors with r r r J. We can then define the exponential m a p p i n g around ri. D e f i n i t i o n 2.1.7. Given a lower pair k j with configuration sub-manifold
J J we call exponential mapping in j the Q~J(k~J) and any point r ij c Q~(ki), following:
j ~k -~ Q~(k~) j j ; ( x l , . . . , x k) H R ~ ( ekEi ,t:)l x , ,
e~ :
where the exponential indicates the group exponential from the Lie sub-algebra TjA to the Lie sub-group Qj. Remark 2.1.6. It is possible to see t h a t the previous m a p p i n g is surjective on any compact neighborhood of r j. It is in general N O T injective due to the topology of SEj (n). If we consider the biggest subset Qi - j (ri) J C QiJ (ks) J for which the exponential -j j m a p p i n g around r Ji becomes injective on Qi (ri) then we can define on this subset a chart around r j which we call the logarithmic chart:
lob(r{):
- j j -~ IRk : q,j H (e,) j -1 (q,). j Q,(r,)
Using these coordinates, we can arrive to very convenient m a t r i x forms for the kinematics. A nice t r e a t m e n t which uses coordinates can be found in [10].
2.2 Mechanisms Topology In this section, we analyze general mechanisms. This allows us to define and calculate degrees of freedom and minimal configuration spaces. We use concepts of graph theory in our analysis. [25] reviews graph and m a t r o i d theory
2.2 Mechanisms Topology
51
excellently. A s u m m a r y of the needed concepts can be found in Sect. A.2. We can now give a formal definition of a pure mechanism. A pure mechanism describes how bodies are interconnected by means of kinematic pairs. Other elements like springs or dampers, will be introduced later.
We call a pure rigid mechanism a pair of the form (Sm(n), K ) , where Sin(n) is a Euclidian system and K is a set of kinematic pairs defined on elements of the Euclidian system
D e f i n i t i o n 2.2.1 ( P u r e R i g i d M e c h a n i s m ) .
Sin(n).
We represent a pure mechanism with an oriented graph in which its vertices correspond to elements in Sm(n) and each edge corresponds to an element of K whose adjacent vertices correspond to the elements of Sin(n) on which the kinematic pair is defined. The orientation of an edge defines the reference chosen for the kinematic pair. For example, if we consider the kinematic pair k j connecting gi to Ej and we use as a configuration space QJ for this pair, we denote it in the graph with an arrow from i to j. This also implies t h a t when i Nevertheless, we describe the twist of the pair, we consider t~ and N O T tj. it is always possible to invert the direction of the edge. In this case we have the configuration Q~. and the twist tj = -Adh~ t~ with h~ E Q}. Suppose t h a t a real b o d y (Bi ~ ~) corresponds to each element of Sin(n) and t h a t there are neither fixed nor degenerate kinematic pairs in the set K . By analyzing the constructed graph, we can classify the mechanism and find generalized coordinates. We can now give the following definition:
Given a mechanism with corresponding graph G, a link (or body) can be classified on the basis of the degree of the corresponding vertex v in G (see Sect. A.2): D e f i n i t i o n 2.2.2 ( L i n k s t y p e s ) .
9 deg v = 1 The link will be called an extremity. 9 deg v = 2 The link will be called a connecting link. 9 deg v > 2 The link will be called a forking link. The base or the end effector of a robotic linkage are therefore called extremities. All the links between the extremities of a kinematic linkage are n a m e d connecting links. An example of a forking link can be the p a h n of a robotic hand to which more t h a n one finger is attached. 2.2.1 K i n e m a t i c
pairs and bond graphs
In this work, bond graphs are used extensively as a power consistent tool which can represent physical interconnection of elements. Consider two bodies moving with respect to each other. Graphically, we can represent such a situation as in Figure 2.5 or Figure 2.6. The difference in the orientation represents a difference in the direction of the chosen mapping: in Figure 2.5, Q~ has been used as a configuration of the relative position and t~ as a twist for the relative motion. On the other hand, in Figure 2.6,
52
2. Kinematics of Rigid Mechanisms
Fig. 2.5. Graph of a kinematic pair
k~.
Fig. 2.6. Graph of a kinematic pair
Q} has been used as a configuration of the relative position and t} as a twist for the relative motion. In order to give an equivalent representation of the relative motion in bond graphs, we must consider a few i m p o r t a n t points: 1. In bond graphs, the so called l-junctions (see Sect. B.8) represent a velocity. A velocity is a quantity which is defined between two objects: it does not make any sense to say t h a t an object has a certain velocity if it is not at least implicit respective to which other object this velocity is referenced. This concept typically characterizes those variables which are usually called across variables in network theory. 2. Bond graph junctions can be considered as operating on elements belonging to a vector space. The flows of all the bonds attached to a 0 junction should be "summable" in a vector sense and the efforts should be equal in order to express the constraints of the junction. Dually, the efforts of all the bonds attached to a l-junction should be again "summable" and the flows equal. It can be seen t h a t this characterizes a vector space structure with its dual for the bonds. 3. All the efforts and flows of the bonds directly connected to junctions of a simple junction structure only composed of 1 and 0 junctions and bonds with no transformers should be elements belonging to the same vector space (flows) and to its dual (efforts) respectively. In our case, the vector spaces used are vector algebras of the Euclidian spaces in the Euclidian system. This approach clearly resembles t h a t of the screwvector bond graphs [24, 27]. From the previous considerations, 1. implies t h a t we need to choose a unique reference space Ek when interconneetions are represented by a simple junction structure, and 2. and 3. imply t h a t in a simple junction structure, the vector space sek(n) corresponding to the Lie algebra of the reference Euclidian space is used to algebraically support the 0-junctions operation and t h a t the dual space se*k (n) is the vector space where operations on efforts needed by 1-junctions are algebraically executed. This means, for example, t h a t if the bonds attached to a 0-junction represent efforts belonging to se*k (n) and flows belonging to the dual sek (n), the addition operation of the vector space sek(n) is used to express the junction constraint which requires t h a t the algebraic vector sum of the flows of the bonds be equal to 0.
2.2 Mechanisms Topology
Fig. 2.7. Bond graphs of a relative motion for k~.
53
Fig. 2.8. Bond graphs of a relative motion for k}.
As a consequence of the previous considerations, by using Eq. (1.30), we can give two representations of the relative motion of two bodies in bond graph terms. These representations are reported in Figure 2.7 and Figure 2.8 for the orientations of Figure 2.5 and Figure 2.6, respectively. In these representations, the i-junctions on the top of each of the two possibilities represent the twists of body i and j with respect to any other reference b o d y k. The 1junction on the bottom, on the other hand, represents the relative motion of j with respect to i or the other way around. In Figure 2.8 (resp.Figure 2.7), the M W F separates simple junction structures that use the vector space structure of sek (n) and its dual from simple junction structures that use the vector space structure of se~(n) (resp.sej (n)). The top 1-junctions of each representation will be used to interconnect a complex system, whereas the b o t t o m 1-junction will be used to connect elements attaching the two bodies i and j like springs, dampers or actuators, as will be seen in the following chapter. Note that if j (respectively. i) is chosen as the reference space, k = j (respectively k = i), we have t~ = tjk = 0 (respectively t~ = t~ = 0). This could be represented by a zero flow source on the 1-junction representing tjk (respectively t~) in Figure 2.7 and Figure 2.8. By applying bond graphs simplification we obtain only two i-junctions connected by the M~l'l~'. In the figures, the bonds are grayed after the notation of [24, 27].
54
2. Kinematics of Rigid Mechanisms
Fig. 2.9. Representation of a total kinematic pair k~. A representation of a complete kinematic pair corresponding to the orientation of Figure 2.7(b) is reported in Figure 2.9. The vertical line indicates the algebra decomposition of sej (n) in the allowed and forbidden directions. The top-left horizontal bonds represent the forbidden motion subspace of sej (n) and the bottom-left represents the allowed one. In the case of a lower pair, this decomposition is reported in Eq. (2.3) and in Eq. (2.4) for its dual and can be chosen constant by choosing constant complements. In this case, the power variables belonging to the bonds on the top-left of the figure belong to TjF x W Je~ and the bonds on the bottom-left belong to TjA • ~VA J~ 9 The power flowing into the first bond is always equal to zero because the twists are forced to zero. The power flowing into the bond characterized by Tj~ x wA3,~will be equal to the power flowing through the M T F . Note that the bonds on the left side of the vertical line are N O T grayed indicating t h a t the coordinate free decomposition is not intrinsic. This is due to the fact that the complements of Tj~ and ~Vq, 3,~ are N O T unique. We now discuss serial linkages to generalize our discussion to any mechanical mechanism later.
2.2.2 Serial linkages The first and simplest kinematic structure we consider is a serial kinematic linkage. This kind of kinematic structure corresponds to a connected, cyclefree graph composed of two extremities (as defined at the beginning of Sect. 2.2) and of a certain number of connecting links. This means that there are no forking links as in a robotics hand (see Figure 2.12). A lot of common industrial robots are of this type. The graph corresponding to a SCARA manipulator is reported in Figure 2.10. We call the two extremities base and tool. For these kinds of robots, the kinematic analysis is very simple. If we suppose that the linkage is composed of m bodies, and therefore m - 1 kinematic pairs, a configuration manifold for the robot is: Q =
•
•
• Qm-lm
2.2 Mechanisms Topology
55
Fig. 2.10. The kinematics graph of a SCARA robot. where Q~+I is the configuration manifold of the kinematic pair connecting body i to body i+1. The total configuration manifold is the Cartesian product of the kinematic pairs configuration manifolds because there are no additional constraints. The total degrees of freedom of the system will therefore be m--1
E
dim Q~+I
i----1
F o r w a r d k i n e m a t i c s . Usually, in robotics, for a serial kinematic chain it is important to consider the relative position and velocity of the extremities, usually called base and end effector or tool. The mapping which assigns to a point in Q the relative position of the tool with respect to the base is called forward kinematics. For a serial chain composed of m bodies, the forward kinematics has the following form: L : Q = QI • . . . x Q ~ - I ~ S E ~ ( n )
., (hi,'",hm-l~m
, ~ hlo...
m--1 oh m
(2.5) Once coordinates and charts for the Q~ are chosen, it is possible to give a numerical expression of the previous map; this expression is called the product of exponentials [28]. A well presented treatment can be found in [10]. Differential k i n e m a t i c s a n d t h e J a c o b i a n . It is also possible to consider the differential kinematics which maps kinematic pair velocities to the velocities between the two extremities of the linkage. Formally the differential mapping has the following form: L,: TQ ~ TSE~(n) Where the L(.) is the forward kinematics (see Eq. (A.3)). We can nevertheless find a more convenient form if we map the elements of the tangent bundles
56
2. Kinematics of Rigid Mechanisms
T Q and T S E I ( n ) to the Lie algebras 8el(n.) X 8e2(n ) x . . . X se,~_l(n) and sel (n), respectively, by using the mapping ~r~ of Figure 1.9 on each TSE~ (n). This can be directly done using the result presented in Theorem 1.3.8. This theorem can be directly applied to define the following configurationdependent linear map: J ( h ) : ~ A1,2
X ...
X ~ mA~ _ l , m ---e 8 e l ( n )
;
(t~,...,t'~-l'H j (IdAdn~Adn~oh]...Adh~o,~
. . . o hj" - ~' /.' / , t3.
\t -V
(2.6)
where t := ( t l , . . . , t m m-l'~T J are the twists representing all the motions of the kinematic pairs expressed in s e l ( n ) , . . . , sem_l(n), h = (h~,..., h m-i) and J(h)t is the twist of the tool with respect to the base, expressed in the twist space of the base sel(n). In the previous equation, the matrix of adjoint mappings is called the coordinate free Jacobian matrix.
M a p p i n g o f w r e n c h e s . The Jacobian J(h) is a configuration dependent linear map. For any linear map we can consider what is called its adjoint map (see Def. A.5.5). This is a map which goes from the dual space of the range of the linear map to the dual space of the domain [29]. To be more specific, consider the Jacobian J(h) in a fixed position h. Given any t E ~ Az,2 x 9 . . x T~_l,m, d we can define t-1m :----- J(h)t, where t-1m E sel(n). If we now take an element w,~-i 9 se~ (n), the dual space of sel (n), the adjoint map J*(h) maps w m-1 to an element w 9 kv1A2 x . . . X u ~ r t h e r m o r e , if J*(h) is to be the adjoint of J(h), the following must hold: 1 (t ~ m, g(h)t)
=
(J*(h)Cvlm,t}
(2.7)
where (,) stands for the dual product (see Def. A.5.4) of wrenches on twists. This results in their exchanged power. If we expressed this in coordinates, it would be easy to see that the matrix jT(q) representing the adjoint J*(h) is the transpose of the matrix J(q) representing Y(h). This means that if the linear map is a map between twists, the adjoint map will be a map between wrenches going in the opposite direction. The application of a wrench on a twist corresponds to the power exchanged. Since at this stage we consider the mechanism ideal, no dissipation can take place. T h e power expressed in the two spaces should be the same and this is expressed by Eq. (2.7) where for a serial kinematic linkage, the right side of the equation is equal to the power exchanged at the kinematic pairs and the left side is equal to the power exchanged at the end effector. In bond graph terms the power-continuous
2.2 Mechanisms Topology
57
Fig. 2.11. A serial chain mechanism in coordinate free bond graphs. element representing this transformation is a multidimensional transformer. The adjoint mapping of the Jacobian will then be:
I J*(h) : s e ~ ( n ) ~ w1A2 • 2 1 5
A 1 I/Y~_I, m ;w,~
1 Wm
Ad* 1
h 2 o...oh
~_ 21 ~_1/
(2.s) where Ad*. indicates the adjoint m a p of A d o and corresponds to the transpose matrix of its numerical representations. The adjoint m a p p i n g gives in a static situation the wrenches necessary to counteract a wrench applied between the extremities of the chain exactly.
58
2. Kinematics of Rigid Mechanisms
A bond graph representation of the presented concept can be seen in Figure 2.11. Kinematically, the serial chain is composed of a series connection of kinematic pairs and since the l-junctions of consecutive pairs represent the same twists, they will coincide. T h e twist t~ is clearly always zero and t h a t is why a flow source of zero has been added. Due to the algebra of sel (n), or in bond graphs terms due to the junction simplification rules, the vertical column of bonds passing t h r o u g h I and 0 junctions can be substituted with just one 0 junction to which all M I " F s are connected. T h e collection of these M ~ ' F s after simplification represents the coordinate-free Jacobian. 1 applied between the The simplified 0-junction then represents the wrench w m two extremities. Kinematically, it is possible to consider the range and the null space of the Jacobian matrix for changing configurations in Q. By looking at the change in the dimension of the range, we are able to talk a b o u t singularities. Looking at the null space instead, we can consider redundancy. S i n g u l a r c o n f i g u r a t i o n s . The range of the Jacobian represents the directions in which we can move the tool with respect to the base. T h e elements in the set Q c Q for which the image of the Jacobian matrix has m a x i m u m dimension are called N O N singular configurations. The elements in the complement Q s = Q _ Q are called singular configurations. This means t h a t in a singular configuration, some possible directions of motion are "lost". R e d u n d a n c y . T h e null space of the Jacobian represents those directions we can move along in the configuration space such t h a t the relative configuration of the two extremities of the kinematic linkage does not change. Before we define the m a j o r entity in the s t u d y of redundancy, it is worth explaining a few things a b o u t distributions on the configuration space. A distribution on Q is a s m o o t h m a p p i n g from an element h := (hl, hl, . . . , h,~ ) E Q to a subspace of ThQ := Th~Q1 x Th~Q~ x ... x The_ 1 Q,~m-1. Using the mapping 7rh~+li of Figure 1.9 for each Th~+~Qi+l,i we can then m a p an element of Th Q to ~r~ln 1,2 X . . .
A X ~Ym--l,m C sel(n)
X ...
X Sem_l(Tt ) .
We indicate this m a p p i n g with 7c. It is now possible to give the following definition. D e f i n i t i o n 2.2.3 ( R e d u n d a n t D i s t r i b u t i o n ) . The maximum distribution on Q which projected by means of 7c on Tfl A m is completely 1,2 x ... x TrY_l, contained in the kernel of the coordinate-free Jaeobian is called the redundant distribution and it is denoted by A ~. It is possible to see t h a t the distribution A R corresponds to the kernel of L . , the tangent m a p p i n g of the forward kinematics. For this reason, the following theorem can be stated:
2.2 Mechanisms Topology T h e o r e m 2.2.1 ( I n v o l u t i v i t y o f t h e R e d u n d a n t distribution A R is involutive.
distribution).
59
The
P r o o f . T h e result simply follows from the fact that k e r d L for any function L is always an involutivc distribution. For an intuitive explanation, we can consider tile following. For any configuration h, consider the subspace A n ( h ) C TQ. Take any two directions vl,v2 G A n ( h ) . Consider to make an infinitesimal movement along Vl, then along v2, then along - v l and then along - v 2 . Duc to tile fax:t that these directions belong to the kernel of L,, we can conclude that at tile end point hi, L ( h l ) = L(h). This means t h a t we could have directly moved toward hi without changdng the value of L. This reasoning applied to any direction belonging to the distribution implies involutivity. 9 The redundant distribution associates to each configuration those local directions in which we can move without having any effe(:t on the relative position of the two extremities of tile serial linkage. Due to Theorem 2.2.1, A n is involutivc and therefore defines a foliation on Q. Each leaf on Q generated by A n represents what are usually called selfmotion leaves. A motion which stays on one of these leaves will not influence the relative position of tile extrcmitics of the serial chain. It is also possible to see that tile quotient space of Q with respect to tile leaves generated by A n (with a similar procedure as in Def. 2.1.5) can be used as a configuration manifold for the relative position of thc cxtremities of the linkage.
2.2.3 Forking l i n k a g e s A morc involved kinematic structure is obtained if we relax the hypothesis of not |laving forking links. An example of such a mechanism is a robotic hand [30, 31] in free space. This has only one forking link corresponding to the, palm. It is i m p o r t a n t to specify in "free space" because a hand grasping something belongs to the much more complex class of closed kinematic chains, which we will analyze in the next section. This is because the contacts between the grasped object and the fingers constrain the relative fingers-object motion. These constraints can be handled as kinematic pairs and the object as an e,x t r a link. The resulting mechanisms would therefore be described by a graph with loops. For a forking linkage, the configuration manifold is also the Cartesian product of the kinematic pair configuration manifolds and the total dcgrees of freedom are therefore again the sum of the degrees of freedom of the kinematic pairs. F o r w a r d k i n e m a t i c s . T h e graph representing a forking linkage is a connected circuit-free graph. Such a graph is also known ~s a tree (see Def. A.2.9). Since we have, a tree, in a forking linkage we have in general more than two
60
2. Kinematics of Rigid Mechanisms
F i g . 2.12. The kinematics graph of a robotics hand.
e x t r e m i t i e s . Since a t r e e is t h e c h a r a c t e r i z i n g g r a p h for a forking linkage, t h e following r e s u l t s a r e useful. 2.2.2 (Path uniqueness). For any tree T = (V, E) where V is the set of vertices and E the set of edges, there is a unique path in T which connects any two elements of V that are different.
Theorem
P r o o f . T h i s c a n b e e a s i l y p r o v e n b y c o n t r a d i c t i o n : if t h e r e were t w o d i s t i n c t p a t h s , t h e r e w o u l d b e a circuit in t h e t r e e w h i c h is n o t p o s s i b l e b y definition. N o t e t h a t for p a t h s , we do n o t l o o k a t t h e o r i e n t a t i o n of t h e edges. 9
2.2.3 (Vertices-Edges relation). For any tree T = (V, E), if the number of elements of V is m , the number of elements of E is m - 1.
Theorem
P r o o f . For m = 2 t h e s t a t e m e n t is trivial. F o r o t h e r m , let us p r o c e e d b y i n d u c t i o n a n d s u p p o s e we have p r o v e d t h e s t a t e m e n t for t h e case m = m0 a n d we w a n t to p r o v e it for m = m0 § 1. It is e a s y t o see t h a t to a d d a v e r t e x t o t h e tree we n e e d t o a d d one a n d o n l y one edge b e c a u s e o t h e r w i s e we w o u l d c r e a t e circuits a n d we w o u l d n o t have a t r e e a n y m o r e . .. T h e last results i m p l y t h a t if we h a v e rn b o d i e s in a c o n n e c t e d f o r k i n g linkage, we will have rn - 1 k i n e m a t i c p a i r s or j o i n t s , e x a c t l y as in a serial chain. S u p p o s e now t h a t we have nc e x t r e m i t i e s . W e c a n i n d e x t h e e x t r e m i t i e s w i t h a n i n d e x i n g f u n c t i o n p(.) in such a w a y t h a t Bp(1), B p ( 2 ) , . . . , Bp(nc) c o r r e s p o n d t o t h e e x t r e m i t i e s b o d i e s of t h e m e c h a n i s m b y using t h e n o t a t i o n i n t r o d u c e d a t p a g e 8. A n o t h e r difficulty in t h e e x p r e s s i o n of t h e k i n e m a t i c s of a f o r k i n g c h a i n is t h a t we do n o t have a one t o one c o r r e s p o n d e n c e b e t w e e n b o d i e s a n d t w i s t s , as in a s e r i a l chain. T h i s is d u e t o t h e fact t h a t we c a n have m o r e
2.2 Mechanisms Topology
61
kinematic pairs attached to one body and therefore we need a way to express this situation. To simplify the notation, we will indicate, with l(i) c V and r(i) c V the two vertices adjacent to the edge i. This is the same as saying that the configuration mauifold of the kinematic pair corresponding to the (3r(~) edge i in the graph is ~t(~) " \Ve can then desc.ribe the forward kineinatics as the mapping from the configuration space Q to the positions of the bodies Bp(~) with respect to othcr bodies of the chain which we index with an indcxing function q(i). Wc require p(i) r q(i) for a non-trivial expression. The forward kinematics, then is a mapping with the following form: L: Q= Q
x . . . x ~t(m-1)
~p(l) I
[
x.
x
v(-,-) :
,,~(n~-l) o ...
h q(2)
.
.
o rip(l) .
.
I
o h "~(1) / .
(2.9)
q(nr(..... - l ) o . . . o h ~(,,~) ...... (1)/] \I h ..... where [p(i),s,(1),v,(1),s,(2) . . . . , , % ( n , - 1 ) , t , , ( n , - 1 ) , s , ( n , ) , q ( i ) ] ,
i= l,...,n,:
corresponds to the unique (see Theorein 2.2.2) path composed of ni edges (see Def. A.2.5) which connects q(i) to tile extremity p(i), vi(') belongs to the set of vertices V of the graph and s,(.) to the set of edges E. Note that by Theorem 2.2.3, the number of kinematic pairs in the system is always m - 1 because m is the nmnber of vertices in the graph which is an equivalent of the number of bodies in the mechanism, and therefore we have a tree. Note that, in the path from p(i) to q(i), we could encounte.r edges which are oriented in the opposite direction than the one we are fl)llowing. In this case, we need to consider the inverse of the configuration of the pair corresponding to the edge. D i f f e r e n t i a l k i n e m a t i e s a n d t h e J a e o b i a n . Once again, the differential kinematics could be defined ms the tangent mapping of L analogously to what said about serial kinematic chains. Ne.w~rtheless, a more suitable form can be given which expresses the mappings between the twists of the kinematic pairs. Due to the complexity of the possible paths, the expression of this Jaeobian is a bit complicated. We have:
62
2. Kinematics of Rigid Mechanisms
''''' A
/(m-I)
] : A
"Tr(1),/(l ) • . . . x "T,:(m_l),l(m_l) ~ Seq(1)(n) • . . . • Seq(m.)(n ) ;
o illt,.
0 A2 0 . . . . tl(m-~))) ~
0 9
0 A3 ,
.
-
0 .........
.
$2
/
~/(2)
S ~
\tl(m_l)rl( m - - 1 )
-
Anr
where Si is a block p e r m u t a t i o n m a t r i x interchanging the orders of the twists , l ( ~ - t ) H in the following way:
tq(O v, l n , - t )
.v,(n,-1) gv,(n,-2)
x
\
l(m-1)/
•
where the last m - n, - 1 elements on the left vector correspond to the twists of the kinematic pairs of thc edges not c o r r e s p o n d i n g to s, (1) . . . . , si (n~) and:
Ai =
(,I d
Adhq(,) ",("'-')
...
Adh~c'(),_, Y ni
)
o ...o..
(,)
0..0)
.
P r o p e r l y speaking, Si can be m o r e t h a n just a p e r m u t a t i o n matrix. This is due to the fact t h a t in the reordering of the twists for the chosen indexcs, it could h a p p e n t h a t Si m a p s a twist t~ not just to itself in a n o t h e r position (pure p e r m u t a t i o n ) , but also to t k. This would therefore also imply a m a p p i n g t h r o u g h - A d h ~ as explained in Eq. (1.22) and Eq. (1.23). We do not go into detail not to complicate the n o t a t i o n further. M a p p i n g o f w r e n c h e s . W i t h an analog procedure as used for serial chains, we can use the adjoint m a p of the J a c o b i a n to m a p all the wrcnches applied between q(i) and p(i) to the necessary kinematic pair wrenches 14;r~j)j(j) , where j = 1 , . . . , (m - 1) to balance t h e m exactly. T h e adjoint m a p p i n g is given by
2.2 Mechanisms Topology J*(h[~,... se~(1)(n)
'
h "(m-l) /(m--l)
x...
63
) :
x 8 e q*( n o ) ( n )
~ A ., VI;~(i),/(i ) x ... X )4?r(m_i),l(m_i)
~
0 !/II
wq(1) p ( 1 ) , ' " , wq(nc)~ p(n~)J ~-~
1,
o ~
(S;S~Sj...S*)
0 A~...
:
:
0:
/~/~// p.(3)
o
0
:
"..
: ....
A o
(2.11)
~wq(nc)]
,~(o~),
where S* is a block permutation matrix which corresponds to the inverse 5 permutation Si and interchanges the orders of the wrenches in the following way: [wq(i)
.
v~(1)
/ ~(m-1)/ = S* \wz(.~-l)
'~
wp(~)•
/ X
where the A* blocks are given by
(
;d Adhq(~)
vi(ni--1)
Adh~(i()n~_l) o A~ =
Adhq(~)
vi(ni--1)) hvi(,~i_2
~(2)
o ... o hvi(1 )
0 0 0 This mapping gives the necessary wrenches needed at the kinematic pairs to counteract the wrenches U ,qO) a('~c) which are applied to the p ( l ) ' wq(2) p ( 2 ) ' ' " . ' w p(nc) kinematic mechanism between each of the bodies p(i) and q(i) with i = 1 , . . . , nc and expressed in s%(i)(n). 5 The adjoint of a permutation matrix corresponds always to the inverse permutation.
64
2. Kinematics of Rigid Mechanisms
It would be possible to draw a bond graph of the mechanism exactly in the same way as it has been drawn for a serial kinematic chain. Then the topology would be more involved.
2.2.4 C l o s e d k i n e m a t i c c h a i n s We now deal with the most general case of closed kinematic chains where we also relax the requirement that the graph must be circuit free. A circuit in the corresponding graph, corresponds to what is called in mechanics a kinematic loop. A kinematic loop has additional constraints on the configuration of the kinematic pairs corresponding to the edges of the circuit. A typical example of a closed chain mechanism is the Steward platform. The advantages of the use of closed chains in mechanisms are many. For example structures can be achieved that are inherently stiffer and actuators can be located all on one point in order to create a light moving structure. Let us now briefly analyse these mechanisms by using graphs tools. For any mechanism with loops, representable by a connected graph G = (V, E), consider any spanning tree of G (see Def. A.2.10). This spanning tree will itself be a graph T with the following form: T = (V, C). Let us indicate with C the set E - C'. If m indicates the number of elements of V and nc the number of elements of C, due to Theorem 2.2.3, the number of edges of G, corresponding to the number of kinematic pairs of the mechanism, will be m + nc - i. If we add to the tree T one element from C we obtain one and only one circuit of G representing a kinematic chain of the starting mechanism. The set of nc circuits obtained in this way (by adding to T each of the elements of C, but one at a time) is called a fundamental system of circuits of G with respect to T. Each of the elements of C can therefore create additional constraints in the motion which should be taken into account. Let us indicate the elements of C as:
C = {(p(1), q(1)), (p(2), q ( 2 ) ) , . . . , (p(nc), q(nc))} and the elements of C' as: 0 = {(r(1),/(1)), ( r ( 2 ) , / ( 2 ) ) , . . . , ( r ( m - 1 ) , l ( m -
1))}
Following exactly the same line as we used for forking linkages, we can define the circuit free kinematics with respect to T as the following mapping:
LT : Q
[~1~
... X
X
Qr(m-1) /(m--l) ~
. .q, i~?q( 1) ~p(1) X .. X [
I
(h[:r
9", hr('~-l)'/(m-i) /H
[
SEq(n~) p(nc)
h q(1)
o
v1(~1-1) h q(2)
o
"' _~v1(1)
\
A ~v2(1)
|
"'" r
Iv2(n2--l)'''t~ll'p(2)[. ~h q(nc) 0 \ ~nc(~-l)
....
(1)|
... o n p ( ~ ) ]
.
(2.12)
2.2 Mechanisms Topology
65
We can then give an expression of the configuration manifold for the system as follows: Q := {q E Q
~
~(m--i)
n ~(I) •
• ... x ~l(m-1) s.t. LT(q) E ~p(1)
....
X n~(~)~
p(nc)J
If we consider the differential kinematic of LT, we have an expression t h a t is identical to Eq. (2.10). T h e image of the Jacobian of the simplified forking kinematics corresponding to the tree T, which we will indicate as JT(h), gives the hypothetical directions of motions. Unfortunately, not all of these directions are possible since the kinematic links corresponding to the edges in C are also present in the mechanism. If we define: :=
A
A • Tq(2),p(2) •215
A
then an expression for all the possible moving directions in a configuration h is:
T
:= J
l(h)T2
where J T l(h) is the pre-image (see Def. A.1.3) of the J a c o b i a n corresponding to the simplified tree mechanism and T A C ~KA ~"A r(1),/(1) • "'" • r(m--l),l(m--l)" The dimension of the subspace T A gives the degrees of freedom of the complete mechanism. It could h a p p e n t h a t ~r'A is the zero element. This means t h a t the mechanism is over constrained and can not move in any direction. It should be noted that, in general, we can also have motions of the mechanism which do not change the configuration of the kinematic pairs corresponding to the edges in C. These self-motions correspond to the kernel of JT (h) or, equivalently, to the pre-image of the null element through J T 1 (h). We could also consider the dependence of ~TA o n the configuration h and define a distribution, of which the integral of the involutive closure would result in the minimal configuration manifold Q for the complete closed chain mechanism. The pre-image of JT(h) could be in practice calculated with pseudoinversion techniques. I n t e r n a l f o r c e s o f a c l o s e d c h a i n m e c h a n i s m . One typical feature of a closed chain mechanism is t h a t it can have internal forces. This means t h a t we could apply certain equilibrated wrenches different from zero to the kinematic pairs of the structure. These wrenches would not have any effect on the motion of the structure. This corresponds to what is called redundant
actuation. As we have already seen in the case of forking linkages, the m a p p i n g of wrenches is represented by the adjoint of the Jacobian. In the present case we should therefore consider the adjoint of JT(h) which is a m a p having the following form:
66
2. Kinematics of Rigid Mechanisms
J.;,(h):
W~,~..(, / • W~.~,p~2~ • ... • W~.,.~,.~~
If we denote the total set of the kinematic pairs' wrenches as: wA
:= 142.A X 142A
where
),~,A :: )/~r~l),/(l)X
)/VrQ2),/(2 ) X ... • ~'~r~rn-1),l(rn-1)
and
the set of intc, rnal forces for the nlechailisin can be expressed as the following set: w~
:= {(wr,wc)
9 w a s.t. ,,,-~. =
-J.;.(h),,,c}
or even better as the subspace of W n represented by the kernel of the following linear map: I: ~]A ~
~/~],A K ; (ll,T, WC ) ~
(Id J~,(h))
<) we
If actuators exist which can generate wrenches in W A it is possible to generate forces which do not haw~ any noticeable effect on the motion of the chain. An example could be the hand-object combination of a grasped object. In this case the internal forces would correspond to those forces representing the hardness of a grasp and these forces are represented in literature by means of what is called the grasp matrix [32]. In bond graphs, closed chains can be drawn in the same way as they were drawn for serial kinematic chains, namely by choosing a reference body. The bond graph will have loops which result in cmLsal conflicts giving rise to algebraic constraints. Details of these problems can be found in [331.
2.3 C o n c l u s i o n s In this chapter two main topics have been treated. First, the definition and description of kinematic pairs have been explained. We saw t h a t there are kinematic pairs, called lower pairs, which have the feature of being describable independently of their configalration. These pairs are the most i m p o r t a n t ones in practice. Bond graph interpretations have been given. Second, all the possible rigid mechanism have been analyzed and explained. It has been shown that, in general, the actuation space does not
2.3 Conclusions
67
correspond with the configuration space. A typical example is a h u m a n arm: this has few degrees of freedom but a lot of muscles. These muscles could be modeled as extra actuated pairs. The resulting describing mechanism would then correspond to a closed chain mechanism. We have seen t h a t such mechanisms can have internal forces. For a h u m a n a r m these forces correspond to the c o n t e m p o r a r y contraction of opposite muscles like the biceps and triceps.
3. D y n a m i c s of Rigid Mechanisms
The word dynamics comes from the Greek 5r (dynamis), which means force. Dynamics studies the evolution of systems as a function of time. In this chapter we therefore study how the motion of a rigid mechanism is influenced by applied forces generated by actuators, other elements like springs and dampers and gravity. Interested readers can consult [34] or [35] for an extensive review of analytic mechanical issues. More specific issues concerning the study of differential equations can be found in [16]. This chapter contributes by describing how physical elements interconnect and by deducing the corresponding equations. Related existing work can be found in [19], [36] and [1], of which this book is an extension. In Chapter 2 we studied how the motion of mechanisms can be described, but excluded the question how motion is generated. This question will be answered in this chapter. After a general descriptive introduction to some frameworks which are used for the description of dynamic systems, the issue of decomposition and interconneetion of subsystems will be briefly treated. The Lagrangian formulation will also be treated for the general case with energetic ports, although most literature on this subject only uses it for autonomous systems. The Hamiltonian description will then follow in the Poisson and Dirac framework [37, 38, 39]. The basic elements composing a mechanical system will be treated; study of their interconnections and the deduction of explicit equations will end the chapter.
3.1 Study
of
Dynamical systems
Before treating more specific issues concerning the dynamics of mechanical systems, we will reflect on the concepts behind modeling of the dynamics of systems and in particular on the concepts of physical systems. 3.1.1 T h e b e h a v i o r a l a p p r o a c h The process of observing a system and describing its behavior, involves two entities: the system that is observed and the observer. During the process of observing, quantities of the system that is being observed are compared with the observer's own reference quantities.
70
3. Dynamics of Rigid Mechanisms
In general systems, these quantities could be physically unmeaningful. In a physical system, they could be velocities, forces or other physical quantities. Most i m p o r t a n t of all these, however, is the quantity "time". It is generally accepted t h a t time is N O T an absolute, something t h a t people believed before the special theory of relativity, and therefore this is also a reference for the observer. In the standard nonrelativistic s t u d y of dynamics, time is given a special role and other quantities are measured and analyzed as functions of t i m e and called signals. T h e dynamics of the system can be described by the set of signals t h a t the system dynamics allows. This last approach is exactly the one taken in the behavioral framework [40, 41]. To formalize this approach, consider the set of all the possible quantities observed from the system and indicate it with W. In the behavioral approach, these quantities are called manifest variables. Furthermore, consider time as an open interval I E R. We can define a signal of our system as an element of W I, and therefore as a function which associates with an "instant" t E I, the value of the observed quantities at t h a t instant. T h e dynamics can then be described as all the possible elements of W I t h a t the system dynamics allows. This very general and interesting framework is the essence of the behavioral formalism 1. C o m p a r e d to other standard formalisms such as the state space representation, the behavioral formalism has as a m a j o r advantage its completely noncausal formulation. W i t h noncausal we m e a n t h a t no information is given about the observed quantities t h a t indicates whether they are causes or effects. Some readers might consider this an artificial way of dealing with systems, but in fact it is the only proper way to describe some of them: causality is often only needed to simulate certain systems and it is hardly ever an intrinsic feature of a system. Consider, for example, an electrical resistor: there is no reason whatsoever to consider the current as a function of the applied voltage, or the applied voltage as a function of the current, for t h a t matter. T h e generality of the framework just explained does not make it easy to describe systems, and for this reason, the concept of latent variables is introduced in the behavioral framework. If we go one step further, we can require t h a t those latent variables satisfy what is called in [40] the axiom of state. Intuitively, this axiom expresses t h a t at a certain instant the value of these special latent variables should contain sufficient information a b o u t the past to be able to determine what will happen in the future. If these latent variables satisfy the axiom of state, they are called states and they correspond exactly to the usual notion of the state presented in any basic course on dynamical systems. It is i m p o r t a n t to notice that, first, the description of the manifest variable is very general and defines a framework able to describe the action of 1 Another approach to the study of dynamical systems is the differential algebraic method of Fliess [42].
3.1 Study of Dynamical systems
1V:
71
2
E
2 1 [ D----~3
2F 3
Fig. 3.1. Interconnection in the behavioral framework. observation. Second, the introduction of latent variables seems at this stage an artificial step necessary to be able to work with the framework. This is because up to now we have considered only the observable signals of the system without deliberating about what could have generated them. Latent variables often result from a detailed decomposition in subparts of the system that is analyzed. The process of decomposing a system in connected subsystems is sometimes called tearing, diakoptics by Kron [43] or hierarchical modeling [44]. In the behavioral approach, interconnected subsystems are composed of systems which have some of their manifest variables in common equal for all times. Figure 3.1 shows an example of this approach for a system E which is composed of four subsystems, namely A, B, C, D. The subsystems A, C, D, and E itself have each three manifest variables. However, B has only two. The interconnection means, for example, that the manifest variable 1 of system B should always be equal to the manifest variable 2 of subsystem A, and so on. Those variables need not have any particular structure. From a physical point of view this turns out to be a shortcoming, which can be overcome by adding extra assumptions. This means that for the more specific goal of studying physical systems, extra structure and therefore constraints should be added to the behavioral approach. For the more general purpose of describing the theory of any kind of dynamical system, physical or not, the behavioral framework offers a general, formally well-posed description.
3.1.2 A step further: physics and b o n d graphs In the previous section, we recalled very briefly concepts introduced in the behavioral framework. For the study of physical systems, we will add more structure to the model and introduce physical concepts. Probably the most
72
3. Dynamics of Rigid Mechanisms
imt)ortant physical concept on which physics is based is the thcrmodynanfieal concept of energy [45]. Energy can be considcrc(t to have two major properties: invariance in time (the first principle of thermodynamics) and continuity in st)ace (principle of Heaviside). lnvarianee in time means that the energy in the universe is constant. This does not imply anything about the motion or the localization of energy in certain parts of space. Continuity in space, on the other hand, postulates that if energT has to move from on('. part of space to another, it has to travel the space between them and cannot just disappear at on('. point and appear at another. Using the eoncepl of tearing, we (:an then consider a system as a set of intereonImcted subsystems. Each of these subsystems can possess energy, which can travel from one subsystem to another by passing through an ideal boundary dividing the two. The energT that each of these subsystems contains is a fimetion of some latent variables, which are states of the subsystem. These states can be physically defiim(t by using thermodynamieal concepts like ('xten,sive variables [45]. All the points explained here are t)recisely those used for bond graphs [46]. This framework based on physical concepts will t)e described later on.
3.2 Physical
Interaction
and Interconnection
We start this section with a definition of what is meant with interaction. D e f i n i t i o n 3.2.1 ( I n t e r a c t i o n ) . Given two systems A and B, we: ,say that
the systems interact if the. behavior of A i.s influenced by the presence of B and/or vice versa. It is important to realize that a sufficient condition for interaction is therefore the existence of an exchange of energy between the two systems: there is an energy flow from A to B or from B to A. We characterize the interaction with variables that are common to both systems. In the behavioral framework, no structure is required for these common variables connecting the subsystems. We do require extra structure fi)r the variables which we (:all power ports.
3.2.1 P o w e r P o r t s We say that the exchange of energy characterizing the interaction takes place through what are called power ports. Powc.r ports model and localize tile protess of the exchange of energy between subsystenus. To quantify this exchange of energy, we will describe a port P with certain variables, for which the specific structure of a vector space ~) and its dual V* are required:
3.2 Physical Interaction and Interconnection
73
Fig. 3.2. Interaction between two systems.
Fig. 3.3. Interaction between two systems in common flow form.
Fig. 3.4. Interaction between two systems in common effort form.
P : = ~ • )2"
(3.1)
for a suitable vector space l?. A n element in 12 is called a flow a n d a n element in F* is called an effort. At each instant, the p o r t variables are an effort and a flow. T h e application of an effort ei (which is a linear o p e r a t o r on 12) on a flow f f gives a scalar value eif ~, representing the power flowing t h r o u g h the described port. T h e interaction between two s u b s y s t e m s is represented in Figure 3.2, where b o n d g r a p h s n o t a t i o n is used. T h e power b o n d direction gives the positive direction of power for eiff: at each instant we have eif i power flowing from s u b s y s t e m A to s u b s y s t e m B. I n C h a p t e r 2, we used the vector space l) = sei(n) for an index i d e p e n d i n g on the simple j u n c t i o n s t r u c t u r e used, as Sect. 2.2.1 shows. 3.2.2 Vector spaces and interconnections W h e n we want to express a power-consistent i n t e r c o n n e c t i o n of a set of subsystems, as explained in the section above, we need a c o m m o n vector space 12 a n d its dual 12". O n the other hand, each of the interconnected s u b s y s t e m s has its own state manifold, which differs from all the others. It is therefore f u n d a m e n t a l to find a w a y to m a p t a n g e n t vectors or covectors at a certain point of the state manifold of each s u b s y s t e m to vectors and co-vectors belonging to a c o m m o n vector space and its dual, where t h e interconnection can be expressed. This can be done using Lie g r o u p s t r u c t u r e s or Euclidean connections, d e p e n d i n g on t h e specific case.
3.2.3 Causality Appendix B explains general concepts about the causality of bond graphs. The major issue of causality is that two interacting systems as, for example,
74
3. Dynamics of Rigid Mechanisms
the ones in Figure 3.2, should causally complement each other [2]. This means that if the input of one of the two subsystems is a flow, and its o u t p u t is an effort, the other subsystem should complement the first by having an effort as input and a flow as output. T h e situation of the first subsystem is called impedance causality for the interaction port, whereas the situation of the second is called admittance causality for the port. The fact that a system cannot impose b o t h the effort and the flow on a port is easily explained: then it would in fact be able to subtract infinite energy from the other system, disregarding its structure by setting a constant power direction imposing proper values of both effort and flow. This is obviously physically impossible. 3.2.4 I n t e r c o n n e c t i o n A physical system composed of interconnected physical subsystems can be seen as a set of subsystems interacting with each other. Each subsystem has usually more ports, each of which is characterized by a vector space 12i. Only subsystems with compatible ports (based on the same 12i) are able to interact directly through that port, as shown in Figure 3.2. To structure the interconnection, we consider all the bonds directly attached to a subsystem pointing inward and therefore with an incoming power that is positive. This implies that when we interconnect two subsystems, two possibilities exist for each port:
9 Common flow interconnection, represented with an interconnection through a 1-junction. The junction means that b o t h the bonds have the same flow and therefore opposite effort (see Figure 3.3). 9 Common effort interconnection, represented with an interconnection through a 0-junction. The junction means that b o t h the bonds have the same effort and therefore opposite flow (see Figure 3.4). In this way we can express the interconnection of systems having equivalent ports and power bonds oriented toward the subsystems. Nevertheless, the requirement of causality must also be met: any two interacting subsystems should be causally complementary. We can formally cope with this problem by means of what is called a symplectic gyrator [45] and a symplectic interconnection. S y m p l e c t i c i n t e r c o n n e c t i o n . A symplectic gyrator is the element which represents duality of energetic domains, and its importance has already been studied in depth by Breedveld [45]. For our needs, a symplectic gyrator can be considered as a two-port element which swaps the role of effort and flow between its two ports. It is clear t h a t this is possible since the dual 12" of a vector space V is a vector space of the same dimension. In the sequel, we will often model subsystems by means of Hamiltonians systems with ports. These subsystems all need a flow as input and an effort as
3.2 Physical Interaction and Interconnection
75
Fig. 3.5. Common effort, dualization of B.
Fig. 3.6. Common effort, dualization of A.
Fig. 3.7. Common flow, dualization of A.
Fig. 3.8. Common flow, dualization of B.
output in the Poisson framework and as we will use them. This implies t h a t to be able to interconnect them, we need to dualize one of the ports of the two subsystems, so t h a t after dualization, one of the subsystems will actually formally accept an effort as input. This will not be strictly necessary if we use Dirac structures. There are only four possible symplectic connections for two systems with the same causality: these are reported in Figure 3.5, Figure 3.6, Figure 3.7, and Figure 3.8. By duMising the 0 and 1 junctions, we can see that the connection in Figure 3.5 is identical to the one in Figure 3.7 and t h a t the connection in Figure 3.6 is identical to the one in Figure 3.8. This means t h a t there are only two simple interconnections for systems with the same causality which correspond to:
where ( f l , e l ) and (f2, e2) are the flow-effort pairs of the two subsystems ports respectively. There are two m a j o r approaches to s t u d y physical systems: the Lagrangian formulation and the Hamiltonian one. It is well known [35, 16] t h a t the Lagrangian formulation is equivalent to the Hamiltonian one under some hyper-regularity conditions [47]. This equivalence can easily be represented by means of the Legendre transformation. Often it is not realized, however, that this equivalence between a Lagrangian and a Hamiltonian formulation is only easily expressed if the latter is represented in a canonical form. As pointed out in [48], interconnection can be expressed explicitly by means of a Poisson manifold or a Dirac structure [49, 37, 39] formulation of Hamiltonian dynamics; Sect. 3.4 will discuss this in detail. This is not the case for a Lagrangian formulation, which is basically only based on variational methods using Hamilton's principle of least action [35]. Furthermore, the Hamiltonian formulation is more general since in its basic form, it naturally allows the description of systems which are not inte-
76
3. Dynamics of Rigid Mechanisms
grable and which have inputs with preferred impedance causality, as shown in Example 1 in [50]. We will treat, both the Lagrangian and the Hamiltonian framework, but the second one will be used more extensively because it has better, more general f(~atures for the description of intercommcted physical systems.
3.3
Lagrangian
Formulation
The Lagrangian study of dynamics is hased on eon(:epts of Rielnannian geometry (see Sect. A.7.6). A nice overview of modern techniques for the study of mechanical systeins using the Lagrangian fi'amework (:an be found in [51]. Usually, the LagTangian formulation of dynamics is used for describing autonomous systems (without inputs). A clear-cut formulation of the first ease can t)e found in [2()], and a review including inputs is given by [47]. We will try to present, the material in an intuitive and yet sufficiently t)recise way. 3 . 3 . 1 T h e s i m p l e s t case: n o p o t e n t i a l e n e r g y a n d n o p o r t s The simi)lest I,agrangian system wc can think of is an isolated, lossless system with no potential energy,. Its dynamics will be only due to the configuration (teI)endence of what is called the inertia tensor. In a Riemaimian geometric framework, this tensor represents the metri(: charact(~rizing the geometry of the system. To be more spe(:ifi(', consider a configuration manifold Q for the isolated system under consideration. With each point q C Q, we have associated a metric wit h the tangent vector space Yq~ which characterizes tim kinetic coenergy 2. This means that if the system finds itself in a configuration q E with a velocity (~ E TqQ, the kineti(: co-energy can be ext)ressed as: . 1 E k : T Q ~ R ~ ; (q,(~) H }M,j(q)~fgtJ in which we have used the tensor sUiIllnillg convention 3. The manifold Q with the metric M~j C T(),2Q, ha,s the structure of a Riemannian manifold. The notation T0,2(2 denotes the 0 contravariant, 2 covariant tcrusor bundle (see Def. A.7.14). The metric is nothing else than a position-dependent, positive definite quadratic form of the velocities in each point. We can now define what we m(~an by an arc. 2 Formally speaking, the kinetic co-energy is a flmction of velocities and the kinetic energy of momenta. a We use the implicit tensor notation here because, it simplifies the expressions. A brief review is given in Sect. A.5.1.
3.3 Lagrangian Formulation
77
D e f i n i t i o n 3.3.1 ( A r c ) . An arc ~ C Q starting from ql E Q and ending
in q2 E Q is a smooth curve connecting ql to q2. A parameterization of the are is a continuous bijective function q : [tl,t2] --+ ~ from a close interval [tl, t2] C ]R to the arc, in which q(tl) = qx and q(t2) = q2. We can consider an arc as a possible evolution of the system in which we consider the parameterization as the function of time associating to each instant t E [tx, t2] the configuration q(t) of the system at that instant. We can now define what is called action: D e f i n i t i o n 3.3.2 ( A c t i o n ) . The action of an arc q(t), t c [tl,t2] joining ql = q(tl) E Q to q2 q(t2) @ Q and a Lagrangian function L : T Q ~ IR is =
defined as: S[q] =
L(q(t), il(t))dt.
(3.2)
1
A major principle in physics states that the arc can correspond to a possible evolution of the system q(t) if it satisfies Hamilton's principle of least action [35]. This principles states that q(t), to be a possible evolution of the system from ql to q2, should minimize the action S[q]. For our autonomous case with only kinetic co-energy, this principle should hold when L(q, (1) = E[~(q, gl). Prom the calculus of variations [20] it is well known that if a curve q(t) is to be minimal for the integral in Eq. (3.2), it must satisfy the Euler-Lagrange equation:
d-t
Oq - O.
(3.3)
Note that the previous equation is a covariant equation, which means that
OL/Oq, d/dt(OL/O~t), 0 c T~ Q. Remark 3.3.1 (Interpretation). Note that if we consider OL/O~ to be a "generalized momentum" p, Eq. (3.3) can be written as
OL
P-- Oq which resembles the dynamics of an inertial element with m o m e n t u m p connected to an elastic force OL/Oq. For this reason a position-dependent inertia Mij(q) also generates an "apparent force" O(Mij (q)(ti(lJ)/Oq which modifies the m o m e n t u m p. It is possible to see that if for Q there are coordinates q in which the inertia tensor would become constant, we will have the simplified equation/3 = 0. It is a standard result of Riemannian geometry that such global coordinates exist iff the curvature of the Riemannian manifold (see Sect. A.7.7) is zero everywhere. In such a case, therefore, we would obtain trivial equations with conservation of momentum.
78
3. Dynamics of Rigid Mechanisms
The minimization of Eq. (3.2) with L = Eft can be interpreted as the minimization of:
S[q] =
j~tt~ Iq(t)12Mdt
(3.4)
1
where [O(t)[ 2 indicates the square of the magnitude of the vector q(t) E TqQ by using the Riemannian metric M(q) in the current point q. Note that the previous integral is N O T the length measured with the Riemannian metric of the arc q(t) followed by the system joining ql to q2, as we would expect from the theory of geodesic flow of dynamical systems. It can be shown [20] that an arc q(t) minimizing Eq. (3.4), also minimizes
s[q] =
Iq(t)lMdt
(3.5)
which is now indeed tile length of the arc q(t) joining ql to q2 for the metric M(q). This implies that if wc look for the arcs corresponding to the trajectorics that thc system evolution follows, we can consider what are called the geodesics of the Riemannian manifold (see Sect. A.7.7). The geodesics arc intuitively those curves of minimum length joining certain points. The equation of the geodesics can be expressed by the following tensor operation of covariant diffcrentiation (scc Sect. A.7.7): Vqq = 0.
(3.6)
In tile previous equation, the corresponding connection (see Sect. A.7.7) that defines the operation is tile Levi-Civita conncction (see Thcorem A.7.6). This connection corresponds to thc only torsion-free connection compatible with the Riemannian metric. Note that now Eq. (3.6) is a contravariant equation corresponding to Eq. (3.3) with L = E~ multiplied by the inverse of the inertia tensor. 3.3.2 A d d i n g e n e r g e t i c ports In the previous section, we considered isolated systems with only kinetic coenergy. In [47], inputs for the system are defined by the use of jets. Here we use a more intuitive approach, which considers the energy exchanged with the system as a starting point. We study the case in which we (;an supply or subtract energy from the system through what is called an energetic port which localizes the exchange of energy with the rest of the universe. In this case, an energetic port is charactcrized by two dual vectors: a vector (q, q) 6 T(2 corresponding to the motion of the system and a dual clement (q, T) 6 T* Q. These are characterized in such a way that their dual product represents the power supplied to the system through the port characterized by (q, q) and (q, T).
3.3 Lagrangian Formulation
79
If (T, q)q indicates the dual product of a vector q and a co-vector ~- in q, we need for power consistency that, indicating with E ; ( q , gl) the kinetic co-energy of the Lagrangian system: ddt E ; q,o = @' (7)q
(3.7)
(i.e. the rate of change in kinetic co-energy is equal to the supplied power). If we define the covariant tensor called generalized m o m e n t u m with a pi := Mijq j, we have:
OE; Pi-
CO(ti
We can then write: E ; ( q , q) = Pi(t~ - 1Mzj(q)Ol(tJ = PiO -- E ; ( q , O) and taking the time derivative of any trajectory q(t) in the previous equations, we have:
dE; dt
dE;
- Piq* + PiOi - -~qi q - Piq ~ =
( d ( OE;
~ \ 0(7i ] -
OE; r
(3.8)
Oqi ]
where more properly expressed, (t, q, q, q) belongs to the 2-jet [16] from IR to
Q. For Eq. (3.8) and Eq. (3.7) to be equal for all possible (q, q), it must be:
d
oE;
d--t \ Ogli ] -
Oqi =Ti"
(3.9)
Following a similar line of argument, one can see that the previous equation in covariant differentiation terms becomes: VO0 = MiJTi
(3.10)
where M ij is the inverse of the inertia tensor ?ffij. This last equation shows that if the Riemannian curvature corresponding to the metric M i j on Q is zero everywhere, there are coordinates ~ for the manifold Q in which the Christoffel symbols characterizing the covariant differentiation are also identically zero (see Sect. A.7.7). In that case, Eq. (3.10) takes the form: ~J = M ~' ei
or
-Mij ~J = r
corresponding to the most common form of Newton's law which is only valid in cases where the inertia tensor is constant. 4 Here we use again implicit tensor notation for convenience.
80
3. Dynamics of Rigid Mechanisms
3.3.3 A d d i n g p o t e n t i a l e n e r g y So far, we tlaw', only considered the ease in which the system's Lagrangian function only consists of kinetic co-energy. We now consider a situation where we also have storage of potential energy. Potential energy is by definition only a fllnction of tile configuration; it is bounded from below and ha.s the following forin:
Considering the differential of the potential energy, we get:
Ep dq . dEp = O ~-q This
implies thai
the
change of
potential energy., as a function of tinle is:
dEp dt - ((q' OEplOq), (q, (t)) and therefi,re - ( q , OEp/Oq) 9 TqQ corresponds to the generated elastic force 5. If we apply this force together with one other exiernal force which nlay be produced by any other external system, we. get: T, - -
[.)qt
+ T~*.
By substituting the last equation ill Eq. (3.9), we obtain:
d (0u ) dt \ 0(1' ii
_ Oqi
01;. Oq' ~- 7,*
which (:an be written as:
d (OE~
O(E~-Er)
dS \ O0' /
0r
d (OL~ - df <
OL
,
Oq' -
where L = E~ - E v. The latter corresponds to the well-known Euler-Lagrange equation with inputs. Note that the t)revions fornl may be given because Ep does not det)end on (1 and, therefore, OEp/O(1' = O. Using external additional forces would enable us to consider dissipative terlns. 5 The. force corresponding to OEv/O q is the force which is applied to the element with potential energy Ep and therefore, in a dual way, we can say that the opposite vector is the force that the element generates.
3.4 Hamiltonian Formulation
81
3.4 H a m i l t o n i a n F o r m u l a t i o n The Riemannian geometry plays the same structural role in the Lagrangian approach to dynamics as symplectic geometry in the classical Hamiltonian framework. The most basic form of the standard Hamiltonian formalism is based on a symplectic structure [35, 34]. This structure can be directly defined if we describe a system by starting from its configuration manifold Q, which is N O T a state manifold. We can then define a canonical 2-form on its cotangent bundle T* Q which is now considered as a state manifold. Unfortunately, this approach is not general enough. This is due to the fact t h a t a simplectic form is a 2-form and therefore can be seen as generating a m a p p i n g from a vector field to a co-vector field. W h a t we eventually need to describe Hamiltonian dynamics is a m a p p i n g going in the opposite direction: from a co-vector representing the gradient of a Hamiltonian energy function to the corresponding Hamiltonian vector field. In a symplectic setting, this would require the "inversion" of a 2-covariant tensor and therefore this tensor cannot be degenerate. Therefore, the basic form reported in [35] is a framework t h a t is too restrictive because it is not able to describe all the necessary physical systems. A typical example is the description of the rotational dynamics of a rigid body; this cannot be handled directly by a symplectic Hamiltonian system. T h e shortcoming mentioned above can be solved by considering a 2 contravariant tensor field which could directly m a p a co-vector field to a vector field. This tensor field corresponds to a Poisson structure [16, 18]. This is the main approach this book follows and it is based on [48]. Unfortunately such an approach does not allow the description of implicit Hamiltonian systems. A Dirac structure is used instead to overcome this shortcoming and to describe any noncausal, implicit H a m i l t o n i a n system with ports [37, 38, 52]. This material is also treated in [53]. 3.4.1 P o r t C o n t r o l l e d H a m i l t o n i a n structures
Systems using Poisson
The basic structure we can use for an explicit Port-Controlled Hamiltonian System is a generalized Poisson manifold. A Poisson manifold is a manifold X with a generalized Poisson bracket {, } [37, 501. A generalized Poisson bracket {, } is a bilinear m a p from C ~ ( X ) x C ~ ( X ) into C ~ (X) which satisfies the skew-symmetry:
{F,a} =
-{a,F}
and the Leibniz rule: {F,G. H} = {F,G}. H + G. {F,H}.
82
3. Dynanfics of Rigid Mechanisms
Fig. 3.9. The bond graph of a Hamiltonian system with Poisson structure.
It is important to say that in this case, the manifold we consider is N O T a configuration manifold a.s the one in the Lagrangian framework, but a state manifold: each point of the manifoht (:orresponds to a physical state of the systein. f l ( x ) denotes the skew-symmetric 2 contravariant te.nsor field called generalized Poisson tensor associated with the bracket {, }, and defined by: f l ~ J d G , d H 3 = {G, H}. fl~(x) denotes the vector trundle morphism from T*2( to T X mat)piilg exact 1-forms (see Sect. A.5) to Hanfiltonian vector fiel(ts such that:
fl~(x)(dH)(dG) = {a, H}.
(3.11)
Choosing coordinates xl . . . . . x,,, in a neighborhoo(l of a point x of the manifold A', we may ret)resent the generalized Poisson tensor by the structure m a t f i x ,l ( z ) :
Jkt(x) = { x k , x t } ( x )
k . l = 1. . . . . m
(3.12)
where the (:oordilmtes are interpreted as coordinate fimetions. A generalized 1-port controlled Hamiltonian s y s t e m ( P C H S ) [50, 37, 19] on the generalized Poisson manifold X is defined by a IIamiltonian flmction t l ( x ) , a port interax:tion vector space V, a fiber bundle linear map 4)x from /) x X to ~I~X and:
"2 = f l ~ ( x ) d H ( x ) + r y = r
(3.13) (3.14)
where ~b~ denotes the adjoint map of O~ (see Def. A.5.5). Figure 3.9 shows a bond graph representation of the previous system. The. (1? elenwnt represents the energetic storage element with energy fllnetion H ( x ) . The element Mllg~ r represents the Poisson structure, and M I " F represents the power-coiltinuous element representing the fiber trundle linear map 0~ to the vector space )2 and its dual. The drift, vector field of this system is a I tamiltonian vector field defined with respect to the Poisson bracket. In Figure 3.9 this Hamiltonian vector field corresponds to the. pair M I K Y and (IJ. The interaction of the system with its environment is defined by the two adjoint port interaction maps cb~
3.4 Hamiltonian Formulation
83
and r corresponding to the M ~ F in Figure 3.9 and by the two port variables u E 1; and y c 1;*. The port variables are said to be power conjugated because their duality product expresses the rate of change of internal energy:
dH
d--~ = (y' u).
(3.15)
The structure of 1; • l;*, as in Eq. (3.1), therefore characterizes the port of the Hamiltonian system through which it exchanges energy with the rest of the universe. If the space of port variables is ~k, (which may correspond for instance to the choice of a basis ( v i , . . . , vk) of 1;), the interaction maps r are defined by vector fields ~i(x) = Cx(vi). Choosing some coordinates ( z l , . . . , Xn) for the Poisson manifold, we define the port-controlled Hamiltonian system as follows [50] [37]: k
~x(X) + ~ g{(x)~,
(3.16)
i:1
y{ : g{r (x) ~ (x)
(3.17)
where OH (X) denotes the gradient of the Hamiltonian function and g{ (x) denotes the coordinate vectors of the vector fields ~i (x). In a particular case the generalized Hamiltonian systems may be related to the standard Hamiltonian systems defined on symplectic manifolds, and this is when the generalized Poisson bracket satisfies the Jacobi identity: {F, {G, H}} + {G, { g , F}} + {H{F, G}} = 0.
(3.18)
In this case, because of the Darboux theorem [16], the generalized Poisson bracket becomes a (true) Poisson bracket [18]. Suppose, moreover, that the structure matrix has a constant rank 2n in a neighborhood of a point x0 E M, then the Jacobi identity (Eq. (3.18)) ensures the existence of canonical coordinates (q,p, r) = (ql,--., qn,Pl,... ,Pn, r l , . . . , rl) such that the structure matrix J(q, p, r) becomes:
J(q,p,r) =
- I n On 0nX~ 9 Olxn Olxn 0Lx~
(3.19)
Using these canonical coordinates, the Hamiltonian drift vector field J ( x ) ( d H ) takes the following expression:
OH
O~ = ~ ( q , Pi-§ =0
p, r)
OH ~-q (q,p,r)
i=l,...,n
j=l,...,l.
(3.20)
84
3. Dynamics of Rigid Mechanisms
The latter expression of the Hamiltoifian vector field shows that the coordinates may be split into two parts. First the coordinates rj are dynamical invariants, also called Casirnir functions [18]. The first 2n equations form a standard Hamiltonian ve('.tor field parameterized by the invariants r.
Remark 3.4.1. It is important to note that the Ca,simir fimctions only depend on the Poisson bracket and remain invariant for any Hamiltonian vector field defined with respect to this bracket. The Poisson structure corresponds to the intereonnection of the eleme.nts composing the system and therefore the Casimir functk)ns are a consequen(:e of the interconnection and not of the energy function. It should t)e noted thal tile dynamics of mechanical systems with nonholonomic constraints leads to the introduction of a [)racket on the constrained state space that satisfies the skew symmetry and the l~eil)niz rule, but that does not satis~' the .lacobi identity [54]. Note that the presented Hamiltonian fl'amework is more powerful than the Lagrangian one for the following reasons: 9 The ture ized 9 The and 9 The
Hamiltonian system is char~cterized by two entities: the Poisson st,rueand the energy function.The Lagn'angian framework is only characterby tile Lagrangian fimetion. Poisson structure represents the interconnection of the system's t)arts is independent of the energy fun(:tion. Ilamiltonian flmetion directly eo,'responds to the stored energy.
3.4.2 Port-controlled
Hamiltonian
Systems
using Dirac Structures
An even more general approach to model Hamiltonian systems ~mes what is ealhxt a Dirac slructure[49]. We start by introducing a Dirac structure on a vector sp~u:e. D i r a c s t r u c t u r e s o n v e c t o r s p a c e s . Consider a r~-dimensional real vector spa(:e V and denote by V* its dual a,s usual. A Dirac .str~tcture [49] on the vector space V is an m-dimensional subst)aee L of V x V* such that:
V(f,e) C L, {e.,f} = 0 where (,) denotes tile duality product. In order to give some constructive definition of different Dirac structures ill the sequel, we shall define Dirac structures in terms of two linear maps; this is called a kervtel representation of a Dirac stmtcturc [55]. Every Dirae structure L C )} • ~2" is uniquely defined in a basis /3 = {vl,.., vm} of ~2 by the pair of real mutrice.s (F, E) called str~Lcture matrices and satisfying the condition:
3.4 Hamiltonian Formulation E F T A- F E T = 0
85 (3.22)
by: L = { ( f , e ) C ~2 • ~* ; F f + E ~
= 0}
(3.23)
where / is the coordinate vector of f in the basis B of ~ and ~ is the coordinate vector of e in the dual basis to B of )2". A Dirac structure defined on a vector space Y encompasses the two structures of a Poisson vector space and a pre-symplectic vector space [49]. T h e condition of Eq. (3.22) implies Eq. (3.21). Such Dirac structures arise in electrical circuits (or their mechanical analogue) where Kirchhoff's laws actually endows the set of currents and voltages of the circuit or the rate variables and the co-energy variables of an LC-circuit (possibly with elements in excess) with a Dirac structure [56] [57]. D i r a c s t r u c t u r e s o n d i f f e r e n t i a b l e m a n i f o l d s . T h e definition of Dirac structures on vector spaces m a y be extended to differentiable manifolds as follows. Let Azl be a differentiable manifold; t h a n a Dirac structure [49] on AJ is given by a smooth vector sub-bundle L C TAA • T*A/t such t h a t the linear space L ( x ) C Txfl4 • T * A J is a Dirac structure on the tangent vector space TxAZl for every x c A~. More intrinsic definitions in t e r m s of duality and some characteristic distributions and co-distributions m a y be found in [49] [58]. In this case Dirac structures m a y also be locally characterized by a pair of structure matrices (depending now smoothly on the point x in ~4). Indeed, by choosing some coordinates (xl, .., x , , ) in some neighborhood of a point x c M, we now obtain a Dirac structure defined by a pair of matrices F ( x ) , E ( x ) depending smoothly on x such that: L(x) = {(f, e) 9 T ~ M • T ; M
s.t. F ( x ) f + E ( x ) e = 0}
(3.24)
Once again, for power continuity, a condition similar to Eq. (3.22) should hold, but for a state-dependent matrix. On this local representation it m a y be seen t h a t Dirac structures defined on differentiable manifolds generalize as well as (generalized) Poisson manifolds as pre-symplectic manifolds in the same way as Dirac structures do generalize pre-symplectic and Poisson vector spaces [49]. Remark 3.4.2. On a Dirac structure there exist also some additional closeness conditions which generalize the Jacobi identities of Poisson brackets, taking into account also the input port. T h e y also play an essential role in the geometrical structure and representation of Dirac structures; the interested
reader is referred to [49] [59] [58] [60].
86
3. Dynamics of Rigid Mechanisms
D i r a c s t r u c t u r e s a n d I m p l i c i t H a m i l t o n i a n s y s t e m s . Using Dirac structures the generalized Hamiltonian systems may be extended to implicit Hamiltonian systems. Such systems were introduced by Courant [49] and are extensively used in the analysis of symmetries in evolution equations [59]. Contrary to the statement in [49], it seems that such structures also play a fundamental role in finite dimensional systems [54] [58] [56] [61] [39], as we shall see below. An implicit Hamiltonian system with ports is defined by a state space, a differentiable C ~ manifold, denoted by Ad, a vector bundle over A/I called port interaction space and denoted by Wx, a Dirac structure L(x) on the vector bundle with fibers: TxAd • Wx x T*Ad • W* and a Hamiltonian function H(x) e Cc~(A4) by:
OH
(~,f,-~-x ( x ) , - e ) E ~D(x),
x E M
(3.25)
where x E M is the state of the system, the pair (f, e) are the external variables, also called port variables and the minus sign corresponds to the sign convention ensuring that the power going into the system is counted positively. From the power continuity condition it follows that an implicit Hamiltonian system as the one of Eq. (3.25) satisfies the balance equation:
dH dt = ( e , f )
(3.26)
Hence, if the Hamiltonian function is bounded from below, the implicit port-controlled Hamiltonian system is passive and lossless. Using a kernel representation of the Dirac structure L(x) with structure matrices: Fl(X), F2(x), El(x), E2(x), the Hamiltonian system of Eq. (3.25) becomes:
FI(z)2 + F2(x)f + El(X)~x (X) - E2(x)e
= 0
(3.27)
For a detailed exposure and analysis of such implicit port-controlled Hamiltonian systems, the reader is referred to [58] [56] [39].
3.5 N o d i c e l e m e n t s In the theory of physical systems, nodicity can be defined for an n - p o r t subsystem [62]. Intuitively, we would say that a nodic element is a physical dynamical subsystem with n > 1 ports whose state change does N O T depend on the absolute value of its ports but on their relative values. Nodicity can only be properly defined in a coordinate-free manner for a set of ports of a subsystem which are compatible: they should be based on the same vector space (see Sect. 3.2.1).
3.5 Nodic elements
87
Suppose t h a t we have a subsystem A with n ports and that its ports are all compatible and based on the same space. V. We can define nodicity for such a system. D e f i n i t i o n 3.5.1 ( N o d i e e l e m e n t s ) . A subsystem with n compatible ports
(p, ej) C ~ • "l)* based on a vector space V is said to be nodic with flow continuity and effort relativity (resp. effort continuity and flow relativity) iff the following properties hold: 1. Flow continuity (resp. effort continuity) ~_,p(t)
= 0
resp.
i=l
ei(t) = 0 '/=1
2. Effort relativity (resp. flow relativity) f ' ----[ " ( e l - e n , . . . , e n - I - en)
( resp. e~ = F ' ( f 1 - f n , . . . , f n - 1
_ fn))
(3.28)
where ei E V *T and fi E ))T are signals in •* and Y respectively. Note that the compatibility of the ports is necessary for summing the flows fz (resp. the efforts e,). In the electrical domain, all elements are nodic. This is due to the fact t h a t a required reference or special set of references does not exist: the behavior of any electrical component only depends on the relative potential of its poles. Furthermore, the sum of the currents flowing in the element should always be zero. The mechanical domain is special in this respect: it has physical elements which are N O T nodic, namely masses, which store kinetic energy. Masses are elements t h a t are N O T nodic because their kinetic energy is only a function of their velocity with respect to a so-called inertial reference. 3.5.1 I n e r t i a l r e f e r e n c e s It is well known t h a t in the expression of the kinetic energy of a mass, the motion of t h a t mass must be considered relative to a reference space belonging to tile class of inertial reference spaces. It can be seen t h a t this latter class corresponds to an equivalence class: two Euclidean spaces are said to be inertially equivalent if they translate with respect to each other with a constant velocity. This intuitive idea can be formalized by using the Lie group concept of the killing form, see Sect. A.8.3. T h e killing form is a quadratic degenerate form defined on sei(n). Consider two spaces E, and Cj and their relative twists tj E sei(n) and t~ E sej(n). If we denote the killing form on space i with:
88
3. Dynamics of Rigid Mechanisms
(,)t(~ : sei(n) x sei(n) --* R ; (t i', t i'') ~ tr(adt.~,adtJ, ) where ' t r ' indicates the trace operator, we can define the following equivalence relation for Euclidean spaces belonging to the same Euclidean system. D e f i n i t i o n 3.5.2 ( I n e r t i a l e q u i v a l e n c e ) . We say that two Euclidean spaces gi and gj are inertially equivalent iff their relative motion is represented by a constant tji c sei(n) and by a constant t ij E say (n) so that:
= (tj,t~)K~ = O. It can be proven t h a t the previous relation is a properly defined equivalence relation. Of all inertial equivalence classes we consider the class of inertial systems. Mechanical laws are invariant for changing references within this class. The kinetic energy of a b o d y Bi C gi is only meaningful if it is expressed as a function of the relative motion of Bi with reference to one of the spaces in the class of inertial systems. Furthermore, the laws of classical mechanics are invariant for changes of reference within the class of inertial systems. This means t h a t in the mechanical domain "special Euclidean spaces" exist and this is the reason why in this domain non-nodie elements exist, namely those masses whose energy has to be expressed as a function of a variable with reference to an inertial reference system. T h e existence of non-nodic elements in mechanical systems has been given proper attention [62] and should be taken into account when studying the different physical domains.
3.6 Springs Springs are those elements in the mechanical domain which store potential energy. W i t h the n a m e "spring" we do not m e a n a physical spring, but the ideal power-conserving concept of storage of potential energy. In modeling, it is important to discriminate between ideal elements and physical elements. An ideal element represents an ideal concept like storage of energy or dissipation. A physical element can be an existing object with a predominating behavior similar to the one of an ideal element, but nevertheless it always has w h a t are called parasitic effects. For example, a physical spring is never only a power-conserving element storing potential energy, but it always has some free energy dissipation and some distributed mass as well. In what follows, unless explicitly stated, we m e a n by the t e r m spring the ideal energy-conserving concept of potential energy storage. We consider two kinds of springs: geometrical springs and winding springs. The first kind is the one usually considered in the geometric literature as [63, 64, 10, 65, 66]. The second kind, which is often forgotten by mathematicians,
3.6 Springs
89
has important implications for the dynamic description of systems and it is relevant in practice. These springs are elements which are able to create different wrenches for exactly the same configurations of the bodies they are attached to. To understand this, just think of two wooden sticks connected by just one nail. T h e sticks will only be able to rotate around the axis of the nail. If we now connect the two sticks with an elastic band in a place close to the nail, and rotate one stick 360 degrees around the nail keeping the other stick fixed, we are exactly at the same position but with a completely differently generated torque. The m a j o r attention will be given to geometrical springs.
3.6.1 G e o m e t r i c a l Springs A spring is a nodic element and because of this, its definition always requires at least two bodies to which it is connected. In general, given m bodies associated with the Euclidean spaces g l , - . . , gm, we define a spring by its energy storage function. The element is nodic because the energy is a function of only the relative positions of the bodies which the spring is attached to. F~rthermore, any bodies can be used in the definition; these do not need to belong to any particular class of references. D e f i n i t i o n 3.6.1 ( S p r i n g ) . G i v e n m bodies c o n t a i n e d in m E u c l i d e a n spaces g l , . . . , g m , w e call a f u n c t i o n o f the f o l l o w i n g f o r m : V : S E a ( n ) x S E ~ ( n ) x . . . x S E , m - 1 --+ ]R
(3.29)
a s p r i n g c o n n e c t i n g these bodies.
An element h C S E ~ ( n ) x S E a ( n ) x . . . x S E ~ - 1 is sufficient to describe all the necessary relative positions of the m bodies with respect to each other. If a spring is a passive physical element 6, it must have a finite minimum. This is clear because otherwise it would be possible to extract infinite energy from this elastic element. It is also possible to define an equivalent energy of the relative positions of all the bodies (to which the spring is attached) with respect to any Euclidean space gj: v j : S E t ( n ) • SEa(n) • h i9, . . . ,
•
R; j 2 o h j3, . . , h • - l o h J m , V ( h } o h2,
).
(3.30)
T h e previous representation is useful for a direct interconneetion between the spring and the masses. Note t h a t Eq. (3.29) is a function of m - 1 relative positions of the elements to which the spring is connected, and in Eq. (3.30) of m relative positions with respect to an additional space. It is characteristic of nodicity t h a t the element is characterized by an energy function of n - 1 relative positions where n is the number of power ports with respect to an additional space Cj. 6 Intuitively, a passive element is an element which cannot supply infinite energy and therefore all energy functions of physical elements should be bounded from below.
90
3. Dynamics of Rigid Mechanisms
C h a r a c t e r i z i n g e q u a t i o n s o f a s p r i n g . To calculate the constitutive equations of a spring, we need to consider the differential of the energy function. The differential is a function of the form: dr: SEi(~) x ...
x
sE~-'(~)
-~ T * S E i ( ~ )
• T * S E ~m - - 1 (~).
•
In a certain point h = (hi,'",hm-Z3m , E S E ~ ( n ) x ... for a velocity ]z 9 T h { S E ~ ( n ) x . . . x T h ~ - I S E ~ - I ( n ) , such t h a t d V ( h ) applied to (h,.]z) represents the a change of relative positions h. To simplify the d Y ( h ) to se~(n) x ... x s e ~ _ l ( n ) by means of X h : = )Ch~ X . . . X X h . ~ - i , where )(~h~' : = (71"Jh ) - i
S E m - l ( n ) , and the differential is increase of energy due to description, we can m a p X~, which is the dual of and ~rhj is the intrinsic x
m a p to the Lie algebra reported in Figure 1.9. We get: dT~ : S E I ( / ~ )
x ...
X
SErum-l(??,) --~ 8 e ~ ( r t ) x . . . x 8 e * _ l ( n )
;
h := ( h i , . . . , h'~-h,~ , H X*hdV(h).
(3.31)
If we then define 1 "1 7Tin--1 ( h r n - 1 T V : = 7rh~ (h2) x ... x h~n~_l\ m ) = tl X ...
m-1
X tm
and
W v := df/(h) the increase of energy of the spring at a certain instant of time is: i i m - l . tm m-1 = ~ = ( W v , T v ) = w2t 2 - 4 - . . . ~--- w m
(3.32)
where w iJ E se~(n) denotes the wrench applied by b o d y Bi to the spring connecting Bi and By and is expressed in the space of By or - w ~ , which is the wrench t h a t the spring applies to b o d y Bi expressed in the space By.
Remark 3. 6.1. If we would change the spaces in which we express some of the twists in Eq. (3.32) by using the transformations reported in T h e o r e m 1.3.6, then the corresponding wrenches should change accordingly in order to keep invariant. This implies t h a t if we consider a simple spriIlg, which connects just two objects i and j, Eq. (3.32) becomes V = w i, t3iJ and since t~ = -Adh~t}, in order to obtain V = wjtj,i i we need wji = ,Ad.u{wJ. , which gives the intrinsic relation between the wrenches on the two sides of the spring (expressed in the same space, they should be opposite wrenches). W i t h the same reasoning we can see t h a t - - W ii,j , corresponding to the wrench applied by the spring to b o d y i and expressed in the same space, is equal to wj.i This is a natural consequence of the fact t h a t a spring is defined as an energy function of the relative positions of its hinge points. In [67, 68], these
3.6 Springs
91
relations are proven for certain conditions of the energy flmction expressed with coordinates. T h e presented method seems more natural because it starts from the axiom t h a t a spring is nodic and as such, its energy function should only be a function of its relative configurations. Furthermore, the presented approach is treated without using coordinates. It is now possible to describe a general spring in ttamiltonian terms. Tile following equations hold:
(3.33)
= xhTv . OV
W v = Xh Oh where it, can be seen t h a t the Poisson structure is degenerate and that if the inputs arc'. null, the conserved quantities (Casimir flmctions) are any energy flmctions V(-). Figure 3.10 gives a representation of the elastic element in c.oordinate-free bond graphs. If s is an inertial Euclidean space, the m 1junctions corresponding to t ~ , . . . , t~ are the power ports to which we could directly attach inertial elements. Note that the nature of the M T F directly attached to the storage r element is different than that of the other m - 1 1VIT]Fs. This is due to the fact that it is a m a p p i n g not between vector spaces, but between the vector space sel(n) x . . . x s e m - l ( n ) and a vector bundle. Given a spring flmction V, we can define a restriction of V considering the relative motion of just two of the bodies B 1 , . . . , Bin. Suppose these two bodies to be B~ and Bj. It is then possible to define:
J . . . . , h ~ ) : SEf Vi3(h~,...,h3i_l,hi+,
R;
h;
V(h
o
o
By considering the differential of this function and projecting it to se~(n) as in Eq. (3.31), we obtain the wrench corresponding to an external bond with dual twist ~, represented by a 1-junction which is labeled ~ in Figure 3.10. Consider now two Cartesian coordinates ~Pi and ~P3 for the spaces s and g3 in tile following way. If we denote by r~ c SE~ (n) the relatiw, position of i with respect to j for which the potential energy V/3 is minimum once the other given relative positions (h~, . . . , h i J_ l , h iJ+ l , . . . , h ~ ) are fixed, then we can choose k~i and ~Pj in such a way t h a t ~ o 7~ o ~Pi-1 = I, the identity matrix. We (:an then study the elastic behavior and the associated twists and wrenches by using coordinates. A relative position of i with respect to j is then represented by an homogeneous matrix H~ which has the form presented
in Eq. (1.15). It is now possible to follow the line of [69, 64, 70], and, using coordinates, wc give an expression of the elastic wrenches as functions of the relative
92
3. Dynamics of Rigid Mechanisms
Fig. 3.10. The bond graph of a spring with m hinge points.
positions of the objects a t t a c h e d to the spring. This will be done in C h a p t e r 5 for a specific application. F u r t h e r m o r e , we can t h e n consider the b e h a v i o r of the p o r t corresponding to the position of space i w i t h respect to j in the case where (h~,. . . , h i3_ i , h i + l , . . . , h j ) are constant. This case was first studied in [21] a n d t h e n in [67, 68, 70]. It is possible to i n t r o d u c e the concepts of center of stiffness and center of compliance 7. C e n t e r o f S t i f f n e s s . Suppose now t h a t Vij has a m i n i m u m in r Ji and consider t h e following two energy functionsS: ~ ( h i ) : S E i ~ ~ ; hi H V iJ (r~J o h-(1)
(3.34)
7 It has been shown in [21] that in general the center of stiffness and the center of compliance do N O T coincide. s We do not specify the dependence of Vij on the other configurations here, in order to simplify the notation.
3.6 Springs
93
and
(hj) : s :j
;
hj H v/(h
or ).
(3.35)
By construction, I),(.) and ~ ( - ) have a ininiimun at the identity of S E , ( n ) and S E j ( n ) respcctive.ly and we have l)/(h~-l) = f/j(K~,(hi)), where K ~ is the hybrid conjugation map of Def. 1.2.8. We can consider d ~ : SEz(n) -~ T * S E I ( n ) with l = i,j. The stiffness map Kl is then defined as the linearization of d ~ around the identity et c SEl(n). These mappings have the following form:
d ( d f / ( e " ' ) ) ,=o
l=i,j.
As is well known in tensor calculus, it is possible to see that the linearization of d~(hz) transforms tensorially only in points ht such that d~(hz) = 0, which is the (:ausc for Kt. With the previous definitions, it is possible to prove that:
Kj = Ad*; K, Ad~;
(3.36)
which relates the stiffness in the two spa~:es with respect to one another. Now consider two Cartesian coordinates ~Pi and ~'~ for the space $~ and g3, respectively. The representations of I)~(.) and I)3(-) in these coordinates have the form:
~ : S E ( n ) --~ R : H ~--~~(~Pl o H o~Pz-~) l = i,j and in a similar way, we denote the numerical representations of K~ and K s we found using the coordinates ~Pi and ~Pj, so by /~i and /~j. A proper treatment of the center of stiffness (COS) is reported in [21]. The. COS is a point in space defined such that the numerical representation of the stiffness takes a special form, name.ly one. in which there is minimum coupling between translation and rotation. It is possible to state the following symmetry property -also called poT~-indifference in [67] which seems more natural in the presented framework.
If there is a point p~ in space ~ such that, using Cartesian coordinates ~P~ for which k~ (p~) = O, the stiffness matrix numerical representation [fz takes a special f o ~ t , e.g. the one in which Pi corresponds to the (:enter of stiffness, then a point P3 in Ej and coordinates ~Pj exist for which ~Pj(pj) = 0 such that ffj = Ki and pj = r~(p~). T h e o r e m 3.6.1 ( S t i f f n e s s S y m m e t r y ) .
P r o o f . This is a direct consequence of the application of Eq. (3.36) considering that, as shown in Sect. 1.3.5, the numerical representation of Ad~ is l
the identity, where r~ is the minimum energy-relative position in which the frames corresponding to ~Pi and ~P~ coincide. ..
94
3. Dynamics of Rigid Mechanisms
Remark 3. 6.2 (Port Indifference). W h e n the spring is at its minimal energy r~, the previous theorem proves that the center of stiffness, if existent, is a unique point in space. For $i and $3 this point coincides in the relative position equal to r~. The same result was found in [67], but here it is presented as a direct consequence of spring nodicity. A lot of interesting work has been done on the synthesis of spatial springs using simple linear or screw springs [65, 66].
3.6.2 Winding Springs The winding spring is a kind of spring often overlooked by mathematicians, yet it is the only rotational spring that can be easily implemented. Intuitively, if there is a geometrical spring between just two bodies and we rotate one of the two bodies by 360 degrees around a fixed axis, we are back to the previous configuration and have the same forces between the bodies. Such a spring can be easily implemented for control purposes, but in mechanical terms it is not easily realizable. We only define this type of spring between two bodies Bi and B j which are connected by a kinematic pair with configuration manifold Q~ C SE~ (n).
Definition 3.6.2 (Winding configuration). Consider two bodies Bi and Bj which are connected by a kinematic pair with configuration manifold Q~ C SE~ (n). A winding configuration is a connected manifold Q~ strictly greater than QJ with an equivalence relation ~ defined for Qi" -j This equivalence relation should be such that equivalent points are isolated and Q~ = Q~ / ~ . It is now possible to define a winding spring
Definition 3.6.3 (Winding s p r i n g ) . A winding spring between two bodies Bi and B3 is a spring with a lower bounded energy function having the form:
such that ql "~ q2, ql ~ q2 implies Vw(ql) r V~(q2). The easiest example of a winding spring is a rubber band connecting two sticks that can just rotate with respect to each other around one axis. Clearly the configuration manifold of the kinematic pair describing the relative position would be a circle. Nevertheless, the winding configuration manifold is homeomorphic to a straight line the equivalent points of which represent the periodicity of 21r for the circle.
Remark 3.6.3. It is very important to realize that, if one wants to describe systems with winding springs, it is N O T sufficient to consider only the kinematic configuration of a mechanism. Instead, for each separate winding spring, the configuration Q~ should be used. This is necessary in order to cope with different elastic forces for equal configurations in Q~.
3.7 Inertias
95
3.7 Inertias In this section we analyse the dynamics of a rigid body in detail. In the previous section we described springs. We saw that it is not important which reference we use to describe the spring since it is a nodic element. Masses are very different and they are in fact the only non-nodic mechanical elements. This is due to the fact that kinetic energy must be a function of 'across quantities' which must be referenced to a subclass of possible references, namely to the class of inertial references treated in Sect. 3.5.1. 3.7.1 K i n e t i c c o - e n e r g y a n d e n e r g y Kinetic energy must be expressed as a function of the relative motion of a body with respect to an inertial reference. From now on we will consider a Euclidean space $0 as belonging to the inertial class. We reference everything with respect to E0. Even basic courses of mechanics teach that it is well known that the coenergy with respect to Co of a point of mass m and velocity v with respect to an inertial reference is: E;(v)
1
=
2
.
One could wonder why the previous quantity is called co-energy. Formally speaking, E~ is a function of a velocity, and as a function it differs from: Ek(p)
1
=
2
which is called kinetic energy of the mass, where p denotes the momentum. For more details on the difference between energy and co-energy see Appendix B or [46, 45]. We can now consider a space Ci with which a mass distribution function p : Ci --+ ~ + is associated. This function associates a mass density with each point in Ci. We can then formally define a b o d y subset Bi C Ei as: Bi := {x 9 Ci ; p(x) > 0}. Furthermore, each Euclidean space has an n - f o r m S2i corresponding to the volume form. The mass of a b o d y Bi can thus be defined as:
rni = f_ pi(p)S~(p).
(3.37)
i
Now consider a relative motion of $i with respect to E0. The kinetic co-energy of an infinitesimal volume element dV in a certain point p 9 Ci which has velocity v with respect to Co is:
96
3. Dynamics of Rigid Mechanisms
dE; = ~p(p)vZdV. Tile total energy is nothing else than the integral over all the space. To handle l he energy easily, we h)ok for an expression of tile velocity 7, which is a fimetion of t ii,O E se~(n), tile twist of space Ci with rest)cot to Co. Consider for this purpose any Cartesian coordinates ~i,qJo and express the relative position of C, with respect to go as an element:
R c SO(n), p c R ' . To any fixed point p~ c C~, the point Po = corresponds in the inertial space go. Denoting with capital letters the numerical representation of a point, we obtain, using coordinates: where
h~
This implies that the velocil,y of the fixed point Pi c C~ (P~ = ()) for the spa~:e Co in the chosen coordinates is:
z,0
where the matrix containing ~ and v is a numerical representation of l~ , the twist of the relative motion of C~ with respect to 80 expressed in se~(7~). It is possible to see that, after few manipulations:
where, by ~ we denote the antisymmetric matrix such that ~y = x A Y Vy and f2 = cb. In other words, ~ corresponds to an antisymme.tric matrix which represe.nts the vector product of tile vector x with another vector of the same dimension. We have shown therefore that for any fixed point Pi C C~ there is a linear map from se,(n) to the w.loeity of the point p~ with respect to the inertial reference C0. This also implies that the square of the magnitude of/b 0 can be expressed as a quadratic form:
IIP(,II '2 = "l(r lt,l ( P~)T~ where
R R; = ,
3.7 Inertias
97
and Ti = (w T vT) T. The m a t r i x ]ff/(Pi) can be singular for a single point Pi, but the sum of ]/7/(Pi) for a sufficient number of noncollinear Pi gives a nonsingular matrix. A consequence of this is t h a t the integral of this m a t r i x over a nonzero volume would always give a nonsingular matrix. Hence the total kinetic co-energy is:
* ) Ek(Ti
:
1TTiT i
where
f :: rE, M(P{)p(R0m(P,) Because of the previous arguments concerning the non-singularity of the integral of 217/(.) and because of physical reasons, [ is always a positive definite matrix. The physical reason is t h a t if we had a singular ~f, a non-zero twist would exist with no energy associated with it. For an object with a finite volume, this is clearly impossible. It can be seen t h a t [ represents a quadratic form defined in the Lie algebra sei(n) which will be called the inertia tensor in b o d y space. If we indicate with I this quadratic form on sei(n), of which i is a numerical representation, we can define the following:
( , } I : s e i ( n ) X s e i ( n ) ---+ ]l~; ( t l , t 2) ~ ( t l , t 2 } i .
(3.38)
In a coordinate-free form, we can t h e n see t h a t the co-energy is equal to: * i,O
1 /ti, 0 ti,O \
T h e quadratic form I uniquely defines a bijection between elements of sei(n) and elements of se*(n) such t h a t m i E se* (n) corresponds to t i
mi(tt)
:
(t~'~
Vt~ e sei(n).
The quantity m i, corresponding through the inertia tensor I to t~'~ is called the momentum, and it corresponds to the twist t~'~
Remark 3.7.1. Note t h a t the quadratic form I in the Lie algebra is a constant quadratic form, independent of the relative position of $i with respect to any other space. Therefore it is a quantity intrinsically associated with the space $i to which the b o d y belongs. It is possible to see that, by the group operation of left transport, this quadratic form defines a left invariant R i e m a n n i a n metric in the Lie group SEi (n). Since I is nonsingular, we can define the following function of m i, which will be called kinetic energy of the body:
98
3. Dynamics of Rigid Mechanisms
E k ( m ~) = ~1 ( m i , m i )y.
(3.39)
Where ( , ) y denotes the quadratic form on se* (n) corresponding to Y ----1-1. Numerically, we have for corresponding rn i and t~'~
E k ( m i)
:
E;(t~ '~
:
1 ~m
i~o
t~' .
3.7.2 T h e s e c o n d law o f d y n a m i c s Newton's second law of dynamics states that the variation of the m o m e n t u m of a b o d y has to be equal to the applied wrench for an inertial observer. With the notation used, if we consider the space $0 as our inertial frame, the second law of dynamics takes the following form: ~h~ = w ~
(3.40)
where m ~ := Ad*h~m i is the m o m e n t u m of a b o d y for the observer g0, w ~ is the wrench applied to the body expressed in the inertial space and A d ~ is a mapping from se* (n) to se~ (n) at h~. Since the m o m e n t u m and the wrench are elements of se~(n), we have:
w ~ = Ad*h~W i. The second law of dynamics expressed in b o d y space becomes:
d o()
"
9 i We therefore have to calculate the time derivative of Adh~(t)m . To do so,
consider hio(t) as the following function of time:
h~
= h~
o hi(t) = h~
o e t~'~
where we have chosen hi(t) = e t~'~ to have a relative twist equal to t~'~ at time t = 0. The used exponential is the group exponential reviewed in Sect. A.8.6. The relative motion h~ represents the relative motion of space Ci with respect to g0 and passes from h ~ (0) at time t = 0 with a velocity of which the corresponding twist in gi space is t~ '~ c sei(n). We therefore get: i,0
h~o(t) = (hO(t))-i = e-t~ t o hio(O). Furthermore, it is possible to see that:
A (o +o, ohm(o)) = A<+o, o A h (o)
3.7 Inertias
99
and therefore:
Ad i ~ r
9 ) =Ad*h~o ( o) oAd*e - #% i'
o h~(O)
_ti,ot
where it is important to note t h a t the adjoint m a p at e ~ is the usual group adjoint defined in Def. A.8.5. Finally, we use Def. A.8.7 for the dual of ad*~,o~and since Ad*~( ~ is constant, we obtain:
ddt (Ad*hs(t)) t=o = - A d ~ ( ~ 1 7 6 adtt'~ and since
Ad*h~ is a linear m a p we obtain: \
Ad*
* i Adh~(t)m (t)]~
i= d
~
--.. .. --Aah~(o)aar
m i
9 9i + Adh$(o)rn .
t=O
Furthermore, since
gni = adr
Ad*h~(O) is a full r a n k linear map, we obtain:
i + wi
(3.41)
which is an expression for Newton's second law in body space. When we use the numerical representation of ad introduced in Eq. (1.31) and the corresponding coordinates for twists, the previous equation takes the following form:
(M~)T = adT o(M~)T + (w~)T.
(3.42)
Factorizing the matrices, this can be written as:
(-k,0 -k,0. ok k 0 )/
+
(3.43)
Remark 3.7.2 (Group structure). It is i m p o r t a n t to stress t h a t the correspondence between Eq. (3.41) and Eq. (3.40) is only a consequence of the description of the relative motion, and this description is true for any covector mapping, independent of inertial parameters. It is a characterization of the group structure and it is independent of the value t h a t the inertia tensor ii has for the b o d y i. 3.7.3 A H a m i l t o n i a n
f o r m u l a t i o n o f a r i g i d b o d y motion: t h e
Lie-Poisson bracket In the general Hamiltonian formulation we have seen that any Hamiltonian system with ports is characterized by a Poisson bracket, an energy function and input vector fields corresponding to an input transformer in bond graphs
100
3. Dynamics of Rigid Mechanisms
terms. The Poisson bracket represents the interconnection and is independent of the energy function. If for the m o m e n t we ignore potential energy and thus concentrate our s t u d y on the motion of a free rigid b o d y floating in a space without gravitation, then the Hamiltonian corresponds to the following kinetic energy: H(m
= Ek(m
=
1
i
i
, m )y
as reported already in Eq. (3.39). Since the state is represented by the mom e n t a m i E se~ (n), the Poisson bracket we are looking for should be defined on functions of se~ (n).
Remark 3. 7.3. It is i m p o r t a n t to realize t h a t the quadratic form I (and therefore Y) expressed in b o d y coordinates is constant and independent of the b o d y configuration. The Hamiltonian function is therefore ONLY a function of m i. This characterizes what is called a left-invariant metric on SEi(n), and implies t h a t V H = Y m i = t~'~ is the twist of the relative motion of g,i with respect to go expressed in space $i, where the notation V H denotes the gradient of H. Since V H = t~'~ we can write Eq. (3.41) as:
~t i = ad~THmi + w i. This means that the Hamiltonian vector field describing the dynamics of an input equal to zero (w i -- 0) is ad~Hrn i. To find the corresponding Poisson bracket, we need to consider the application of this vector field to a general function F : se* (n) --~ ]~. The application of this vector field to F gives a new function which corresponds to the Poisson bracket {F, H}. This function, being the application of the vector field to a generic function F , can be expressed as:
(ad~H mi, V F ) W h e r e (,) indicates the dual product of a co-vector and a vector. By the definition of adjoint we get:
(ad~H mi, V F ) = (rn i, a d v H V F } : (m i, [VH, V F ] ) where [,] corresponds to the algebra c o m m u t a t o r of se{(n) and the result reported in T h e o r e m A.8.1 has been used. Note t h a t since F ( - ) , H ( . ) are functions of elements of se*(n), their gradients V F ( . ) , V H ( . ) are vectors belonging to sei(n). We therefore define as Poisson bracket: {F, H } ( m {) := (m i, [ V F ( m i ) , V H ( m i ) ] ) T h e previous bracket is a well-known bracket called the Lie-Poisson bracket. If we u s e X u ( m i) to denote the Hamiltonian vector field with respect to
3.7 Inertias this Poisson bracket for any Hamiltonian function H : l~q. (3.41) takes the following form:
set(n ) ----+R,
101 then
?:ni = X H ( m i) q- w i"
Remark 3. 7.4. The reasoning followed makes clear t h a t the Lie-Poisson bracket satisfies all the properties a Poisson bracket requires and that it is defined on generic functions of the dual of any Lie algebra. This bracket characterizes the group geodesic flow of any left-invariant Riemann metric of a general Lie group G. In general this Poisson bracket is singular. The symplectic structure, defined by the restriction of this Poisson bracket to the current leaf which is defined as a level set of the Casimir functions of the bracket, is called the Kirillov form [35]. The mapping
sei(n) -+ se*(n) 9 t i,0 i H ad*iom i '
is linear due to the bi-
ti'
linearity property of the algebra commutator and the mapping is clearly a function of m/. We denote this linear mapping with rniA. Using this notation and adding the external applied wrench, we can write: ~hi = (miA)t~ '~ +
(3.44)
wi.
It can easily be seen that the previous equation expressed in coordinates, can be obtained directly by manipulating Eq. (3.43) in order to get:
= \M~
!~v~'~ + (wi)T
and therefore a numerical representation of
(3.45)
miA
is:
Eq. (3.44) shows that the m o m e n t u m dynamics in b o d y space is independent of the configuration of the body. The position of g~ relative to go does not play any role in principle. Nevertheless, if we associate a potential energy depending on the configuration of space gi with respect to go, we must somehow account for it. Consider a potential energy V : SE~ -~ •. We have seen the constitutive equations of a spring in Eq. (3.33). In this case, where we only deal with two bodies and the force applied to the mass is of opposite sign, we have the following equations, similar to the Lie group representation in [19, 18]:
(ho'~ ( ,0 Xh~176176 ( ~ (0,) ~ ~h~] = -mdho o X*hO m~A ] \~ml/-~ ~- Zdho wi to= (0 Adh o) (~176 k~m~/
(3.46)
102
3. Dynamics of Rigid Mechanisms
where H(h ~ m ~) = Y(h ~ + 1 (m i, mi)y and :=
(
9 7( 2 j
--1
7~2
" :=(h~)
--
"
(3.47)
J m a p s a velocity belonging to the tangent bundle of SE~ (n) to 7(h~ an intrinsic twist in sej (n) (see Figure 1.9), and the m a p Xh~ is the inverse map. The m a p
3.8 Dissipation elements By the first principle of thermodynamics, energy cannot be destroyed but only transformed. This is what is m e a n t by "energy dissipation". In this case a reconvertible energy is irreversibly t r a n s f o r m e d into t h e r m a l energy. It is important to realize [45] that for a lot of applications, the environmental t e m p e r a t u r e can be considered constant and the concept of free energy is implicitly used instead of energy. In m a t h e m a t i c a l terms, free energy is defined as the Legendre transformation of energy with respect to t e m p e r a t u r e . One could say t h a t free energy is destroyed when by an isothermical transformation real energy is converted to the t h e r m a l domain. After this short discussion we can now treat dissipating elements of a mechanical system. In the framework previously explained, a dissipative element can be seen as a subsystem with two energy ports: a mechanical one and a t h e r m a l one. Energy will always flow toward this dissipating element through the mechanical port. W h e n we are interested in free energy, the thermal port is usually not considered. In b o n d graphs, such a dissipative element is represented by the bond graph element net. We will now analyse the structure of a mechanical port of a dissipating element. 3.8.1 Irreversibility As we have stated before, the dissipation of free energy represents an irreversible transfer of energy. If we represent a purely dissipating element as a sub-model net with one energetic port, this implies t h a t the positive flow of energy only goes towards the sub-model Ft. This means t h a t if the vector space characterization of the power port of the element is Y, we have for the positive convention of inward power:
f~ei > O, V(f i,ei) c ~2 x V*. Definition 3.8.1 (Impedance Dissipating m a p ) . A dissipative element in impedance form between the Euclidean spaces gi and gj is a tensor field with the following form:
3.9 Actuators and Interaction ports
103
RI : SEJ(n) --+ sym(To,2SEJ(n)) which associates a two covariant, symmetric, semi-positive definite tensor with each relative position of the two bodies attached to the dissipating element. D i s s i p a t i n g m a p ) . A dissipative element in admittance form between the Euclidean spaces Ei and Ej is a tensor field with the following form:
D e f i n i t i o n 3.8.2 ( A d m i t t a n c e
RA : SEa(n) -+ sym(T
,oSEd(n))
which associates a two contravariant, symmetric, semi-positive definite tensor with each relative position of the two bodies attached to the dissipating element. A m a p p i n g of the form RI is said to have an impedance form because it can be used as a local m a p p i n g from "generalized velocities" belonging to Th~SEJ (n) to "generalized forces" in Th~ SEJ(n). The a d m i t t a n c e form on the other hand, can be used to m a p from "generalized forces" to "generalized velocities". If RI(.) (resp. RA(')) is nonsingular everywhere, it is obviously possible to associate a m a p p i n g RA(.) (resp. Rx(-)) corresponding to its inverse at each point h~ E SE~ (n) in a unique way. 3.8.2 A l g e b r a
representation
To describe the interconnection of dissipative elements in a more convenient way t h a n as Rx(') or RA(-), we express t h e m as an operation in the algebra sei(n) or equivalently sej(n). We can t h e n consider the following mappings:
Rx(h~) :sej(n) -+ se~ ; tj H (Xh~ o Ri(h~) o Xh~)(tj) :se;(n) +
;
o RA(h ) o
or
(3.48)
(3.49)
Due to the semi-positive definiteness of the original operators RA and Rx, we have Fti(h~)(ti)(ti) > 0 and RA(h~)(wi)(wi) >_ O. Furthermore, when the operators are non-singular, they are also strictly positive definite.
3.9 Actuators
and
Interaction
ports
Actuators are ideal elements generating wrenches between two bodies. We can associate an actuator with each kinematic pair of which the wrenches belonging to 14]Ai, or to a subspace of it can be set to any value. These elements are ideal and are used to interact with the system. F~rthermore, we also need to express the above for a system which can interact with the environment in a less structural way t h a n through kinematic pairs.
104
3. Dynamics of Rigid Mechanisms
6
7
5
11111]
0 Kinematic graph
0
6
:_ \ 3"
6
7
7
.5./1"
/"
"
.4
0 Lagrangian tree graph
6
Spring graph
5/ 6
7
5 3 9
19
29
Dissipation graph
19
7
*4 29
Interaction graph
F i g . 3.11. The various graphs.
3.10 E l e m e n t s I n t e r c o n n e c t i o n H a v i n g s t u d i e d all t h e e l e m e n t s w h i c h c a n b e p r e s e n t in a p h y s i c a l m e c h a n i c a l l u m p e d s y s t e m , we c a n now c o n s i d e r how t o i n t e r c o n n e c t t h o s e e l e m e n t s . W e h a v e a l r e a d y given s o m e c o n s i d e r a t i o n s on t h e t o p o l o g y of i n t e r e o n n e c t i o n s of b o d i e s b y m e a n s of k i n e m a t i c p a i r s in Sect. 2.2. W e n o w e x t e n d w h a t h a s b e e n p r e s e n t e d for t h e i n t e r e o n n e e t i o n t o all t h e s e p a r a t e elements. Before d o i n g so, s o m e r e m a r k s are called for: 1. A n y p h y s i c a l e l e m e n t h a s a c e r t a i n n u m b e r of p o w e r p o r t s t h r o u g h w h i c h it e x c h a n g e s e n e r g y w i t h t h e r e s t of t h e universe.
3.10 Elements Interconnection
105
2. The dynamic description of the element is based on equations which relate its port variables: efforts and flows. 3. The flow at each of its ports corresponds to a twist which is ALWAYS a quantity t h a t relates two different spaces. 4. For nodic elements these two spaces can be anything, but for the masses one of these spaces M U S T be inertial. Point 3 implies t h a t we can describe a general interconnection of physical elements as an oriented graph in which its vertices correspond to all the considered spaces; for this reason the vertex set V corresponds to the Euclidean system, and each of the dynamic elements is represented by one or by a set of edges in the case of a multi-port element as the geometric springs presented. The total graph GT m (VT, ET), for which VT = VB U {0} with {0} is the vertex corresponding to the inertial space g0, and ET = EK UEB UEs UED UEI, representing the complete interconnection, is therefore composed of the following subgraphs: 9 K i n e m a t i c g r a p h GK := (Vs U {0}, EK) This graph corresponds to the graph we presented in C h a p t e r 2, where the vertex set VB corresponds to the set of bodies VB (and associated spaces) plus in some cases {0}, and the set of edges EK corresponds to the ideal kinematic pairs (see Sect. 2.2). 9 L a g r a n g i a n t r e e g r a p h GB := (VB U {0}, EB) If we consider only one c o m m o n inertial reference, we can, as a consequence of point 4, represent all the inertial elements in the system by what is called a Lagrangian tree [19]. T h e set of vertices is equal to the set of bodies plus an extra vertex representing an inertial Euclidean reference space which we denote with the index 0. The set EB is composed of edges pointing from each vertex corresponding to a b o d y (each element of VB) to the inertial vertex reference {0} 9 (see Sect. 3.7). 9 S p r i n g s g r a p h Gs = (VB [-J {0}, E S ) To each spring we can associate a set of edges. The union of these edges will correspond to E s . To be physically meaningful, each spring should be attached to bodies with non-zero mass (see Sect. 3.6). 9 D i s s i p a t i o n g r a p h GD = (VB U {0}, ED) Each edge in ED will represent a p a r t in the graph where free energy can be dissipated by means of l:t elements (see Sect. 3.8). 9 I n t e r a c t i o n g r a p h GI(VB U {0}, E I ) The edges E1 indicate the place where an external system is able to interact with the mechanism. This g r a p h is useful to define a work space configuration X in a general way. If an edge (i,j) E Ex, this means t h a t the environment can apply a wrench between space Ei and Sj. Each edge is 9 Note that the orientation chosen in [19] is the opposite of the one proposed here. This orientation has been chosen because, to intrinsically consider the twist of a body with respect to an inertial frame, we need to consider the positive isometry from the Euclidean space corresponding to the body to the inertial space.
106
3. Dynamics of Rigid Mechanisms
therefore a representative of a power port through which the environment can apply a wrench. As a consequence, if the corresponding twist is different from zero, it exchanges energy with the system. For a robotic space hand, which is only used to implement tip grasps of objects floating in space, we could consider the interaction graph as composed of edges connecting the vertices corresponding to the finger tips of the hand. If the robotic hand is connected to a fixed base on earth, edges connecting each vertex representation of the tips should also connect to the fixed base so wrenches can be generated between them. The graph Gp = ( VB U {0}, Es [2 EK U ED [2 Ex) is called the primary graph and the graph Gc = (VB [2 {0}, Es U EK U ED U EI [2 EB) is called the port connection graph in [19, 46]. A simple example of the introduced graphs is given in Figure 3.11. We considered the joint connecting b o d y 5 and 7 as elastic. To model this, b o d y 6 is added. Between body 6 and 7 there is a kinematic pair where a motor is attached and body 5 and 6 are connected with an elastic element representing the elasticity of the joint. Furthermore, we suppose that the robot can interact with the environment only by means of b o d y 7 and 0 between which the environment can apply forces. 3.10.1 K i r c h h o f f ~ s laws a n d p o w e r c o n t i n u o u s i n t e r c o n n e c t i o n . For the total graph GT, b o t h generalizations of Kirchhoff's laws for electrical circuits hold. First, it is possible to see that the sum of the twists along any cycle of the graph vanishes. This is a direct consequence of Theorem 1.3.8, which yields: E Az ,r(i) ~ h~(i) k ~ l(*) = 0 iCC
(3.50)
where C indicates the set of edges belonging to a cycle in GT, r(i) the vertex towards which the edge is pointing and l(i) the other vertex of each edge i belonging to the considered cycle. In the example of Figure 3.11, an element of C could, for example, be composed of (3, 0), (1, 0) c G s and (3, 1) E Gk. The vertex k could be any, but to obtain the expression in T h e o r e m 1.3.8, it should be a vertex belonging to the cycle. Considering the just mentioned cycle in the example, we could choose k -----0 and the generalized Kirchhoff's law would become:
t o + t o + Adhot~ = 0 For the second Kirchhoff's law, the existence of the Lagrangian tree is fundamental. This law corresponds to the third law of dynamics on action and reaction. In graph terms, it states that the sum of the wrenches along any co-cycle, which is also called the cut-set, vanishes in the graph GT.
3.10 Elements Interconnection
107
This means that if we consider the set of edges ,')s to each vertex of the graph, the sum of the wrenches corresponding to ttle edges will be zero. This law can be analytically expressed as: 0 = 0 Z Ad*~(,)wz(~(~)
(3.51)
where C'k indicates the set of edges adja(:ent to a vertex k, and wz(i) the wrench corresponding to an adjacent edge oriented fronl l(i) to r(i), where either r(i) = k or l(i) = k. This law must be satisfied in order to have power continnity in the intercorlnection, as will be seen later. These two laws make possible a direct correspondence between the total graph GT and a bond graph junction structure. The bond graph junction structure is created by substituting a 1-junction for each vertex and either the top or the bottom representations of Figure 2.7 and Figure 2.8 for each edge. Once these substitutions have been made, the previous laws correspond to basic junction laws, as expected. As alre,'~ly said, we consider the Lagrangian tree to be a spanning tree (see Def. A.2.10) for the total graph G,l'. This means that each vertex except the one corresponding to the common inertial reference corresponds to a Euclidean space C~ with a nonzero mass m, associated with it as defined in Eq. (3.37). To each graph G, we can associate a matrix B C { - 1 , 0, 1 }.(c,,)• called ttle incidence matT~x, where v(G) is the number of vertices of G and e(G) the number of edges. Each column of B corresponds to an edge of e(G) and is composed of one 1, one - 1 and all other elements arc zero. The row corresponding to the position of the 1 corresponds to the vertex to which the edge is pointing and the row with - 1 corresponds to the vertex on the other side of the edge. We denote by Bk, Bb, Be, Bd and B~ the incidence matri(:es of the graphs GK, G~, Gs, GD and G1, respectively, to which we also add rows of zeros, if necessary, in such a way that row i corresponds to vertex i for each i E VR. Due to the definition of the Lagrangian tree, in Bb the line corresponding to the vertex {0} will be a line of ones. For convenience of notation, we define [k := Adh~(,)t
)
, which corre-
sponds to the twist a~ssociated with edge i and exprcssed in space k. We can then group the edges for the various graphs and denote them by:
108
3. Dynamics of Rigid Mechanisms
{kK:=
( k~k ( 1 ) ' t kzk ( 2 ) '" ..,
f~
(tb(1)' tb(2), " ..,
:=
-k
"Zk
-k
\T
tk(~(G~))) tb(~(CB)) -k
(3.52)
T
(3.53)
{k := t s(1)' s ( 2 ) ' ' ' ' ' s(e(Gs)) (~k -k ~k T t~ := dO)'td(2)''"' a(~(aD)) T ~k ~/k := (~/k(1),~k(2), 9.., t~(~(ci))
(3.54) (3.55) (3.56)
where k(.), b(.), s(.), d(.) and i(.) are indexing functions for the edges of the kinematic, Lagrangian, spring, dissipation and interaction graphs, respectively. Due to the spanning-tree hypothesis of GB, we can consider for each edge e in Es, EK, ED, El the cycles composed of e and the other two edges belonging to the Lagrangian tree that connect the inertial reference to the vertices adjacent to e. The set of these cycles is known as the fundamental cycles for the graph GT associated with the spanning tree GB (see [25]). If we arrange the order of the rows of Bk, B~, Bd and Bi in such a way that their row i corresponds to the vertex b(i), where b(.) is the indexing function for the edges of the Lagrangian tree, and if we apply Eq. (3.50) to each of these cycles, we obtain the following equations: (Bk)Tt k + tkK = 0
(3.57)
(B~)TtkB + tw = 0
(3.58)
(BJ~
+ ~ = 0
(3.59)
( B i ) T t ~ + t'~ = 0
(3.60)
which can be written as: C~ k --- 0
with ~ =
((~)~ (~)~ (~)~ (~b)~ (~)~)~
/ ( B K ) T I~(c~)
0
0
0
|(Bs) ~
0
I~(~s)
k (BS
o
o
0
and
)
I~(~,)
( BT Ie(C~)+~(Cs)+~(GD)+~(CI))
(3.61)
where B := (BK B s BD B I ) is the incidence matrix of the total graph. In graphic theoretic terms, C is called the cycle or loop matrix for the graph GT associated with the spanning tree GB. For the example presented in Figure 3.11, we would get:
3.10 Elements Interconnection
BK
=
(1 1 0 -1 0 1 0 -1 0 0 0 - 1 0 {) 0 0 0
0 0
k 0
0
0 0 1
0 0 0
0 0 0
0 0 0
0 1 - 1 ()
0 1
0 0
0
0
0 0
0 0
-1-1
0 0
109
0
0 1 0 -1
where the i-th row of the, m a t r i x corresponds to vertex i of the k i n e m a t i c graph of the figure and each coluIllll corresponds to one of its edges. We (:an arrive a t a similar expression for a r e p r e s e n t a t i o n of Eq. (3.51). If w e denote, by t ~ : = ~ * ~(~) and in a similar way we define:
~ah~:l~)ul(z)
\ k(~), wk(2) .....
~;w := [ff, \ sk( l ) ' :=
?~k
~ k ~l'ts(2) ~
k(,:(CK))J
(3.62)
.....
_ ?Vk(e(G.~)))T
. . .
~
~k
~i)~ := ~(ff~k _ - , k . . . . . w,(~(c;~)) ) ~(1),%(2)
T
T
and ff~k = ( ( ~ ) ' v ( ~ . ) T (~b~.)-r ( ~ ) ) ' r ( ~ ) Y ) ' ~ corresponds to the following equation: g'~ - BKTs
(3.64)
(3.66) the result is t h a t Eq. (3.51)
-. B s ~ w - BD~;~j - BI~;~ - - 0
(3.67)
where the difference in sign is due to the. fact t h a t the edges belonging to the Lagn'angian tree are pointing o u t w a r d s froin each vertex. This last equation (.'an be written as: Q~b k = 0 where
Q = (l~(a,,)-B) = (l~(a~) - B K -Bs -B,)--Bz)
(3.68)
is called the fundamental cut-set matrix associated with the s p a n n i n g tree GB. l~u the previous definitions one can observe t h a t C Q 'v = 0 for any possible primm'y graph. This is i m p o r t a n t for tile folk)wing theorem: Theorem 3.10.1 (Interconnection power continuity). nection represented by any B is always power continuous.
The intercon-
110
3. Dynamics of Rigid Mechanisms
P r o o f . Denote by )IV := k e r Q the set of wrenches and by T := ker C the set of twists satisfying the Kirchhoff's laws. A result of basic algebra is that the perp of ~V indicated with ~4)• and corresponding to the subsets of dual twists that are not producing energy if applied to wrenches in 142 is ~Y• -- Im QT. Since C Q T -- 0, we have )IV• C T and since it can be seen that d i m ( W • = dim(T), it follows t h a t 14;• = T , proving power continuity for the interconnection. 9
3.11 Hamiltonian
interconnection
in the
Poisson
framework We now present two methods to get an expression of the equations of the complete interconnected system. The first m e t h o d is a review of the procedure presented in [19] with some modifications. This m e t h o d yields an implicit Hamiltonian with Lagrangian multipliers. Its advantage is that the interconnection structure is directly used, but the disadvantage of the m e t h o d is t h a t we are left with an implicit system which should be brought to an explicit form. 3.11.1 I n e r t i a s e q u a t i o n s In Sect. 3.7, we analyzed in detail the equations describing a rigid body. These have resulted in Eq. (3.46). We can group these equations for each b o d y and get an expression with the form: XB = JB (XB) OHoB--~(xXsB) §r
~k = r
(XB)WkB
(3.69)
(3.70)
OHB(XB)
OXB
where, if we denote by l(.) an indexing function for the bodies, we have:
x. =
(h~
.,h~
~(~(G'))) and ~(G,) Hi (o(nz(i),m ,-0 z(0,) HB(XB) =
(3.71)
i=l
in which Hz(0(h~ m Z(0) represents the Hamiltonian function associated with b o d y l(i) from which the edge i of GB is departing. We recall t h a t the function e 0 indicates the number of edges of the graph given as its argument. Furthermore, in the previous equations we have
3.11 Hamiltonian interconnection in the Poisson framework
111
0 JB(Xf3) =
where
A ts(xs)
=
~(,) "
,jR(i) :=
0
XhOl(~) o Adt, o/(11 /\
-Ad*h,~(,) o X*ho(,)
mz(')A
]"
I Ad*k I \ h,~(cn))/ 3.11.2 Springs equations
In Sect. 3.6, we analyzed in detail the equations describing elastic elements. These have resulted in Eq. (3.33). We can group these equations for each of the n s springs and get an expression like:
(3.72)
x.v = t s ( x s ) t ~
~w
=
OHs(xs)
(3.73)
Oxs
r
where x s = (h~(l) . ." . . hs(ns)), H s ( x s ) = E ~ . "n~. I Vs(,)(h,~(i)), i n w h i c h the function V,(,) (h,(,) ) represents the potential energy associated with spring i in a configuration h,(i). Furthermore, C s ( x s ) is a suitable map from t~ to (T 1 . . . . , TO s), where T~, corresponds to the Tv in Eq. (3.33) for each spring i. 3.11.3 Dissipative elements equations
We can collect all tile equations of the dissipative elements in the following form: t ~ = /~i(h)tkD for which h
=
(3.74)
(At(d(1)) Itl(d(e(GD)))l I'l(d(e(GD)))~anti
~,'~/(d(1))
'" ' ' '
d(1)voz(a(1))j {Ar(d(1))~ 0
O0
9~I
R,(h)
I~
I
0 bd(e(aD))rhr(d(e((;O)))~
"~1
k'*l(d(e(ai))))J/
and /~d(,) corresponds to the impedance map for the edge i of GD.
112
3. Dynamics of Rigid Mechanisms
3.11.4 The interconnected system equations It is now possible to collect the equations of the elements and their interconnection. If we rewrite Eq. (3.69) and Eq. (3.7{}) using the twists' Kirchhoff interconnection relations of Eq. (3.57), Eq. (3.58), Eq. (3.59), and Eq. (3.60), and similarly, the wrenches' interconnection relations of Eq. (3.67), we obtain:
.
-t~
,
/<~/
,i)Hs3(xB)
(3.75)
(3.76)
-- B'
\-t~] Combining the latter equaiions with Eq. (3.72) and Eq. (3.73), we obtain:
0:) =
00) .T. / omc~)
<:>s(~s)/
\t~l (3.77)
9,<-/rabbi
o,~(*s))
--
"
\ WS / If we now consider a symplectic interconnection with a coiilIllon wrench &w a,s seen in Figure 3.4, we obtain:
(J:tt) = f "x.s"
,]#3(XB) OB(Xs3)BsO~(x.,;)'~ ( OH'~(x's)\oH.'l .(x.:)Ox.
(~,l = IBS0s(x~) -t~]
0
!t-Os(xs)B~O's(xss)
\BTa$~(XB)
"
,]
o~1
| o,;g...)J. \
If we substitute the dissipative elements of Eq. (3.74), we obtain:
(3-801
3.11 Hamiltonian interconnection in the Poisson framework
= ,](x) / on.~(~. ) \
Oz~
+
) /On,(z,)\
['B~'eS( xu) O I
-t,j
\ff)~]
\
o~,,
/
Ox~.
I
113
(3.81) (3.82)
with
J(z)
:=
(
( \-cPs(xs)BsOt~(xn)
o
/
(r162
(3.83)
(}
where J(x) is composed of an antisymmetrie power-conservative t)art minus a symmetri(" semi-positive t)ari representing irreversible transformation of free energy to heat. The last step to be. taken is to satisfy the constraints implenmnted by the kinematic pairs. As seen in Sect. 2.1.2, for each kinematic pair. we can decompose sek(n) and its dual a.s the diree~ sum of two subsi)aces. Denote by A, the projection operator m which proje.ets a twist t k E sek(n) to the allowed subspacc 7-A ,'(i),/(i) fi)r the kinematic pair inde.xed by i. If we group all these projection operators, we haw~ A := (Ak(1) ..... Ak(,4G~.))). Then, to satisfy the. constraints of the kinematic pairs, we obtain:
( OHl3(~n ) \ OH.~(r o~.~ Il +
\xs J =
(On(xz)BKo(Id-A)'ou(xB)BKA*on(xu)B,) 0
[ ( I d - A)BKon(xB) \Tz/
\
BT05(xu)
i)(
(~.) i~
(3.84)
Ott,,(r Ox
0~.~
/
where A belongs to the constrained space and corresponds lo constraint forces, IV and Wr are, respectively, the actuation wrenches applied to the kinematic pairs and the external forces applied by the environment on the mechanisms between the bodies specitied in the interconnection graph GI. The twists' duals of A should be 0 to satisfy the constraints. As we cart see, the obtained equations are not in explicit form even if the mechanism does not haw~ closed kinematic chains. This can be a shortcoming if explicit equations are needed. The following section presents a method which yields explicit equations in coimnon cases. ltJ Note that here we cart talk about projection since
~.~ ~ ~. t..?
sea(n)
is the direct sum of
114
3. Dynamics of Rigid Mechanisms
Fig. 3.12. The Dirac structure of the mechanism's topology.
3.12 Hamiltonian framework
interconnection
in the
Dirac
It is possible to directly associate a Dirac structure with the total graph GT of Sect. 3.10 using what is presented in [8]. The Dirac structure can be directly expressed using the kernel representation introduced in Eq. (3.23). The (n + q) • (n + q) structure matrices are:
( o ) F =
/
Oq • (q-l-n)
where q = e(GB) is the number of edges of the Lagrangian tree and corresponds to the number of rigid bodies, n = e(Gp) is the number of edges of the primary graph, C is the fundamental loop matrix associated with the spanning-tree GB introduced in Eq. (3.61) and Q is the fundamental cut-set matrix associated with the spanning-tree Gn introduced in Eq. (3.68). Kirchhoff's laws are then equivalent to defining the set of admissible twists and wrenches as:
~ a ~ , G . = {(iL ~k) e (se(3)k) n+q • (s~(3)~) ~+q ; F~ k + E ~ k = 0} (3.86) From Theorem 3.10.1 it follows t h a t k e r C and k e r Q are dual spaces and it can be seen that dim~DcT,GB = 6(n + q); this is exactly Tellegen's theorem. Hence the admissible set of twists and wrenches associated with the constraint relation of the port connection graph form a constant Dirac structure on (se(3)k) ~+q. A graphical representation of the Dirac structure is reported in Figure 3.12 where the space on which the structure is defined is drawn using power ports on the composing parts defined in Sect. 3.10.1. The previous Dirac structure does not take into account the constraints of each of the kinematic pairs. This can be done defining a Dirac structure on a differentiable manifold, which is actually a submanifold of the state raanifold (SE~ • se*(3))q corresponding to the q rigid bodies from which the mechanism is composed (see Eq. (3.46)), This submanifold/C is actually:
3.12 Hamiltonian interconnection in the Dirac framework : = SE CI'
r(.)
(3) • . . . •
115
(3)
where n = e(GK) is the number of kinematic pairs also used in Eq. (3.52) and l(i), r(i) index the vertices in (~K and correspond to the two rigid bodies which the i-th kinematic pair connects (see Sect. 3.10). We can then define a diffeomorphism between ThK. and (sek(3))" where h := (h[[r162 the. following way:
in
rrK := ThK -* (sek(3)) '~ ; (h, h) ~-~
Adh~,, ' o "h'[:],' )
h
,h
.... , ~" } "~ (/h~(,,) t .'> ' h~:: (Adh~(. ' ~ ~ ~(') " )
(3.87)
where nh)' is defined in Figure 1.9. If for simplicity we restrict our study to the case of regular kinematic pairs as defined in Def. 2.1.2, it is possible to associate with each kinematic pair i two subspaces of sek(3) and two subspaces of se~r as done for lower pairs in Eq. (2.3) and Eq. (2.4) by mapping the distribution and co-distribution defining each kinematic pair using respectively Adh~ o rr~;. and ((Tr[;.)* o Ad~,~)-1 It is important to note that the achieved subspaces are now configuration dependent and not constant:
for the twists of kinematic pair i and
for the wrenches of kinematic pair i. If the kinematic pairs are regular, they are characterized by a cm~stant number of degrees of freedom. If we denote with dofi the number of degrees of freedom of kinematic pair i, we have that: dim ( ~:, (-)) = dof,
dim (T~, F (.)) = 6 - dof,,
(3.90)
(WZ, (.)) = 6
(3.91)
and dim (142~, (.)) = dof,
-
dof,.
We. can thereh)re find for each kinematic pair i full rank matrices TF, /'h \ r(')'~ l(,) ),
7:,, (h:(~':), We, (h:((::) and WA, ( hT((:~) s u c h that the rows of
(
TAi~ dof TFi ] 6-dof
116
3. Dynalnics of Rigid Mechanisms
Fig. 3.13. The interconnection with the kinematic pairs.
are
a k
(
----/
WA,'~ dof
WciJ 6-
are a basis of se~(3), the rows of WAi are a basis of W~A, h
We,
are
3,
, the rows of
basis of W C, (h[~:~) and fm'thermore the two bases of sek(3)an
-
-
/
sek(3 ) are dual of each other. All these matrices are functions of It, but this h ~ been o m i t t e d for notational convenience. We therefore clearly have that: ker WA,
[nl(i) )
K,
K, [nt(i))"
(3..~2) Because
of power
conserw~tion
we must
have
that
~ (~';'): (~, (h~;','))~
+~>
and
We have therefi)re: ker WA, = range TF T
and
ke.r TF, = range WA T
(3.95)
and we Call llse as structural matrices to define the Dirac s t r u c t u r e associated with the i-th kinematic pair:
9
~, (~r~:~):
,0+_~o,,("~'(~'~:;>],x0,~'"'
/ 0dof,•
~' ( " : ; ) :
"~
t~,,,(,,,~<:~V (3.96)
3.12 Hamiltonian interconnection in the Dirac framework
117
Fig. 3.14. The interconnection with the controllable kinematic pairs.
It is now possible to define the Dirac structure associated with all kinematic pairs as:
~DGK (h) = { (f, e) EThlC • T~IC ; E ( h ) ~ k + F ( h ) t ~ = 0 ; t ~ := 7cK(f),k k := ( ~ ) - l ( e ) }
(3.97)
where
F(h)
diag (F1 (h::l~)
F~ (
))
E(h) : : diag (El (h/~:~), ... , E n ~[hr(n)~l(n)] ) "
(3.98)
(3.99)
and t-~K and @~ are defined respectively in Eq. (3.52) and Eq. (3.62). It is also shown in [71] that the interconnection of Dirac structures is again a Dirac structure and therefore the obtained Dirac structure can be graphically represented as in Figure 3.13, where the interconnection is implemented using the structure of the power port (tkK, @kK). It is also possible to consider kinematic pairs with which we can interact through the degrees of freedom. This can be done using the following structural matrices :
(3.100)
Wc~(h~f~)
0
Tmi(
f~
and
Ei hl(i)
=
)
9
(3.1Ol)
118
3. Dynamics of Rigid Mechanisms 5 3
4 7
0
Gk
0
5
5
/
6 3
7 0
Gk
"--.7 0
Fig. 3.15. A simple example. The new port that is defined will be a numerical representation of elements in 7 "A x )/vA:
Z~c,,,l(h) := {((f,v), (e,~)) 9 (T~/C • R m) • (T;JC • ~ m ) ;
E(h)
+ F(h) t
= 0 ; i k := 7rt((f),lr
:= (lr~)-~(c)
(3.102) where m = ~-~i=l dofi and E(h), F(h) are defined as a diagonal composition of the matrices defined in Eq. (3.100) and Eq. (3.101) as done previously. It would then be possible to interconnect the obtained Dirac structure shown in Figure 3.14 to the energy storage elements corresponding to inertias and springs and the dissipating elements in order to obtain a complete implicit, dynamic model of the system. This could be done by expressing Eq. (3.69), Eq. (3.70), Eq. (3.72) and Eq. (3.73) as the interconnection of simple Dirac structures and pure storage elements. n
3.13 Direct Lagrangian e q u a t i o n s In this section we describe a way to achieve explicit dynamic equations for mechanisms having no kinematic loops and only holonomic kinematic pairs. We first consider a spanning forest (see Def. A.2.12) (~j( = (VBU{0},/~K) of the kinematic graph GK. In general Gt( is N O T a connected graph since we could have inertial elements (vertices in VB) not constrained to other masses by means of kinematic pairs as the body indexed by 6 in Figure 3.15.
3.13 Direct Lagrangian equations
119
Let us now consider a tree (~ = (VB U {0}, E) such that /~K C E. If VB has m elements (there are m bodies in the system), E will have rn edges ~1. In the example of Figure 3.15, m = 7. If we indicate with l(i) and r(i) the depart!ng and the destination vertices for an edge i, and if wc index the edges in EK with 1 . . . . , fik where fik := e(G'K), the number of edges in GK, and the remaining edges in E with nk + 1. . . . . m, where rn = e(G), then we can define:
0~({,~) o~(~+l),_,
...SE~(<~))(n).
(3.103)
Because G is a spanning tree by construction, a point in Q will uniquely identify the relative position of any body in the mechanism with respect to any other body and it will identify in particular the relativc position of any body with respect to the inertial reference space E0 represented by tim vertex
{0}. 3.13.1 T o t a l k i n e t i c c o - e n e r g y We now calculate a Riemannian metric on Q corresponding to the total kinetic co-energy of the system 9 First, however, we must calculate a mapping from an element belonging to T Q to the various twists of the bodies with respect to the inertial frame and expre~ed in their own space. Once this is done, tile total inertia tensor can be pulled back directly to T Q (see Def. A.7.20). The
needed
m a p p i n g . Each element (q,0)
. . l(m) . J .and . 0 . the following map: '
(hT~:~,
'
l ( m ) J"
E TQ
is such that q =
Realizing this, we can define
,](q) : TqQ ~ sel(n) x ... x sere(n) ; cl ~ A ( q ) J ( q ) H ( q ) ~h "(m)! \
l(m) /
(3.104) where J(q) is a Jaeobian similar to the Jacobian in Eq. (2.10), where irustead of m - - 1 we have m , < ( A i ) , l ( i ) = s e t ( i ) ( n ) , Vi = n k + 1 , . . . , m , n c = m , q(i) = 0
and p(i) = i, Vi,
o... .~
and II(q) :=
0 Ah,o,,
0
11 Recall that a tree with m + 1 vertices always has m edges.
~
_,-(~)
0 ~hg~')']
120
3. Dynamics of Rigid Mechanisms
This m a p gives the twist of each b o d y with respect to the inertial frame and expressed in its own space as a function of the configuration velocities. T h e t o t a l i n e r t i a t e n s o r a n d t h e R i e m a n n i a n m e t r i c . T h e total kinetic co-energy of the system can be expressed as: x-~ 1/.i,o .i,o\
E,[.1,0
i=1
where t,~i,0 _-- Adh~tOi 9 sei(n) is inertiM frame and expressed in form in se~(n) corresponding to We can therefore express the ... • sem(n) such that:
the twist of the b o d y i with respect to the the b o d y i space and (,)1~ is the quadratic the kinetic co-energy defined in Eq. (3.38). total energy as a quadratic form in sel (n) •
E;(t) = ~tTITt where
IT::
t:~-
"
o
and Ii is the inertia tensor of b o d y i as introduced in Sect. 3.3.1. We can now define a Riemannian metric on Q which gives the total kinetic co-energy by means of a pullback:
E~ : T Q ~ IR+ ", (q,O) ~ lOT j * ( q ) I r J ( q ) ( t where J* (q)_ is the adjoint of J(q). T h e R i e m a n n i a n metric is therefore equal to J * ( q ) I T J ( q ) in a position q. 3.13.2 T h e p o t e n t i a l e n e r g y a n d t h e L a g r a n g i a n The total potential energy is the sum of the potential energies of all the springs represented by the edges of G s . Since a point in Q uniquely identifies the relative positions of all the bodies and the reference space, it is possible to restrict the energy function of each spring to Q in order to get: us
Ep : Q
; q
v i=l
where Vi(.) corresponds to the potential energy function corresponding to spring i as given in Eq. (3.29). We can now define the Lagrangian function for the system as
L : TQ--*R ; (q, dl) H E;(q, gl) - Ep(q) in the same way as in Sect. 3.3.
3.13 Direct. Lagrangian equations
121
3.13.3 The Constraints If we have kinematic loops or nonholonomic kinematic pairs, we have to treat t h e m explicitly. To start with, we can consider a m a p
LK :Q--~Q or(p(,~.)) where Q := or(p(l)) ~,-t(p(1)) • " " • ~l(p(n~))' p(i) is the i - t h edge in tile kinematic graph an(i 12 n k := e ( C K ) . This map should associate with each point in Q the relative ('onfigurations of all the kinematic pairs present in the mechanism and the map can be expressed with m e t h o d s similar to those presented in C h a p t e r 2. We can then consider its Jacobian, which is (iefined as: ,lK(q) : T q Q ~ TL,,(q)Q : 0 ~ Dt.K(q)O where D L h (q) C IR"~• is the differential of LK in q C R " . If all the kinematic pairs are hoh)nomic and if there are no kinemati(: loops (GK is circuit fre(:), the Inotion of each kinematic pair is allowed. If there are nonholonomic pairs or kinemati(: loops, only some directions are allowed, namely those expressed by the distribution Aa~I~,,(,,))) describing the c i-th pair and defined in Def. 2.1.2. If wc denote by Aa,.,;t,)) a complementary t(.v(*))
distribution to Ak~(~(,))) such t h a t CV(p0)) c: fh~(P0))) @ A /~(p(~))~ Th/i("(",',, ~t0,(,)) = Ak' ("("),"t(p(,)) "~k,~((~((')') ) t"t(p(,)) ) I(p(I))
we (:an define the projection P~ of an element belonging to Th~t~('~)~,,6V(p(z)) ~t(p(~)) on Ak,.(,,(,) )c: t'~ l(ptt))
for each kinematic pair i at each position h ~(p(~))t(p(i)):
p {hr(P(i))~
(-)"(p(i)) --~ /~C
it l(p(,)) ' : rh;i(;((') ,' ~l(p(,))
{hr(P(i))~
k;i(;'((:)'~ t'~l(p(i)) '
We can then consider:
p(q)
:=
it t(p(1)))
0
O.
"'.
...
" n~, k ' ~ l ( p ( n ~ . ) )
]7
and express the constraints, which should be satisfied as: P ( q ) J K (q)4 = 0 R e m a r k 3.13.1. Note t h a t for a holonomic kinematic pair i, we have
(h~(P(i))~' and the.refore the o p e r a t o r Pi(') is identically Th;i(;i(')',) Q = Aa;i(;((,))), '-~(p(,)) zero.
~2 Note that nk _> ~ since the graph Gk is defined deleting edges of G~.
122
3. Dynamics of Rigid Mechanisms
3.13.4 D a m p i n g e l e m e n t s Following the same reasoning as in the previous section, we could consider a map
LD : Q
--~ Q D
r ~ t(d(n~)) ~n), " d(i) is the i - t h edge in where QD := ~/(d(1)) ~e) • " .. • D the dissipation graph associated with the mechanism and nd :----e(GD). This m a p should associate with each point in Q the relative configurations of all the relative spaces adjacent to the edges of Go. We can then consider its Jacobian, which is defined as:
JD(q) : TqQ
--*
TLt)(q)Q D ; 0
~
DLD(q)gl
where D L , (q) is the differential of LD in q. T h e generalized forces generated by these elements are:
- J~)(q)R1(LD(q) )JD(q)O C Tq Q where /~1 is a diagonal matrix composed of (~.lements representing the impedance form of each dissipative element. The. tensor ,]~ (q)/~1 (LD (q)) JD (q) can be seen as a 2-covariant tensor resulting from the imllbaek of flI(LD(q)).
3.13.5 T h e w o r k - s p a c e and t h e i n t e r a c t i o n w i t h t h e e n v i r o n m e n t In this subsection, we generalize the de.finition of work space for a generic mechanism. We define the work space as the set of relative positions corresponding to tile edges of the interaction graph. This is the space in which, by definition, the robot exchanges energy with the environment. D e f i n i t i o n 3.13.1 ( W o r k s p a c e ) . If we index the edges of the interaction
graph with an indexing function i(.), and as usual with r(i(j)) and l(i(j)) the vertices of the graph GI to which the j-th edge is pointing and flvrn which it is departing, we define the interaction space 2( as: X
:=
~(i~) ( ~
•
.. x S U ( ' ( ~ " ) ) ( n ) ,(,(o,))
where ni = e(Gl) denotes the number of edges in the graph G1. It is possible to define a mapping having thc folh)wing form:
LI :Q---*X which associates with each point in Q the relative configurations of all the bodies with which the environment can interact. We can then consider its Jacobian, which is defined as:
3.14 Conclusions
123
JI(q) : TqQ --+ TL,(q)X ; (t H Di,(q)dl where DLI (q) is the differential of LI in q. The final form of the Lagrangian equations of the complete system, where we summed all the generalized forces, follows:
d--'t ~
- -~q + J~(q)RI(LD(q))JD(q)gl = J]f(q)P*(q))~ + J ~ ( q ) W K + J~(q)WI 0 = P(q)JK(q)g 1
(3.105)
where W g E T *gK(q) Q- corresponds to the torque which can be applied to the * ) A" represents kinematic pairs, ~ are constraint forces and where WI E T~i(q the forces that the environment can apply to the mechanism. 3.13.6
Elimination
of the constraints.
It is now possible to calculate the generalized Poisson manifold, which defines a Hamiltonian formulation by means of the Legendre transformation of the Lagrangian function. This procedure and its analysis can be found in [54]. In [54] it is also shown that is only possible to get a proper Poisson bracket satisfying the Jacobi identity under certain integrability conditions. In our case, the integrability condition is such that the distribution defined
by A(q) := ker(P(q)Jk(q)) should be integrable. If we have no nonholonomic pairs and no loop chains, P(q) and P*(q) are null, the constraints are automatically satisfied and we indeed get an explicit expression of the dynamic equations of the mechanism. Intuitively, for a mechanism without kinematic loops, this procedure "works out" any holonomic pair at the beginning by choosing its configuration space as part of the total configuration space.
3.14 Conclusions In this chapter we analysed the interconnection of mechanical, rigid, physical systems. After defining all the composing elements, we have seen that the total interconnection can be described by a set of graphs. We have also shown how the information of the interconnection is either stored in the Poisson bracket of the Hamiltonian system describing the complete system, or in a Dirac structure. Irreversible free energy dissipation results, which is represented by a negative definite symmetric bracket in the Hamiltonian system.
124
3. Dynamics of Rigid Mechanisms
The power of Dirac structures is t h a t it is a tool which can be used to express interconnection without the need of any causal specification and it nicely expresses network power continuity (Tellegen's theorem). For a situation involving only holonomic pairs and no kinematic loops, we supplied a m e t h o d t h a t could directly give an explicit formulation of the equations of the mechanism. For a case where there were either nonholonomic pairs or kinematic loops present, on the other hand, we presented a way to find implicit equations for the system in a Lagrangian setting. Methods which show how to go from a Lagrangian system with constraints to the corresponding Hamiltonian system are described in literature [54]
4. Intrinsically Passive Control
Ill most robotics applications, robot,s have to interact with an unknown environment in order to complete desired tasks. It is never possible to obtain an accur~t,e model of the environment and this has consequences for the development of the controller which must preserve a proper interacting behavior during any situation. A well-beh~ved system during interaction with unknown enviromnents is a human being. In hmnans, it, is known ill physiology t h a t there are delays in the communication between the brain and the muscles between 150 an(t 250 rns. Muscle spindles are "built in" to the nmscles and have afferent nerves (nerves that send information back to the spinal cord and the central nervous system) that signal a weighted sum of muscle length and nluscle velocity of shortening. In addition to sending information up the spinal column, those afferent nerves make excitatory connections through a siugle synapse (which is the fastest conne(:t ion you can get) onto the afferent nerves that send motor c()nmmnds out to the muscles so that stimulation of the xmmcle spindles evokes contr~w.tion of the corresp(mding muscle with a delay of 25 to 50 ms (depending oil where the muscle i s - arm muscles have shorter delays than leg mus(:les). This is the fa.stest feedback system in the body: it is responsible for the "knee-jerk" reflex that doctors use, and it looks a lot like a PD controller (though quit(', nonlinear and with adaptive gains). There is also a Golgi tendon organ that responds almost exclusively to actively generated muscle forces (and not to externally applied loads). This organ also makes a fee(tback connection via the spinal cord to the muscle it is in, but this time the action is inhibit(lry (acting to turn off the muscle). The combination of force, position and velocity feedback looLs a lot like it acts (among other things) to re.gulate or manage the overall muscle impedance [72]. This short physiological deviation might justify the decompositioli of a robotic control system in a way as the one reported ill Figure 4.1. Here the Intrinsically Passive Control (IPC) resembles the muscle behavior and it should preserve passivity un(ter any contact situations with any passive environments, whereas the Supervisor takes car(.' of the planning, scheduling and coordinat,i()n of tile task to be performed. In humans tile local control is implemented by the. muscle .spindles: with the explained de.lays of communication with the brain, the system would simply be unstable withoul
126
4. Intrinsically Passive Control
Fig. 4.1. A biological analogy of the control strategy
this local control of interaction. The IPC is characterized by the fact that it has two power ports and that it is passive. With one of the two ports it is connected to the system to be controlled, namely a robot, and with the other port it is connected to a supervisor module which is, hierarchically speaking, a higher lever of control. The major point is that when the supervisor does not supply any power, the controlled system will be passive. In this chapter, the structure of the IPC will be studied following the results which where first presented in [73]. The above techniques yield coupled stability under any model uncertainties and interaction of the plant with any other passive system. This is very important, for example for robotics applications where the robot can interact with unknown environments at any time. We can design the controller using knowledge of the plant in a model-based fashion. Non-exactness of the model of the plant could spoil performance but N E V E R stability. Fhrthermore, as shown in [74], even with perfect knowledge of the plant, with a controller which is not passive by itself, instability can arise during unmodeled interaction through other possibly present power ports. A typical example is a controlled robot which unexpectedly interacts with the environment. This may happen because the environment cannot be merely considered a signal source; it is a dynamic system, as explained in [6]. A basic requirement for the strategies presented here is t h a t we should be able to apply collocated control to back-drivable transmissions, as we will see later. Alternative methods can also be used in the case in which back-drivable systems are not present. These techniques do need force measurements.
4.1 Force
versus
Interactive
control
During an interacting task of a robot with its environment, the forces which appear depend on b o t h the robot, which we can influence, and the environment, which we cannot influence. This implies that strictly speaking there is no way to ensure that the contacting force reaches a certain value unless we have a perfect model of the environment, which is by definition never
4.1 Force versus Interactive control
127
Fig. 4.2. Representation of the I / O MMP the case. To formally explain the previous statement, consider the simple one-dimensional example of Figure 4.2. A control force ~- acts on the mass m at position x. The environment exerts a force F represented in the figure by a hand. The power exchanged between the controlled mass and the environment is therefore P = F 2 . Using linear control, a certain robot dynamics is achieved, which can be expressed in the behavioral framework [41] in the following way:
\x(s)/
= 0,
R(8) 9 Rlx2[s]
where R(s) is a polynomial matrix. In the same way, the environment has its own dynamics that, assuming linearity for simplicity, can be represented in a similar way:
RE( ) \x(s))
= 0,
RE(s) 9 Rl•
Consider two extreme cases: 1. The mass does not contact anything: F(t) 2. The mass position is fixed: 2(t) = 0 Yr.
= 0 Vt.
In the first case, the value of x(t) depends only on R(s), which we can directly control. In this case we can effectively use what is called position control. In the second case, the value of F(t) depends only on R(s), which we can directly control. In this case we can effectively use what is called force
control. In all other cases both F(s) and x(s) depend on both the controlled robot R(s) and the environment RE(S):
RE(s)/
= (O0)
The solution to the previous differential equation gives the unique solution for
F(t) and x(t), which also depends on the imperfectly or poorly characterized environment RE(S).
128
4. Intrinsically Passive Control
We conclude that for tasks involving interaction it is questionable whether and x(t) can be controlh:d, as these partly depend on the variable, imperfectly characterized environment. Instead one can control the only entity that is intrinsically controllable and independent of the environment: tile controlled behavior R(s) as a whole.
F(t)
4.2 Physical Passivity Passivity is a very powerfli1 concept used in the design of control stralegies [75]. An overview of passivity concepts ca,, be f(mnd in [61] and in [76]. The basic idea of passivity comes from physics and generalizes tile concept of energy. In general, we consider a set of G, i n p u t - o u t p u t mappings fl'oln a signal u~ to y~. In L2 theory [61], ui and y, are supposed to belong to the slt.ille Hilbert space with inner product (,)i- We can then consider for each system Gz the quantity (u,,v,) corresponding to the "generalized energy" of the systeln. The system is said to be passive if for each u,, there always exists a constant finite ~ such that (ui, GOt,)) _> ft. This means that the system can supply only a finite amount of "generalized energy". If all the inputs and outputs u,, yi belong to the saine signal space, it is possible to considcr interconnectioI~s satisfying a form of power continuity that is equivalent to Tellegen's theorem. These concet)ts have been largely used to prove statements about the stability of controlled systems. The previous form of passivity is too general and actually not suitable for interacting systems. This is due to the fact t h a t interacting physical systems arc characterized by the exchange of real energy and if we want to consider passivity of the controlled system during interaction with an environinent, we should consider physical power conjugates u, and y,. This also implies t h a t u, and Yi do not actually have to belong to the saine Hilbert space, but t h a t they shoukt just belong to dual vector spaces. This is once again a good argument to use bond graph techniques in the analysis of what we could call physical passivity. It is important to realize [77] that, properly speaking, all physical systems in the. universe are passive by the first law of thermo