Friday, March 29

Underactuated Robotics

I recently came across materials from a class on MIT's Open Courseware (OCW) that has me pretty excited: Underactuated Robotics. I ran into one of the lecture notes during my investigation into inverted pendulum control schemes (a project which sort of branched out of my review of the calculus of variations). I was originally interested in modeling the dynamics of a pendulum in a variety of force fields and decided it would be more interesting to investigate controlling that system in ordinary conditions. I'm planning on implementing this system physically once I have a sense of what I would like to accomplish with it.

 The first lecture opened my ears to a fundamental bifurcation in the application of mechanical and control system design. Primarily, fully actuated systems which possess the same number of actuators as they do degrees of freedom and underactuated systems which have no direct influence over the unactuated degrees of freedom. More succinctly, fully actuated systems are capable of producing accelerations along arbitrary directions in the state space. For systems where the dynamics may have a linear relationship with the actuation vector:

$\ddot{q} = f_1(q,\dot{q},t) + f_2(q,\dot{q},t)u $

Where $q$ is a vector in the state space, $u$ is a vector of all actuators, and $f_2$ maps the actuators to some dimension in the state space. A fully actuated system will possess the following property:

$rank[f_2(q,\dot{q},t)] = dim[q]$

Whereas underactuated systems will not map the actuation space to all dimensions of the state space.

$rank[f_2(q,\dot{q},t)] < dim[q]$


In order to reach a particular position in the state space, an underactuated system must make use of the indirect and dynamic characteristics of the system that relate the actuated features of the state vector to the desired unactuated feature. For instance, a cart and pole inverted pendulum is underactuated. It may be modeled as an actuated prismatic joint coupled with an unactuated revolute joint with some mass at the end of the free member. This is apparent because there are two degrees of freedom in the system and only one actuator. It is generally possible to reach any point in the state space, but not necessarily possible to describe any path through the space. The available paths that may be taken through the state space are defined by the dynamics of the system.



What is the value of considering underactuated systems? Wouldn't it be prudent to simply actuate every degree of freedom in a system? The problem lies in the fact that fully actuated systems are rare; fully actuated  systems are only a subclass of idealized mechanical systems. The manifestation of those idealizations in reality always involve unaccounted for degrees of freedom in the system. This seems to go along with a theme that I've been picking up on where the well understood problems tend to be the least numerous. Also, even idealized mechatronic systems are rarely fully actuated in application and even those that are idealistically fully actuated in may contain particular critical configurations of the system that are underactuated (i.e. gimbal lock in an RRR robotic arm).

The difference between these philosophies is that, in practice, fully actuated systems are easier to implement and are better understood but are limited in scope. For instance, a 6-axis floor-mounted robotic arm is fully actuated. The position of the end-effector may be modeled as a serial kinematic chain starting from the static base. Most importantly, every degree of freedom in the state space may be mapped to an actuator. Neglecting the constraints of the actuators, this system can move through any continuous path in its state space. However, the state space of a floor-mounted robotic arm isn't very interesting (that is, it is interesting, but it has been beaten to the edge of death due to its utility in industrial applications). Meanwhile, underactuated systems tend to involve nonlinear behavior, requiring special (and trickier) control policies in order to navigate from one configuration to another.

The control design methods utilized in implementing underactuated systems are also applicable to fully actuated systems. There is an additional utility associated with accounting for system dynamics: optimality of control policies and adoption of constraints. Fully actuated systems may perform accelerations on arbitrary directions in the state space but the magnitude of those accelerations will depend on the dynamics, the current state, and some constraint on the actuator output (i.e. maximum torque, force, etc.). The same tools utilized by underactuated systems which account for the system dynamics may be employed by fully actuated systems for optimal control or performance under constraints.


Tedrake, Russell. 6.832 Underactuated Robotics,Spring 2009. (Massachusetts Institute of Technology: MIT OpenCourseWare), http://ocw.mit.edu (Accessed 29 Jan, 2013). License: Creative Commons BY-NC-SA

No comments:

Post a Comment