Table of Contents
Fetching ...

RPC: A Modular Framework for Robot Planning, Control, and Deployment

Seung Hyeon Bang, Carlos Gonzalez, Gabriel Moore, Dong Ho Kang, Mingyo Seo, Luis Sentis

Abstract

This paper presents an open-source, lightweight, yet comprehensive software framework, named RPC, which integrates physics-based simulators, planning and control libraries, debugging tools, and a user-friendly operator interface. RPC enables users to thoroughly evaluate and develop control algorithms for robotic systems. While existing software frameworks provide some of these capabilities, integrating them into a cohesive system can be challenging and cumbersome. To overcome this challenge, we have modularized each component in RPC to ensure easy and seamless integration or replacement with new modules. Additionally, our framework currently supports a variety of model-based planning and control algorithms for robotic manipulators and legged robots, alongside essential debugging tools, making it easier for users to design and execute complex robotics tasks. The code and usage instructions of RPC are available at https://github.com/shbang91/rpc.

RPC: A Modular Framework for Robot Planning, Control, and Deployment

Abstract

This paper presents an open-source, lightweight, yet comprehensive software framework, named RPC, which integrates physics-based simulators, planning and control libraries, debugging tools, and a user-friendly operator interface. RPC enables users to thoroughly evaluate and develop control algorithms for robotic systems. While existing software frameworks provide some of these capabilities, integrating them into a cohesive system can be challenging and cumbersome. To overcome this challenge, we have modularized each component in RPC to ensure easy and seamless integration or replacement with new modules. Additionally, our framework currently supports a variety of model-based planning and control algorithms for robotic manipulators and legged robots, alongside essential debugging tools, making it easier for users to design and execute complex robotics tasks. The code and usage instructions of RPC are available at https://github.com/shbang91/rpc.
Paper Structure (13 sections, 4 figures)

This paper contains 13 sections, 4 figures.

Figures (4)

  • Figure 1: Overall software architecture:RPC consists of the Test Environment, Interface Layer, Planning and Control Layer, and Visualization / User Interface Layer. Each layer includes several modules, and their interaction methods are illustrated in different line types.
  • Figure 2: Foxglove UI usage: (a) MuJoCo simulation. (b) Robot model visualization window in Foxglove. (c) Control parameters tuning window in Foxglove. (d) Data visualization window in Foxglove.
  • Figure 3: Simulation snapshots: (a) Teleoperation-based locomanipulation for a cup shelving task. (b) Convex MPC-based omnidirectional walking task. Red arrows represent the initial heading, and the blue arrows indicate the current heading.
  • Figure 4: Hardware experiment snapshots: (a) Teleoperation-based bi-manipulation for a spray cap removal task. (b) DCM-based in-place quasi-static stepping.