Control of Underactuated Robots

The Butterfly Robot

butterfly_front.jpg        butterfly_side.jpg

The Butterfly is a robot consisting of a butterfly-shaped link (driven by an electrical motor) on whose rim a ball can freely roll. It was originally conceived by Kevin Lynch at Northwestern University, as an example of dynamic (i.e., nonprehensile) manipulation. Since the Butterfly is underactuated (two dof's – the link orientation and the ball position along the rim – and only one input), it brings up a number of interesting control problems. Two of them are discussed below.

Stabilization of unstable equilibria 

butterfly_strobo.jpg                  butterfly_phaseplane.jpg

The problem is to stabilize the system at a configuration where the butterfly link is horizontal and the ball is at one of the two associated unstable equilibria. The objective can be obtained via a two-phase controller. In the first phase (swing-up), a nonlinear energy-based control law drives the system to the heteroclinic trajectory which asymptotically approaches the desired equilibrium. In the second phase (balancing), an LQR control law keeps the system at the unstable configuration.

The above figure shows on the left the stroboscopic motion of the Butterfly, and on the right its trajectory in the ball phase plane (phi is the ball angular position along the link profile). The heteroclinic orbits (one for each unstable equilibrium) are marked in red. Note in the last part of the trajectory the effect of the LQR controller.


Watch here a simulation clip of the proposed controller. The simulation model is an accurate approximation of our experimental set-up, and includes various model perturbations such as friction and the effect of the ball angular velocity around its center (neglected for control design). Also simulated are an optical encoder for measuring the link orientation and a camera system providing the ball position, with the associated quantization and delay effects. The positive outcome of the simulation shows in particular that the energy-based approach, originally developed for conservative dynamics, can also work for dissipative systems.


The energy-based control technique for the Butterfly robot has been developed by: G. Oriolo, L. Lanari and M. Cefalo. More details are given in this paper, presented at the 8th International IFAC Symposium on Robot Control (SYROCO 2006) in Bologna, Italy.

Road to experiments

We are currently working to implement the proposed controller on our experimental set-up. Our first attempt was to use a webcam (with a maximum frame rate of 60 fps) together with a Kalman filter to obtain a measure of the ball position in real-time. The results, which you can see here, led us to conclude that a high speed camera, providing at least 200 fps, was needed. This is especially crucial for guaranteeing a timely transition between the swing-up and the balancing phase. An appropriate camera has been purchased and is currently being integrated in the set-up. 

Transfer between stable equilibria

Starting with the ball in one of the two stable equilibria, the objective is to execute a 180° rotation of the link and lead the ball to rest in the other stable equilibrium. To get an idea of the difficulty of this task, watch us trying to do it manually! Kevin Lynch and his students managed to design a feedback control law for a "gentler" version of the Butterfly system where the gravity acceleration is about 1/10 of g. We are currently trying to develop a solution for our system.

Back to the LabRob Home Page