Skip to main content
  1. Technical Projects/

Lagrangian Dynamics of a Series Elastic Manipulator

kinematics dynamics simulation control matlab

Background

When I started this project, I was interested in the Lagrangian dynamics underlying much of my own research, as well as the idea of manipulators with series elastic actuators. Compliance in the system could make people safer around these robots, and stiffness could be “brought back” using PD control.

The Project

The bulk of this project involved implementing the dynamics of this specific robot arm in MATLAB, using the available integrators to simulate the equation(s) of motion over time. The trickiest component was modeling the springs in series with the motors; I accomplished this by including spring displacement as its own part of the robot state space. When all dynamics are accounted for, the arm behaves as one would expect with no control strategy.

Springy arm
Series elastic robot arm with no control strategy (Enable GIFs in your browser)

In this instance, control is as simple as using a PD controller to track the position setpoint over time. This controller is intimately related to the series elastic actuators powering the manipulator; the proportional gain adjusts the spring constant, and the derivative gain adds damping to the system. With a little bit of damping added, the system behaves much less erratically.

Damped arm
Series elastic robot arm with underdamped feedback control (Enable GIFs in your browser)

Current Status and Future Work

This was effectively an exercise in implementation of Lagrangian dynamics for a real system; the approach ought to scale well for any sort of manipulator, due to its group-aware construction. However, this sort of code ought to be available in any good dynamics library, or provided when a manipulator is purchased.

Capprin/soft-arm-sim

Full dynamic simulation of soft/springy robot arm

MATLAB
1
1