Dynamic Model of Robots: Newton-Euler Approach

Dynamic Model of Robots: Newton-Euler Approach

Robotics 2 Dynamic model of robots: Newton-Euler approach Prof. Alessandro De Luca Approaches to dynamic modeling (reprise) energy-based approach Newton-Euler method (Euler-Lagrange) (balance of forces/torques) n multi-body robot seen as a whole n dynamic equations written separately for each link/body n constraint (internal) reaction forces between the links are automatically n inverse dynamics in real time eliminated: in fact, they do not n equations are evaluated in a perform work numeric and recursive way n closed-form (symbolic) equations n best for synthesis are directly obtained (=implementation) of model- based control schemes n best suited for study of dynamic properties and analysis of control n by elimination of reaction forces and schemes back-substitution of expressions, we still get closed-form dynamic equations (identical to those of Euler- Lagrange!) Robotics 2 2 Derivative of a vector in a moving frame … from velocity to acceleration ! ̇ 0 0 �$ = � �$ �$ derivative of “unit” vector �� ��$ = � × � �� $ $ �$ Robotics 2 3 Dynamics of a rigid body n Newton dynamic equation n balance: sum of forces = variation of linear momentum � 1 � = �� = ��̇ $ �� 5 5 n Euler dynamic equation n balance: sum of torques = variation of angular momentum � � 1 � = �� = ��̇ + ���̅ 9 � = ��̇ + �̇��̅ 9 + ���̅ ̇ 9 � $ �� �� = ��̇ + � � ���̅ 9� + ���̅ 9�9 � � = ��̇ + � × �� n principle of action and reaction n forces/torques: applied by body � to body � + 1 = − applied by body � + 1 to body � Robotics 2 4 Newton-Euler equations - 1 link � FORCES � center �� �$ force applied of mass from link � − 1 on link � �$ �$B? �� �$>? force applied . from link � on link � + 1 �$B? �$ �$>? �$ �$� gravity force axis � �$� axis � + 1 all vectors expressed in the (�$) (�$>?) same RF (better RF�) Newton equation �$ − �$>? + �$� = �$�5$ N linear acceleration of �$ Robotics 2 5 Newton-Euler equations - 2 link � TORQUES �$ �$ torque applied �$ �$B? from link (� − 1) on link � �$>? �$ �$B?,5$ �$,5$ �$>? torque applied . from link � on link (� + 1) � �$>? �$B? � �$ �$ �$ × �$B?,5$ torque due to �$ w.r.t. �$ axis � axis � + 1 (�$) (�$>?) −�$>?× �$,5$ torque due to −�$>? w.r.t. �$ all vectors expressed in gravity force gives the same RF (RF� !!) Euler equation no torque at �$ �$ − �$>? + �$ × �$B?,5$ −�$>? × �$,5$= �$�̇ $ + �$× �$�$ E angular acceleration of body � Robotics 2 6 Forward recursion Computing velocities and accelerations • “moving frames” algorithm (as for velocities in Lagrange) • wherever there is no leading superscript, it is the same as the subscript � • for simplicity, only revolute joints �$ = �$ (see textbook for the more general treatment) initializations �! AR �̇ ! 0 �! − � the gravity force term can be skipped in Newton equation, if added here Robotics 2 7 Backward recursion Computing forces and torques eliminated, if inserted from �$ to �$B? in forward recursion (�=0) initializations �M>? �M>? F/TR r ) r i,ci i,ci from �$ to �$B? at each step of this recursion, we have two vector equations (�� + ��) at the joint providing �$ and �$: these contain ALSO the reaction forces/torques at the joint axis ⇒ they should be “projected” next along/around this axis for prismatic joint FP � scalar for revolute joint equations at the end generalized forces add here dissipative terms (in rhs of Euler-Lagrange eqs) (here viscous friction only) Robotics 2 8 Comments on Newton-Euler method n the previous forward/backward recursive formulas can be evaluated in symbolic or numeric form n symbolic n substituting expressions in a recursive way n at the end, a closed-form dynamic model is obtained, which is identical to the one obtained using Euler-Lagrange (or any other) method n there is no special convenience in using N-E in this way n numeric n substituting numeric values (numbers!) at each step n computational complexity of each step remains constant ⇒ grows in a linear fashion with the number � of joints (�(�)) n strongly recommended for real-time use, especially when the number � of joints is large Robotics 2 9 Newton-Euler algorithm efficient computational scheme for inverse dynamics (at robot base) numeric steps at every instant � AR FP , �5? F/TR inputs outputs ,�5MB? AR FP F/TR , �5M (force/torque exchange environment/E-E) Robotics 2 10 Matlab (or C) script general routine ��S(arg1, arg2, arg3) n data file (of a specific robot) M n number � and types σ = 0,1 of joints (revolute/prismatic) n table of DH kinematic parameters n list of ALL dynamic parameters of the links (and of the motors) n input 0 n vector parameter � = �, 0 (presence or absence of gravity) n three ordered vector arguments n typically, samples of joint position, velocity, acceleration taken from a desired trajectory n output n generalized force � for the complete inverse dynamics n … or single terms of the dynamic model Robotics 2 11 Examples of output n complete inverse dynamics � = �� !Y(��, �̇], �̈]) = �(�])�̈] + �(�], �̇]) + �(�]) = �] n gravity terms � = �� !Y(�, 0, 0) = �(�) n centrifugal and Coriolis terms � = ��!(�, �̇, 0) = �(�, �̇) n �-th column of the inertia matrix �$ = �-th column � = ��!(�, 0, �$) = �$(�) of identity matrix n generalized momentum � = ��! �, 0, �̇ = � � �̇ = � Robotics 2 12 Inverse dynamics of a 2R planar robot desired (smooth) joint motion: quintic polynomials for �?, �_ with ⇔ zero vel/acc boundary conditions from (90o, -180o) to (0o, 90o) in � = 1 s Robotics 2 13 Inverse dynamics of a 2R planar robot zero final torques initial torques = � ≠ 0, � = 0 free equilibrium ? _ balance configuration link weights + in final (0o, 90o) zero initial configuration accelerations motion in vertical plane (under gravity) both links are thin rods of uniform mass �? = 10 kg, �_ = 5 kg Robotics 2 14 Inverse dynamics of a 2R planar robot torque contributions at the two joints for the desired motion = total, = inertial = Coriolis/centrifugal, = gravitational Robotics 2 15 Use of NE routine for simulation direct dynamics n numerical integration, at current state (�, �̇), of �̈ = �B?(�)[� – (�(�, �̇) + �(�))] = �B?(�)[� – �(�, �̇)] n Coriolis, centrifugal, and gravity terms � = �� !Y(�, �̇, 0) complexity �(�) n �-th column of the inertia matrix, for � = 1, . , � _ �$ = ��!(�, 0, �$) �(� ) n numerical inversion of inertia matrix �(�l) ���� = inv(�) but with small coefficient n given �, integrate acceleration computed as �̈ = ���� ∗ [� – �] new state (�, �̇) and repeat over time ... Robotics 2 16.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    16 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us