Lecture 23
Lecture 23
Scribe: Jiahui Li, Shuyang Zhao, Saloni Takawale, Chaitrali Kshirsagar, Yogesh Gajjar
Contents
1 Recap: Dynamics of Robotic Manipulators 2
2 König Theorem 2
5 Control 6
5.1 Decentralized Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5.2 Centralized Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5.3 Example: Gravity Compensation . . . . . . . . . . . . . . . . . . . . . . . . . 7
1
CSCI 545: Introduction to Robotics Fall 2019
2 König Theorem
In kinetics, König’s theorem or König’s decomposition is a mathematical relation derived
by Johann Samuel König that assists with the calculation of kinetic energy of bodies and
systems of particles. The theorem can be applied to rigid bodies(manipulator link),
stating that the kinetic energy T of a rigid body(manipulator link) can be written as:
Ti = 12 mi v2i + 12 ωiT Ii ωi
where m is the mass of the rigid body; v is the velocity of the center of mass of the
rigid body and is the angular velocity of the rigid body. ωi Ii should be expressed in the
same reference frame, but the product ωiT Ii ωi is invariant w.r.t. any chosen frame.
The above formula can be obtained by the formula (1) and (2) from the recap section.
T = v 21 ρ ṗ T ṗdv where p is the velocity and v is the mass of the rigid body.
R
= 21 v ρ(|| ṗ||2 + 2 p˙c S(ω )r + (S(ω )r )T (S(ω )r ))dv where pc is the velocity of the centre
R
of the mass of the rigid body
• 21 v ρ|| ṗ||2 dv = 21 p2c v which is the translational kinetic energy (point mass of CoM)
R
R R
• V ρ( p˙c S(ω )r )dv = p˙c S(ω ) v rdv = 0
• 12 v ρ((S(ω )r T (S(ω )r )))dv = 12 v ρ((−S(r )ω )T (−S(r )ω ))dv since ωxr = rxω and
R R
S ( ω )r = − S (r ) ω
= 12 v ρω T S(r )T S(r )ωdv
R
2
CSCI 545: Introduction to Robotics Fall 2019
where ( xi , yi ) represents the position of the center of mass of the ith link; qi is the
angular between ith link and (i − 1)th link(q1 is the angular between 1st link and ground).
3
CSCI 545: Introduction to Robotics Fall 2019
Forward dynamics allows the motion of the real physical system to be described
in terms of joint accelerations when a set of assigned joint torques is applied to the
manipulator; joint velocities and positions can be obtained by integrating the system of
non-linear differential equations.
For simulation of manipulator motion, once the state at the time instant tk is known
in terms of acceleration q̈(tk+1 ), then using Euler Integration method with integration
step of ∆t, the velocity q̇(tk+1 ) and position q(tk+1 ) at time instant tk+1 = tk + ∆t can be
computed as follows:
q̇(tk+1 ) = q̈(tk )∆t + q̇(tk ) ....... (a)
q(tk+1 ) = q̇(tk )∆t + q(tk ) ....... (b)
4
CSCI 545: Introduction to Robotics Fall 2019
Once a joint trajectory is specified in terms of positions, velocity and acceleration (typ-
ically as results of inverse kinematics procedure) and if end-effector forces are known,
inverse dynamics allows computation of torques to be applied to joints to obtain desired
motion. This computation is useful both for verifying feasibility of imposed trajectory
and also for compensating non-linear terms in dynamic model of manipulator.
For a n-joint manipulator, the number of operations required for computing inverse
dynamics is: O(n)
5
CSCI 545: Introduction to Robotics Fall 2019
5 Control
5.1 Decentralized Approach
Decentralized Approch is basically used to calculate τ ( InverseDynamics).
In decentralized approach, we consider few things such as
In this approach, we apply a PD control separately for each joint. A better approach
however is the Centralized Approach which takes into account the dynamics of the sys-
tem.
To take into account error between desired and current, consider q̃= qd − q Then,
B(q)q̃¨ + C (q, q̇)q̃˙ = −K p q̃ − Kd q̃˙
6
CSCI 545: Introduction to Robotics Fall 2019
Lyapunov’s method is used for examining the stability of a system. Lyapunov func-
tion is a function of energy of the system. Lyapunov’s method is concerned with de-
termining the stability of a system. To prove a system stable by Lyapunov’s method,
one is required to propose a generalized energy function V ( x ) that has the following
properties:
• V ( x ) = 0 if and only if x = 0.
7
CSCI 545: Introduction to Robotics Fall 2019
h!
Figure 4:
References
[1] Robotics − Modelling, Planning and Control by B. Sicilliano