Matthew T. Mason
Director, Robotics Institute

Professor, Computer Science and Robotics
Carnegie Mellon University
5000 Forbes Avenue
Pittsburgh PA 15213

Voice: (412) 268-8804
Fax: (412) 268-7350
Email: matt.mason@cs.cmu.edu

Administrative assistant:

Jean Harpley
(412) 268-3802
jean@cs.cmu.edu

CV

 

Mechanics of Robotic Manipulation

Matthew T. Mason
MIT Press
August 2001.

If you want to adopt this book for a course please contact Margie Hardwick <hardwick@mit.edu>, MIT Press Textbook Manager for examination copies.

MIT Press listing.

Amazon listing.

Online stuff:

Research

Course

Links

Manipulation Lab Publications

As of 29 Mar 2010, I was ranked 2,474th nationally in squash (619 in men's 3.5 skill level).



 

Matt's Research Interests

Humans understand how the world works, in a way that enables them to manipulate the world very effectively. Robots lack that understanding. My goal is to discover the nature of that understanding. Part of my time goes toward exploring the fundamental mechanics of manipulation: how one's actions affect the world. Part of it goes toward automatic planning: given some goals, what actions would be appropriate. Below are brief descriptions of a variety of projects to explore these issues. (Most of the below is pretty old. Here are links to some more recent projects.)

Desktop Robotics (Robotic Dungbeetles?)

Is it possible to build robots that take the desktop as their task domain? They should be able to perceive the state of a desktop, to navigate the desktop, and manipulate objects commonly found on a desktop. I've begun a project to explore the desktop as a task domain. (I've been working with Mike Erdmann, Illah Nourbakhsh, Dinesh Pai, and Daniela Rus.) Our first system is a mobile robot which uses its wheels for manipulation as well as for locomotion. Imagine a small car planting its front wheels on a piece of paper, and using the rear wheels to drive the robot and the paper around. At the same time, if the front wheels are powered, the robot could use them to manipulate the paper. Or even more challenging: imagine the car rolling its front wheels onto a pencil, then rolling the pencil around on the desk, sort of like a dung beetle.

 Mobipulator's first step.
8/17/98. quicktime 1 Meg
 Inchworm mode.
quicktime 633
K
 Scoot mode.
quicktime 594K

 Rolling PVC pipe.
493K
 RC mobipulator with PCB.
708K
 RC mobipulator in hand.
330K

A related development is some work on rapid prototyping of mobile manipulators and mobile robots. The RC Mobipulator (see videos immediately above) was built in half a day using hobby robotics techniques. A terse set of instructions is available here. The Palm Pilot Robot Kit is the most interesting example. It is primarily the work of Greg Reshko, collaborating with Illah Nourbakhsh and Garth Zeglin. The Palm Pilot Robot Kit is a design for an easy-to-build, fully autonomous robot controlled by a Palm handheld computer.

Dynamic Manipulation (Robot Juggling, of a sort)

Robots typically use static and quasistatic methods to interact with the world. People, on the other hand, are adept with dynamic methods. Some scientists, notably Bill Calvin, have argued that the evolution of the human brain was driven by the challenges of accurate throwing. It is an interesting challenge to model-based robotics to develop robots that can exploit the dynamics of a task domain. Kevin Lynch's PhD thesis demonstrated several instances---a snatch, a throw, and a rolling throw. Each of them is planned automatically using information about the object such as its shape and mass, and also with a good model of the dynamic behavior of our arm. Here's a video of a rolling throw:

Kevin Lynch's Rolling Throw.
quicktime 2.2 Meg


Pushing

Usually we think of robots moving things around by picking them up, but pushing is sometimes better. Think of rearranging your furniture, gathering coins off your desk, or packing the trunk of your car to get an idea of the advantages. As another example, note that the early influential SRI robot SHAKEY worked by pushing things around on the floor, as do many modern mobile robots.

