Optimal Control of the Chaplygin Beanie


The Chaplygin Beanie is an underactuated system proposed by Kelly et. al. [1]. It consists of a cart and a rotor connected by a motor. The cart is supported by an off-center wheel to which a no-slip condition is applied and enough frictionless casters to balance it. The rotor is aligned with the center of mass, and the motor is the only actuator in the system.

A diagram of the Chaplygin Beanie — reproduced from [1].

A diagram of the Chaplygin Beanie — reproduced from [1].

When the rotor spins, conservation of momentum dictates that the cart must spin in the opposite direction. If the no-slip condition is coincident with the center of mass the entire system will simply spin in place, but since the wheel is off-center the no-slip condition forces a forward translation to occur in conjunction with the rotation (regardless of rotation direction).

This coupling of rotation and translation allows a single actuator to produce motion in two-dimensions, meaning that it is conceivable that the Chaplygin Beanie can effectively navigate 2D space. Intuitively, we might deduce that a sinusoidal control strategy should drive the system to oscillate sinusoidally around a straight line trajectory (with some initial angular offset), since clockwise and counterclockwise rotations will cancel but the translation is always forward. Coupling this with additional rotations would create an initial plan for trajectory generation.

I looked at applying trajectory optimization to determine the optimal control strategy to move the Chaplygin Beanie from some starting position to some final position — either proving or disproving the intuition of sinusoidal control — and to develop an LQR controller that would enable the system to follow this trajectory.

The problem is set up via direct collocation as a nonlinear program (NLP), with the objective to minimize control effort, and then solved for an optimal trajectory. The initial state is constrained exactly, but only the final x, y, and θ positions are constrained as well as the rotor velocity. The final orientation of the rotor is left arbitrary, as is the final velocity (Kelly shows that the Chaplygin Beanie cannot stop absent friction [1]). The NLP is then solved using the SNOPT toolbox for MATLAB.

nlp.png

Finally, I designed an LQR controller to follow the trajectory. The dynamics of the system are linearized about a time-parametrized trajectory and then the time-varying Riccati equation is solved to minimize a cost-functional.

The cost function.


The cost function.

The time-varying Riccati equation solved backwards to find the optimal controller.

The time-varying Riccati equation solved backwards to find the optimal controller.

Some sample trajectories are shown below. As expected, LQR control performs better than open-loop application of the optimal control law. But the results are intriguing – a sinusoidal input is not actually optimal. Instead, it is much more energy efficient to ride turns to build speed and then orient towards the final destination.

 
 

Attribution

This project was done as work for MEAM517 - Control and Optimization with Applications in Robotics, taught by Dr. Michael Posa at the University of Pennsylvania, Fall 2018.

References

[1] S. D. Kelly, M. J. Fairchild, P. M. Hassing, and P. Tallapragada, “Proportional heading control for planar navigation: The Chaplygin beanie
and fishlike robotic swimming,” Proc. American Control Conference,
pp. 4885–4890, 2012.