animation of a gyroscope

A while ago, I investigated exact solutions to mechanical problems that arise for articulated structures in space, where gravity and friction are low.

Rigid Body Collision Resolution |

Elastischer Stoß |

Animation of Skeletons with Hinges and Spherical Joints |

Visualizations of data in the public domain:

From the Study of the CIA's Detention and Interrogation... |

Afghan War Diary 2004—2009, Chronology of deaths... |

Visualization inspired by art installation:

Was er für Geld da schreibt, ist gut geschrieben.

Was er verschweigt, die Wahrheit wär's gewesen.

Eugen Berthold Friedrich Brecht

skeleton with spherical joint and hinge

During a visit at the Agenţia Spaţială Română in Bucharest/Romania, Alexandru Pandele explained to me the attitude control of the cube satellite that is being built in 2009. The satellite is equipped with two flywheels. The bearing of a wheel is a special hinge.

He motivated me to derive an algorithm to animate a skeleton of rigid bodies that are linked by hinges and spherical joints. Over the course of the simulation, the total linear momentum, and the total angular momentum are invariant. If desired, the algorithm incorporates intrinsic torques of the joints such as friction, and motor control. Otherwise, the total kinetic energy is invariant, too.

The input to the problem are:

- 0th and 1st order initial dynamic states of the objects: position, velocity, orientation, and angular velocity
- mass and inertia tensor of the objects
- location and orientation of the hinges and spherical joints
- friction and motor control at the joints
- connectivity between the objects and joints

The output are:

- linear and angular accelerations of each object

Our derivation shows that these accelerations are determined by linear equations. The article starts by considering skeletons with hinges only. However, the introduction of spherical joints turns out to be simple at a later point: the vector that formerly represented the axis of a hinge is just set to zero.

Timpul învață pe cei fără şcoală.

Animation of Skeleton with Hinges and Spherical Joints | skeleton_anim...pdf | 410 kB |

Documentation as a Mathematica 5.2 notebook | skeleton_anim...zip | 1.1 MB |

Demo with source code (C++) * | skeleton_demo.zip | 290 kB |

There is something about a closet

that makes a skeleton terribly restless.

Wilson Mizner

To verify our derivation, we implement an open source simulation of the dynamics. Our algorithm uses double precision and simple Euler integration with small timesteps. The simulation suffers from numerical error in the integration: After a while, links separate, and the total angular momentum is not invariant.

Ştiu că sunt prost.

Dar când mă uit în jur,

prind curaj.

Ion Creangă

Foucault pendulum

Later, Thomas Neukirchner suggested two applications of the simulation software: the modelling of a Foucault pendulum, and a falling cat. Great fun!

We have placed Foucault pendulums at three different lattitudes: At the pole the effect is largest. At the equator, the effect does not exist.

The sequence of the configurations of the extremities is inspired by the cat righting reflex of Wikipedia:

- Bend in the middle so that the front half of their body rotates about a different axis than the rear half.
- Tuck their front legs in to reduce the moment of inertia of the front half of their body and extend their rear legs to increase the moment of inertia of the rear half of their body so that they can rotate their front half quite far (as much as 90°) while the rear half rotates in the opposite direction quite a bit less (as little as 10°).
- Extend their front legs and tuck their rear legs so that they can rotate their rear half quite far while their front half rotates in the opposite direction quite a bit less.

Depending on the cat's flexibility and initial angular momentum, if any, the cat may need to repeat steps two and three one or more times in order to complete a full 180° rotation. Cute cats also fall on YouTube - no cats harmed.

The control of the hinges in the 'Falling cat' animation is described in Section 4.4 of my work on the Marsokhod robot.

Attitude pacification with flywheels

We model a cube satellite with a collection of flywheels. Each flywheel is connected to the main satellite body by a hinge joint that is powered by a motor. The axis of the motor aligns with the axis of the hinge.

The effect of the torque of each motor on the turning rate of the main body is a linear relationship. The mapping allows us to combine the torques from the motors so that the turning rate of the main satellite body eventually subsides. The flywheels in turn may speed up or slow down. In the simulation, the torques excerted by the motors are bound by a constant. The total linear and angular momentums are constant.

A satellite with only two flywheels installed requires a sofisticated control maneuvre for attitude stabilization in general. The simulation shows a residue in the turning rate after a naïve, greedy control approach is applied to the flywheels.

Spherical robot

The configuration of the spherical robot is taken from the design by Masaki Nagai described in his Thesis "Control System for a Spherical Robot". The robot is sometimes referred to 'Sushi' or 'Gimball'.

The mass ratios of sphere, bar, and lever are 1:1/2:3. The inertia tensors assume equal mass distribution throughout the volumes. The floor has a mass close to infinity and the inertia tensor of a sphere. The red and green cones visualize the non-static contact joint between floor and robot. The linear and angular moments are constant = 0.

For shadow rendering, consult the excellent article "Practical and Robust Stenciled Shadow Volumes for Hardware-Accelerated Rendering" by Cass Everitt and Mark J. Kilgard.

Lenea e la om ca rugina la fier.

During my employment at EADS Astrium I had the chance to roam around in the south of France and north of Spain. Here are pictures taken at the time:

Don't ask me,

I'm too low on the totem pole.