My 1982 PhD thesis was about pushing. Mainly it was about the mechanics of pushing--about which way a pushed object will move. It also addressed the problem of automatic planning, of finding a pusher motion that will move an object as desired. My thesis was published by MIT Press, along with Ken Salisbury's thesis, under the title Robot Hands and the Mechanics of Manipulation. But the best publication for this work is the paper in the International Journal of Robotics Research., v5 n3, 1986.

In collaboration with Randy Brost, Ken Goldberg, Srinivas Akella, and Kevin Lynch, I have continued to work on pushing. Randy Brost applied the work to a grasping problem, and developed an automatic planner. Ken Goldberg further refined the grasp planning ideas, and developed some potential uses in automated manufacturing. Srinivas Akella developed and implemented a planner for pushing a polygon to any specified position in the plane, and proved that any polygon can be manipulated. Kevin Lynch worked on several different aspects of pushing, including basic mechanics, model estimation, and automatic planning.

Here is something to play with, an automatic push planning system that you can access over the web.

Compliant Motion and Force Control

"Compliant motion" means programming a robot to react gracefully when it comes into contact with other objects in a task. Often compliant motion is achieved by controlling the force applied by a robot, rather than controlling its motion. I worked on compliant motion for my master's thesis, and for subsequent publications, finishing around 1982. My main publication was a paper in theIEEE Journal of Systems, Man, and Cybernetics in 1981, but for a quick introduction to this work see John Craig's textbook. I also edited a chapter and contributed to the introductory section of the 1981 MIT Press collection Robot Motion: Planning and Control..

Factory Automation, Robotics as a Natural Science

If you believe:

  • factory robots do not use many sensors
  • factory automation is uninteresting because all the uncertainty has been engineered away
  • factories mostly employ devices so simple that they can scarcely be called robots at all

then you need to be enlightened! An automated factory should be viewed as a system, comprising possibly hundreds of degrees of freedom and also hundreds of sensors. Automated factories use every trick in the book, and also some tricks not in the book, to deal with uncertainty. If you are interested in how robots deal with uncertainty, an automated factory is an excellent source of inspiration.

To study automated factories is to treat manipulation as a natural science. Manipulation occurs all around us, and you can learn a lot just by watching. A factory is a good place to watch. There is lots of manipulation going on, and although it is highly evolved it still uses mainly simple devices and techniques. Automated factories are such great scientific assets that we have two specimen factory automation systems in the Manipulation Lab. One is the SONY SMART Cell, which performs a partial assembly of a SONY Walkman cassette player. It includes an APOS system which automatically orients and feeds parts, and a robotic manipulator with six different hands used to grasp and assemble the parts. The other system is an ADEPT 550 manipulator along with a FlexFeeder which uses a set of conveyors combined with a vision system to orient parts.

Our most interesting result in factory automation is called 1JOC, which stands for "One Joint Over Conveyor". This is joint work with students Srinivas Akella, Wes Huang, and Kevin Lynch. The idea is to manipulate objects on a conveyor belt, using a system that is very simple but still programmable. We found a technique using a very simple system--a single joint robot--and proved it is possible to manipulate arbitrary planar shapes on the conveyor.

Model-Based Robots (Robots that translate goals into actions)

All of the projects above reflect a basic interest in model-based robots, and in reasoning about uncertainty. A model of how the real world works gives a robot a way of trying an action out in its head before taking the time and risk of trying the same action in the real world. A model-based robot can plan elaborate sequences of actions, achieving complex sophisticated goal-directed behaviors.

No model can be perfectly accurate. Likewise, neither motors nor sensors are perfectly accurate. There are lots of interesting ideas about how to deal with uncertainty and error. Some models deal explicitly with uncertainty, so that the robot can combine all sources of information to reduce uncertainty, or choose actions which minimize the effects of uncertainty and error. At the same time it is possible to use machine learning techniques to refine the model on the basis of previous experience.


last modified 5 Dec 2007.