We designed a modular robotic control stack that provides a customizable and accessible interface to the Franka Emika Panda Research robot. This framework abstracts high-level robot control commands as skills, which are decomposed into combinations of trajectory generators, feedback controllers, and termination handlers. Low-level control is implemented in C++ and runs at 1kHz, and high-level commands are exposed in Python. In addition, external sensor feedback, like estimated object poses, can be streamed to the low-level controllers in real time. This modular approach allows us to quickly prototype new control methods, which is essential for research applications. We have applied this framework across a variety of real-world robot tasks in more than 5 published research papers. The framework is currently shared internally with other robotics labs at Carnegie Mellon University, and we plan for a public release in the near future.
@article{arxiv.2011.02398,
title = {A Modular Robotic Arm Control Stack for Research: Franka-Interface and FrankaPy},
author = {Kevin Zhang and Mohit Sharma and Jacky Liang and Oliver Kroemer},
journal= {arXiv preprint arXiv:2011.02398},
year = {2020}
}