Example: bachelor of science

Robot Dynamics Lecture Notes - ETH Z

Robot Dynamics Lecture NotesYouJanuary 6, 2017 Contents1 ..32 .. of Positions ..6 Cartesian coordinates ..6 Cylindrical coordinates ..7 Spherical coordinates .. Velocity .. of Linear Velocities ..7 Cartesian Coordinates ..8 Cylindrical Coordinates ..8 Spherical Coordinates .. Matrices .. vs. Passive Rotation ..11 Passive Rotation ..11 Active Rotation .. Rotations .. of Rotations .. of Rotations ..13 Euler Angles ..13 Angle Axis ..18 Unit Quaternions .. Velocity .. Derivatives of Rotation Parameterizations ..22 Time Derivatives of Euler Angles ZYX Angular Velocity .23 Time Derivatives of Euler Angles XYZ Angular Velocity .24 Time Derivatives of Euler Angles ZYZ Angular Velocity .24 Time Derivatives of Euler Angles ZXZ Angular Velocity .24 Time Derivative of Rotation Quaternion Angular Velocity .24 Time Derivative of Angle Axis Angular Velocity ..25 Time Derivative of Rotation Vector Angular Velocity.

Calculation of geometric Jacobian using Rigid Body Formulation38 ... 3.10 Inverse Dynamics for Floating-Base Systems . . . . . . . . . . . . .79 ... This lecture script gives a compact overview about the underlying theory. As the course is still in development, …

Tags:

  Lecture, Dynamics, Rigid, Body, Rigid body, Dynamics lecture

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Advertisement

Transcription of Robot Dynamics Lecture Notes - ETH Z

1 Robot Dynamics Lecture NotesYouJanuary 6, 2017 Contents1 ..32 .. of Positions ..6 Cartesian coordinates ..6 Cylindrical coordinates ..7 Spherical coordinates .. Velocity .. of Linear Velocities ..7 Cartesian Coordinates ..8 Cylindrical Coordinates ..8 Spherical Coordinates .. Matrices .. vs. Passive Rotation ..11 Passive Rotation ..11 Active Rotation .. Rotations .. of Rotations .. of Rotations ..13 Euler Angles ..13 Angle Axis ..18 Unit Quaternions .. Velocity .. Derivatives of Rotation Parameterizations ..22 Time Derivatives of Euler Angles ZYX Angular Velocity .23 Time Derivatives of Euler Angles XYZ Angular Velocity .24 Time Derivatives of Euler Angles ZYZ Angular Velocity .24 Time Derivatives of Euler Angles ZXZ Angular Velocity .24 Time Derivative of Rotation Quaternion Angular Velocity .24 Time Derivative of Angle Axis Angular Velocity ..25 Time Derivative of Rotation Vector Angular Velocity.

2 In Moving Bodies ..28iSome Notes on Vector Differentiation .. of Systems of Bodies .. Coordinates and Joint Configuration .. Coordinates ..31 End-Effector Configuration Parameters ..31 Operational Space Coordinates .. Kinematics .. Kinematics and Analytical Jacobian ..34 Position and Rotation Jacobian ..35 Dependency on Parameterization .. or Basic Jacobian ..37 Addition and Subtraction of Geometric Jacobians ..37 Calculation of geometric Jacobian using rigid body Formulation between Geometric and Analytic Jacobian Matrix .. Control Methods .. Differential Kinematics ..42 Singularities ..42 Redundancy .. Inverse Differential Kinematics Control ..43 Multi-task with Equal Priority ..43 Multi-task with Prioritization .. Kinematics ..47 Analytical Solution ..47 Numerical Solution ..47 Appropriate Rotation Error .. Control ..53 Position Trajectory Control ..53 Orientation Trajectory Control.

