Manipulator Dynamics and Haptics 2017 (BIMMD16)

W.S. Harwin

Matrix version of cross product

Given a vector $\vec{u}$ we can construct a skew matrix

where $$ S_u= \begin{bmatrix} 0 & -u_z & u_y \\[3pt] u_z & 0 & -u_x \\[3pt] -u_y & u_x & 0 \end{bmatrix} $$

This then allows an alternative calculation of a cross product so that $$ \vec{u}\times \vec{v}=S_u \vec{v} $$

An obvious relationship is that $S^T=-S$

An identy of the skew matrix is that $$ S_u S_u=u u^T - I u^T u $$

also $$ S_u u =0 $$

Rodrigues formula

In vector form a matrix rotated by angle $\theta$ about a unit vector $\vec{u}$ is given by Rodrigues rotation formula as

\[ \vec{v}_\mathrm{rot} = \vec{v}\cos\theta + (\vec{u} \times \vec{v})\sin\theta + \vec{u} ~(\vec{u} \cdot \vec{v}) (1 - \cos\theta) \]

By using the Skew matrix to express the cross product and noticing that a dot product can be computed as $\vec{u}^T\vec{u}$ we can derrive a matrix form of rotation where \[ \vec{v}_\mathrm{rot} = R(\theta)\vec{v} \] where \[ R(\theta) = I\cos\theta + \sin\theta S_u + (1-\cos\theta)\vec{u}\vec{u}^T \] alternatively $$ R = \sin\theta S_u + \vec{u}\vec{u}^T + (I-\vec{u}\vec{u}^T)\cos\theta $$

Physics of space

Consider a box in space where you are in the box and can't see out. What can you infer about what is happening outside? In the box is a small object, perhaps it is a sphere but it has mass, you know this because when you move it you can feel the forces that are appled and these are consistent with Newton's law F=ma, so from the forces you apply and the accelerations you measure you can infer the object mass. You now release a mass at some point in the box and observe what it does. Let us say that it stays floating in the same position relative to the box. You might try to move it to another position in the box and release it. If it still floats in the same position relative to the box you can conclude that the object is stationary at all points so perhaps the box is stationary. But perhaps there is an alien outside the box who is moving past the box. So far as the alien is concerned the box is moving while is stationary.

Later you repeat the experiment. This time the moves towards one wall of the box, lets call it the floor. Wherever in the box you release the mass it moves towards the floor and always with the same acceleration. Now all you can infer is that a) either the box is accelerating at a constant rate, or b) just below the floor is a mass that is so large that the difference between $f1=GMm/r^2$ and $f2=GMm/(r+d)^2$ is so small that it is immeasurable.

But what if the box is spinning, perhaps around a point inside the box, or perhaps around a point at some distance from the box. The first thing to observe is that when you release the mass it will accelerate radially and in proportion to the distance it is from the centre of rotation. Thus you can calculate the point you are spinning around, and how far you are from that point. The second is that as long as there are no torques being applied to the box, it will keep spinning on an axis.

So the message is, that if you are in a local coordinate frame, you can determine if forces are being exerted because you are experiencing a linear acceleration, or if the (constant) forces are being exerted because you are rotating at a specific angular velocity. Of course the angular velocity vector may be moving in time, in which case you also have an angular acceleration vector.

Relating these accelerations in a local frame to an external observer can then be used to explain the gyroscopic effect, and why in some senses the coreolis forces and the centrifugal forces can be considered ficticious (i.e. the do not occur in non accelerating frames of reference).

- Euler's rotation theorem

Denavit Hartenberg revision

Two link dynamics

The general dynamic equation of a serial linkage robot [Spong06][Craig89] is

\[ D(\underline{q})\ddot{\underline{q}}+C(\underline{q},\dot{\underline{q}})\dot{\underline{q}} +G(\underline{q}) = \underline\tau \]

where $\underline{q}=[q_1\ q_2]^T$ are the joint angles (and their derivatives) and $\underline{\tau}=[\tau_1\ \tau_2]^T$ are the joint torques

Consider a planar revolute two-link with link lengths $l_1$ and $l_2$. Assume the mass of link 1 is $m_1$ with the center of mass at $l_{c1}$ and an inertia of $I_1$. Likewise assume the mass of link 2 is $m_2$ situated at $l_{c2}$ with inertia $I_2$

The matrices and vectors are then \[D= \begin{bmatrix} d_{11}&d_{12}\\ d_{21}&d_{22} \end{bmatrix} \] where

