rpc

A Modular Framework for Robot Planning, Control, and Deployment (RPC). It is designed to integrate multiple physics-based simulators, planning and control modules, visualization tools, plotting and logging utilities, and operator interfaces for robotic systems.

https://github.com/shbang91/rpc

Science Score: 39.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.7%) to scientific vocabulary

Keywords

legged-robots reinforcement-learning robotics trajectory-optimization whole-body-control
Last synced: 6 months ago · JSON representation

Repository

A Modular Framework for Robot Planning, Control, and Deployment (RPC). It is designed to integrate multiple physics-based simulators, planning and control modules, visualization tools, plotting and logging utilities, and operator interfaces for robotic systems.

Basic Info
  • Host: GitHub
  • Owner: shbang91
  • License: mit
  • Language: C++
  • Default Branch: develop
  • Homepage:
  • Size: 477 MB
Statistics
  • Stars: 52
  • Watchers: 2
  • Forks: 11
  • Open Issues: 3
  • Releases: 0
Topics
legged-robots reinforcement-learning robotics trajectory-optimization whole-body-control
Created about 4 years ago · Last pushed 6 months ago
Metadata Files
Readme License Citation

README.md

Robot Planning, Control, and Deployment (rpc)

Build

RPC is a Modular Framework for Robot Planning, Control, and Deployment. It is designed to integrate multiple physics-based simulators, planning and control modules, visualization tools, plotting and logging utilities, and operator interfaces for robotic systems.
If you find our work useful in your research, please consider the following citation.

:package: Mandatory Dependencies

The controller has been tested on Ubuntu 18.04, Ubuntu 20.04, Ubuntu 22.04, and Mac OSX Sonoma. It builds on the shoulders of the following software:
- anaconda: For Pybullet simulator
- python dependencies: $ conda env create -f rpc.yml - pinocchio: Rigid body dynamics library

:newspaper_roll: Optional Dependencies

:walking: MPC for Locomotion

  • hpipm-cpp: C++ wrapper for HPIPM (QP solver). Note that blasfo, hpipm, and hpipm-cpp wrapper should be installed #### :pinching_hand: Teleoperation for Manipulation
  • Teleoperation: Please follow the instructions for installation and usage #### :toolbox: Utilities for Visualization, Plotting, Logging and Operator Interfaces
  • MatLogger2: logging numeric data (cpp to MAT-files)
  • zmq: socket communication protocol
  • protobuf: structured data serialization
  • conan: package manager for C/C++ (for Foxglove)
  • Foxglove: websocket & schema protocols for robot visualization and parameter operations

:computer: Usage

(1) PyBullet

  • Source conda environment:
    $ conda activate rpc
  • Compile:
    $ mkdir build && cd build $ cmake .. $ make -j4
  • Run simulation:
    $ python simulator/pybullet/draco_main.py #### (2) MuJoCo
  • Compile:
    $ mkdir build && cd build $ cmake .. $ make -j4
  • Run simulation:
    $ ./bin/run_draco #### Keyboard Input
  • Please see the example implementation for DRACO 3

:tv: Visualization

(1) Foxglove UI (optional)

Build
  • Source conda environment:
    $ conda activate rpc
  • Compile:
    $ mkdir -p ~/.conan2/profiles/ && cp .github/conan_profile ~/.conan2/profiles/default $ conan install conanfile.txt --build=missing $ cd build $ cmake .. -DBUILD_WITH_ZMQ_PROTOBUF=ON -DBUILD_WITH_FOXGLOVE=ON $ make -j4
Run

$ conda env create -f visualize.yml $ conda activate visualize $ python UI/foxglove/UI_launcher.py --visualizer=foxglove - Access Foxglove server via either:
1) Account in Foxglove webservice 2) Foxglove application

  • To set up the Foxglove URDF visualizer, please refer to the Readme in the UI folder

(2) Meshcat Visualizer (optional)

Run

$ conda env create -f visualize.yml $ conda activate visualize $ python UI/foxglove/UI_launcher.py --visualizer=meshcat

:robot: Hardware Usage

  • Please refer to this repository using rpc library

:book: Citation

@INPROCEEDINGS{10871130, author={Bang, Seung Hyeon and Gonzalez, Carlos and Moore, Gabriel and Kang, Dong Ho and Seo, Mingyo and Gupta, Ryan and Sentis, Luis}, booktitle={2025 IEEE/SICE International Symposium on System Integration (SII)}, title={RPC: A Modular Framework for Robot Planning, Control, and Deployment}, year={2025}, volume={}, number={}, pages={1142-1148}, keywords={Legged locomotion;Software architecture;Scalability;Software algorithms;Debugging;System integration;Software;Planning;Robots;Testing}, doi={10.1109/SII59315.2025.10871130}}

Owner

  • Name: Seung Hyeon Bang
  • Login: shbang91
  • Kind: user
  • Location: Austin, TX
  • Company: University of Texas at Austin

PhD student at UT Austin

GitHub Events

Total
  • Issues event: 4
  • Watch event: 24
  • Issue comment event: 5
  • Member event: 2
  • Push event: 147
  • Fork event: 5
  • Create event: 7
Last Year
  • Issues event: 4
  • Watch event: 24
  • Issue comment event: 5
  • Member event: 2
  • Push event: 147
  • Fork event: 5
  • Create event: 7

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 1
  • Total pull requests: 0
  • Average time to close issues: 10 days
  • Average time to close pull requests: N/A
  • Total issue authors: 1
  • Total pull request authors: 0
  • Average comments per issue: 1.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: 10 days
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 1.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • IanYe0403 (1)
Pull Request Authors
  • pre-commit-ci[bot] (2)
  • carlosiglezb (2)
Top Labels
Issue Labels
Pull Request Labels