3 Floating Base Kinematics .. Generalized Velocity and Acceleration .. Forward Kinematics .. Differential Kinematics of Floating Base Systems .. Contacts and Constraints ..56 Point Contacts - Quadruped ..57 Extended Contacts - Humanoid .. Support Consistent Inverse Kinematics ..573 .. from Classical Mechanics .. s Law for Particles .. Displacements .. Displacement of Single rigid Bodies .. Displacement of Multi- body Systems .. of Virtual Work .. Method .. for Single Bodies .. for Multi- body Systems .. Method .. Energy .. Energy .. Forces .. Constraints .. Newton-Euler Method .. Generalized Equations of Motion .. Forces & Actuation .. and Relation between Methods .. of Floating Base Systems .. Forces ..72 Soft Contact Model ..72 Contact Forces from Constraints .. Consistent Dynamics .. Switches and Impact Collisions ..73 Impulse Transfer ..73 Energy Loss.

4 Dynamic Control .. Impedance Regulation ..75 Gravity Compensation ..75 Inverse Dynamics Control .. Dynamics Control .. Decomposition .. Dynamics .. Motion Control ..77 Alternative Notation .. Space Control .. Inverse Dynamics for Floating-Base Systems .. Quadratic Problems .. Iterative Null-Space Projection .. Sequence of Constrained Optimization .. Task-Space Control for Floating Base Systems as QP .. Quasi-static (Virtual Model) Control ..81A Alternative Derivation Defining A Multi- body System .. Kinetic and Potential Energy .. Applying the Euler-Lagrange Equations ..87B Matlab Code for Multi-task Control .. Inverse Kinematics for Rotations ..90C Matlab Code for 3D Euler angles to rotation matrix .. Rotation matrix to Euler angles ..96iiiivChapter 1 IntroductionThe course Robot Dynamics provides an overview on how to model robotic sys-tems and gives a first insight in how to use these models in order to control the sys-tems.

5 It tries to foster the understanding of the similarities between different types ofrobots, such as Robot arms, legged and wheeled machines, or flying systems, that can bemodeled using the same techniques. In fact, most robots can be described (accuratelyenough) by a single body or a set of bodies on which different forces act. However,these forces can come from different sources. A Robot arm moving in free space isdriven by the actuator forces acting on the joints, while a legged Robot additionallyencounters interaction forces at its feet and flying vehicles are kept in the air due toaerodynamic general, we need to distinguish between two categories of robots, namelyfixedbaseandfloating basesystems. The former category includes all kinds of robotic ma-chines that are rigidly bolted to the ground. The classical example are industrial robotarms. Such systems mostly feature an actuator in every joint, which means that thedegree of freedom (DOF) is equal to the number of actuators in the systems.

6 The lattercategory encompasses mobile systems, robots that have a moving base. In contrastto the Robot arm example, the motion of the floating base can typically not directly becontrolled through actuators but only through external forces acting on the system suchas contact or aerodynamic Lecture script gives a compact overview about the underlying theory. As thecourse is still in development, this script is neither complete nor extensive. As generalreadings for people interested in this topic, we refer to two great books that are availablethrough SpringerLink (free access from ETH), namely Handbook of Robotics (Siciliano, Khatib) [7] Robotics Modelling, Planning and Control (Siciliano, Sciavicco, Villani, Ori-olo) [8] NomenclatureThe following list holds as reference table for the entire script. While almost everytextbook uses a different nomenclature, we try to stick here to the IEEE standards forthe style and use index parameter to ensure a complete descriptionrvector (bold small letter)Bmatrix (bold capital letter)eAx,eAy,eAzunitary basis vectors of coordinate frameAAcoordinate frameA(caligraph letter)Aorigin of coordinate systemAeIx,eIy,eIzglobal / inertial / world coordinate system (never moves)ArAPposition vector of point P the origin of frameAexpressed inframeA ABdescribes the orientation of , which is SO(3) Pstacked parameters of position representation Rstacked parameters of orientation representation P,0minimal-dimensional stacked parameters of position representation R,0minimum-dimensional stacked parameters of orientation representa-tionvP(absolute) velocity of point P inertial frameaP(absolute)

