/pyrobot

PyRobot: An Open Source Robotics Research Platform

Primary LanguagePythonMIT LicenseMIT

PyRobot is a light weight, high-level interface which provides hardware independent APIs for robotic manipulation and navigation. This repository also contains the low-level stack for LoCoBot, a low cost mobile manipulator hardware platform.

What can you do with PyRobot?

Installation

Installing both PyRobot and LoCoBot dependencies

  • Install Ubuntu 16.04

  • Download the installation script

sudo apt update
sudo apt-get install curl
curl 'https://raw.githubusercontent.com/facebookresearch/pyrobot/master/robots/LoCoBot/install/locobot_install_all.sh' > locobot_install_all.sh
  • Run the script to install everything (ROS, realsense driver, etc.). Please connect the nuc machine to a realsense camera before running the following commands.
chmod +x locobot_install_all.sh 
./locobot_install_all.sh

Installing just PyRobot

sudo apt-get -y install ros-kinetic-orocos-kdl ros-kinetic-kdl-parser-py ros-kinetic-python-orocos-kdl ros-kinetic-trac-ik
  • Install Python virtual environment
sudo apt-get -y install python-virtualenv
virtualenv_name="pyenv_pyrobot"
VIRTUALENV_FOLDER=~/${virtualenv_name}
virtualenv --system-site-packages -p python2.7 $VIRTUALENV_FOLDER
  • Install PyRobot
cd ~
mkdir -p low_cost_ws/src
cd ~/low_cost_ws/src
source ~/${virtualenv_name}/bin/activate
git clone --recurse-submodules https://github.com/facebookresearch/pyrobot.git
cd pyrobot/
pip install .

Warning: As realsense keeps updating, compatibility issues might occur if you accidentally update realsense-related packages from Software Updater in ubuntu. Therefore, we recommend you not to update any libraries related to realsense. Check the list of updates carefully when ubuntu prompts software udpates.

Getting Started

Please refer to pyrobot.org and locobot.org

The Team

Adithya Murali, Tao Chen, Dhiraj Gandhi, Kalyan Vasudev, Lerrel Pinto, Saurabh Gupta and Abhinav Gupta. We would also like to thank everyone who has helped PyRobot in any way.

Future features

We are planning several features, namely:

  • Interfacing with other simulators like AI Habitat
  • Gravity compensation
  • PyRobot interface for UR5

Citation

@inproceedings{pyrobot2019,
  title={PyRobot: An Open-source Robotics Framework for Research and Benchmarking},
  author={Adithyavairavan Murali and Tao Chen and Kalyan Vasudev Alwala and Dhiraj Gandhi and Lerrel Pinto and Saurabh Gupta and Abhinav Gupta},
  journal={arXiv preprint arXiv:1906.08236}
  year={2019}
}

License

PyRobot is under MIT license, as found in the LICENSE file.