A Modular Robotic Arm Control Stack for Research: Franka-Interface and FrankaPy
Kevin Zhang, Mohit Sharma, Jacky Liang, Oliver Kroemer
TL;DR
This work tackles the need for rapid, modular, real-time robot control in research settings by introducing Franka-Interface (C++) and FrankaPy (Python), which decompose control into skills built from trajectory generators, feedback controllers, termination handlers, and sensor data managers. The framework runs a $1$kHz real-time loop, accepts external sensor feedback, and supports switching among $9$ libfranka controllers, enabling flexible implementations of Cartesian impedance, DMP-based imitation, and related controllers. Key contributions include a fully modular, real-time control stack with shared memory communication between the high-level planner and the real-time loop, and the ability to mix and match components per skill. The approach has demonstrated practical impact in CMU’s research and education environments, accelerating prototyping and experimentation, with adoption across multiple papers and a campus Robot Autonomy course; a public release is planned pending licensing and documentation improvements.
Abstract
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 $1$kHz, 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.