7 Acceleration of point P inertial frame ABangular velocity of B=I IBabsolute angular velocity of frameB B= Babsolute angular acceleration of frameBnqtotal number of generalized coordinates, respectively velocitiesnjnumber of jointsnlnumber of linksn number of actuated jointsnbnumber of base coordinatesncnumber of contact pointsmnumber of end-effector configuration parametersm0number of operational space coordinates= minimal number of end-effector configuration parameters machine precisionx the star stands for a desired valueqgeneralized coordinatesJJacobian matrixJAanalytical Jacobian matrixJ0basic Jacobian matrixN=N(J)null-space projector OperatorsThere exist a number of special operators such asCross product/skew/unskewa b= a1a2a3 b1b2b3 = [a] b= 0 a3a2a30 a1 a2a10 b1b2b3 Euclidean norm a = aTa= a21+..+a2nAbsolute vector|a|=(|a1|..|an|)Null space projectorN(J)34 Chapter IntroductionKinematics is the description of the motion ofpoints,bodies, andsystems of bodies.

8 Itdoes only describehowthings are moving, butnot why. To describe the kinematics ofa moving point, we will refer to position vectors, which are generically defined inR3,and their derivatives. For an extended body , we need to additionally take into accountrotations SO(3)to completely define its the following, we will first discuss the basics of kinematics by describing themotion of points and single bodies before moving on to serial systems of bodies insection r Figure : Representation of positions using Cartesian, cylindrical, or spherical PositionThe position of a pointBrelative to pointAcan be written asrAB.( )For points in the three dimensional space, positions are represented by vectorsr order to numerically express the components of a vector, it is necessary to define areference frameAand to express the vector in this frame:ArAB.( )The unit vectors(eAx,eAy,eAz)of frameAform an ortho-normal basis Representation of PositionsRepresenting a position in the three dimensional space requires three coordinatesThe most common approach is to work with Cartesian coordinates and hence parame-terize the position by Pc= xyz ,( )which implies that a position vector is simply given byAr=xeAx+yeAy+zeAz= xyz ( )6 Cylindrical coordinatesA second approach is to work with cylindrical coordinates Pz= z ,( )which implies that a position vector is given byAr= cos sin z.

9 ( )Spherical coordinatesA third method is to use spherical coordinates Ps= r ,( )which implies that a position vector is given byAr= rcos sin rsin sin rcos .( )Note: All the previously introduced parameterizations require three parameters todescribe a position in 3D space, meaning that they are at the same time also minimalrepresentations. This will be different for rotations as shown in section In mostof the cases, people work with Cartesian coordinates due to the simple properties forvector Linear VelocityThe velocity of pointBrelative to pointAis given by rAB.( )For three dimensional space, velocities are represented by vectors r R3. For per-forming vector algebra, the same rules as introduced for the positions need to Representation of Linear VelocitiesThere exists a linear mappingEP( )between velocities rand the derivatives of therepresentation P: r=EP( P) P( ) P=E 1P( P) r( )7 Cartesian CoordinatesFor Cartesian coordinates, the mapping is simply the identity:EPc( Pc) =E 1Pc( Pc) =I( )Cylindrical CoordinatesFor cylindrical coordinates we get r( Pz) = cos sin sin + cos z ,( )which can be solved for Pz= z = xcos + ysin xsin / + ycos / z = cos sin 0 sin / cos / 0001 E 1Pz x y z.

10 ( )The inverse isEPz( Pz) = r( Pz) Pz= cos sin 0sin cos 0001 .( )Spherical CoordinatesUsing the same approach for spherical coordinates results in:EPs= cos sin rsin sin rcos cos sin sin rcos sin rcos sin cos 0 rsin ,( )E 1Ps= cos sin sin sin cos sin /(rsin ) cos /(rsin )0(cos cos )/r(cos sin )/r sin /r .( )8eAxeAyeAzeBxeBzeByPA=BFigure : Generic 3D rotation between two RotationWhile the configuration of a point is fully described by a position, bodies additionallyrequire arotationto define their pose. As theoretical abstraction of rotations, AB SO(3)( )is often used to indicate the orientation of body fixed frameBwith respect to a referenceframeA. It is important to understand that, since ABlives inSO(3), there is nonumerical equivalent to a position such as angular position . Instead, the orientation ABcan be parametrized in several ways. For a better understanding, we will startby defining the mapping between coordinate frames by means ofrotation matricesandthen show how these relate to different Rotation MatricesConsider the situation depicted in Fig.


Related search queries