\begin{align*} d_{11}=& m_1 l_{c1}^2+m_2 (l_1^2+l_{c2}^2+2 l_1 l_{c2}\cos q_2)+I_1+I_2\\ d_{12}=d_{21}=& m_2 (l_{c2}^2+l_1 l_{c2} \cos q_2)+I_2\\ d_{22}=&m_2 l_{c2}^2+I_2 \end{align*}

and \[C=h\begin{bmatrix} \dot{q}_2 & (\dot{q}_1+\dot{q}_2)\\ -\dot{q}_1&0 \end{bmatrix} \]

where \[ h=-m_2 l_1 l_{c2}\sin(q_2) \]

finally \[ G= \begin{bmatrix} (m_1 l_{c1}+m_2 l_1) g \cos(q_1) + m_2 l_{c2} g \cos(q_1+q_2)\\ m_2 l_{c2} g \cos(q_1+q_2) \end{bmatrix} \]

Haptics in action


A Brachiation Robot

The first brachiation robot work was done by Saito, Fukada et al.[Saito1994swing][Saito1993swing] in the Robotics Lab at Nagoya University. Publications on Brachiator III aparently in F. Sato 97 Artificial life V and Y. Hasegawa Advances in artifical life 1999 Fukuda

Brachiator II (1994) Brachiator III (1997)

Brachiation was run as a student project at VUB in about 2012/2013, and published on youtube by Michael Gutmacher


Assume the following parameters for the Saito and Fukuda's brachiation robot.

M Mass of each link kg 1.2
I inertia of each link (about the CoG) kgm^2 .03
link length m .5
location of CoG m .25
viscous friction between the robot and the rung (b)Nms .3
distance between rungs m 0.4-0.6


Temporary link

Papers to read

Author doi
wk11Lederman 2009 10.3758/APP.71.7.1439
wk12Ernst 2002 10.1038/415429a
wk13Carignan either 2000 or 2003
wk14Melder 2003,2004, Harwin 201310.1109/HAPTIC.2004.1287201
  1. SJ Lederman and RL Klatzky, "Haptic perception: A tutorial" Attention, Perception, \& Psychophysics Springer pp 1439--1459 ( 2009) \url{} 10.3758/APP.71.7.1439
  2. M.O. Ernst and M.S. Banks, "Humans integrate visual and haptic information in a statistically optimal fashion" Nature Nature Publishing Group pp 429--433 ( 2002) \url{} 10.1038/415429a
  3. C.R. Carignan and K.R. Cleary, "Closed-Loop Force Control for Haptic Simulation of Virtual Environments" (February 2000) \url{}
  4. C.R. Carignan and D.L. Akin, "Using robots for astronaut training" Control Systems Magazine, IEEE (April 2003) \url{} 10.1109/MCS.2003.1188771
  5. W.S. Harwin and A. Barrow, "Multi-finger grasps in a dynamic environment" Multi-finger Haptic Interaction Springer editors I.J. Bujanda and M. Ferre pp 5--30 ( 2013) editors I.J. Bujanda and M. Ferre \url{}
  6. Melder and Harwin 2004 \url{}
  7. Melder and Harwin 2003 \url{}

Thril lab

Thril lab Videos

See youtube

{indented} Haptic blocks Virtual wine Rocket ship maze Basket ball Large reach haptics Robotics in neurorehabilitation Peter Bennetts Hapkit haptic drum kit
Haptel Haptel on 10 WEIRDEST Ways People Are Using Virtual Reality!

Other research Hexapod - Driving Simulator Application Simodont - dental training Shiraz University Hexapod Teaching friction with the Novint Falcon Bracho plexus nerves model (Imperial/Bello) Hiro III

Other videos


[Saito1994swing] Fuminori Saito, Toshio Fukuda and Fumihito Arai, Swing and locomotion control for a two-link brachiation robot 1994 doi=10.1109/37.257888

[Saito1993swing] F. Saito, T. Fukuda and F. Arai, Swing and locomotion control for two-link brachiation robot 1993 doi=10.1109/ROBOT.1993.291874

[KSFu87] K.S.Fu, R.C.Gonzalez and C.S.G. Lee, Robotics; Control, Sensing, Vision Intelligence. 1987 (background) UR call 629.892-FU

[KSFu87] K.S.Fu, R.C.Gonzalez and C.S.G. Lee, Robotics; Control, Sensing, Vision Intelligence. 1987 (background) UR call 629.892-FU

[Craig89] John J. Craig, Introduction to robotics : mechanics and control 1989

[Spong06] Mark W. Spong, Seth Hutchinson and M. Vidyasagar, Robot Modeling and Control 2006