This project was my senior thesis for my undergraduate degree in Computer Science at Carnegie Mellon University. I was advised by professor David S. Touretzky. I came up with a novel approach to solving inverse kinematics for high degree-of-freedom planar arms, and was responsible for all algorithm development, implementation, and maintenance. This project was the culmination of my undergraduate education: working in a team environment, stretching my abilities as a programmer, working with real-world hardware and deadlines, and assuming all responsibility for the success or failure of the project. Due to lots of hard work, the project was a success.
Inverse Kinematics + Path Planning
This is a video of a dynamically computed path. The orange objects are perceived as obstacles and the green tape is perceived as the goal location of the end effector. The inverse kinematics algorithm generated an arm configuration that avoided all obstacles and placed the end effector at the green tape. Then the path planner generated a trajectory of configurations to iterate to the generated configuration. The original video can be found here.
Manipulation
I implemented a strategy for manipulating objects in the tentacle’s environment. Unfortunately, the method of applying a contact constraint to the path planner over-constrained the search space. However, for minimally constrained environments, the algorithms successfully found a path. The original video can be found here.
Abstract
Effective control of a high degree-of-freedom [DOF] manipulator increases in computational complexity with the number of joints. A controller for a many-joint arm must include algorithms for an inverse kinematics solver, a path planner, and object manipulation strategies. These algorithms have been developed for a planar “tentacle” arm composed of eight Robotis Dynamixel AX-12 servos in series. The goal is to be able to manipulate objects in real time. With the algorithms in place, a variety of operations are demonstrated on objects of different sizes using an actual tentacle arm. The work will be incorporated into the Tekkotsu robot programming framework.
