This branch is for the new API re-factoring of PyRobot.
Extra install instructions,
- Install Hydra 1.0 version: pip install hydra-core --pre --upgrade
New fatures,
- Hydra Configs
- More programatically composable environment and robot objects!!
- Cleaner interface objects linking robots and algorithms.
- TODO: cleaner command interface to send commands
TODO List:
-
Code:
- Google Python standards
- Heavy and very detailed documentation.
- all prints are move to logging (hydra plugins should be enabled for logging)
-
ROS-Launch Manager
- Takes care of sequence to launch.
- All launches happen from single python process.
- Accounts for name spaces and already running nodes, robots, sensors and algorithms.
-
Clean up installation
- Installation check through test catkin package.
- Modular Installation based on the Algorithm used.
- Conda environment instead of PIP ?
-
Testing
- Isolated tests
- Use rosbags for real sensors and real robot modules!!
- Unit tests
- For non-ros modules
- End-to-End tests in Habitat.
- For active functions on the robot that interact with robot
- Habiat ROS node for Franka and LoCoBot
- Isolated tests
-
Robot web-visualizer!
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
- Getting Started
- The Team
- Citation
- License
- Future features
-
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.).
If you want to use real LoCoBot robot, please run the following command: Please connect the nuc machine to a realsense camera before running the following commands.
#-t Decides the type of installation. Available Options: full or sim_only
#-p Decides the python version for pyRobot. Available Options: 2 or 3
#-l Decides the type of LoCoBot hardware platform. Available Options: cmu or interbotix
chmod +x locobot_install_all.sh
./locobot_install_all.sh -t full -p 2 -l interbotix
If you want to use simulated LoCoBot in Gazebo only, please run the following commands instead:
#-t Decides the type of installation. Available Options: full or sim_only
#-p Decides the python version for pyRobot. Available Options: 2 or 3
#-l Decides the type of LoCoBot hardware platform. Available Options: cmu or interbotix
chmod +x locobot_install_all.sh
./locobot_install_all.sh -t sim_only -p 2 -l interbotix
Note: To install Python 3 compatible PyRobot, modify -p 2
to -p 3
in the above commands.
-
Install Ubuntu 16.04
-
Install ROS kinetic
-
Install PyRobot
cd ~ mkdir -p low_cost_ws/src cd ~/low_cost_ws/src git clone --recurse-submodules https://github.com/facebookresearch/pyrobot.git cd pyrobot/ chmod +x install_pyrobot.sh ./install_pyrobot.sh -p 2 #For python3, modify the argumet to -p 3
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.
Please refer to pyrobot.org and locobot.org
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.
We are planning several features, namely:
- Interfacing with other simulators like AI Habitat
- Gravity compensation
- PyRobot interface for UR5
@article{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}
}
PyRobot is under MIT license, as found in the LICENSE file.