extending the action space for feeding

refactoring code to extend the feeding action space

ADA as viewed in Rviz

ADA, the Assistive Dextrous Arm, can pick up foods that are precut and come in 16 defined shapes like cantaloupe and hard-boiled eggs cut into pieces. When this work was done, the series of actions required to pick up these foods was hard coded according to several parameters (angle of approach, change of angle while in the food, force used to skewer item, liftoff angle, etc). While fine for demonstration purposes, this severely limits future extensibility.

I worked on refactoring the existing codebase to allow for the creation of a function that could take in the parameters desired and stitch them together in one fluid motion. To do this, I first learned the basics of ROS. This being my first time using either C++ or Linux, it took me a bit to fully get used to the development environment. Once I got it though, I was able to propagate a method in ROS through several layers of abstraction so that it was available for use. This was fully tested in simulation.

The next step was to test this on the physical robot, but unfortunately due to COVID-19, the lab essentially shut down. I was eventually able to work on a continuation on this once we were back in person.