AIRobot

Documentation Status License Language grade: Python

AIRobot is a python library to interface with robots. It follows a similar architecture from PyRobot.

Citation

If you use AIRobot in your research, please use the following BibTeX entry.

@misc{airobot2019,
  author={Tao Chen and Anthony Simeonov and Pulkit Agrawal},
  title={{AIRobot}},
  publisher={GitHub},
  journal={GitHub repository},
  howpublished={\url{https://github.com/Improbable-AI/airobot}},
  year={2019}
}

Installation

Pre-installation steps for ROS (only required if you want to use the real robot)

Option 1:

If you want to use ROS to interface with robots, please install ROS Kinetic first.

If you want to use ROS for UR5e robots, please install ur5e driver.

If you are using RealSense cameras, please follow the instructions here or here.

Option 2:

Use the dockerfile provided in this library. Checkout the instructions for docker usage. Docker is not needed if you just want to use the pybullet simulation environment.

Install AIRobot

You might want to install it in a virtual environment.

If you are using ROS, you can use virtualenv. Note that Anaconda doesn’t work well with ROS. And only Python 2.7 is recommended for ROS at this point.

If you only want to use the robots in the PyBullet simulation environment, then you can use Python 2.7 or Python 3.7. And you can use either virtualenv for Python 2.7, venv for Python 3.7 or Anaconda.

git clone https://github.com/Improbable-AI/airobot.git
cd airobot
pip install -e .

Supported Robots

If you want to use Sawyer or LoCoBot, you can use PyRobot.

Getting Started

A sample script is shown below. You can find more examples here

from airobot import Robot
# create a UR5e robot in pybullet
robot = Robot('ur5e',
              pb=True,
              pb_cfg={'gui': True})
robot.arm.go_home()
robot.arm.move_ee_xyz([0.1, 0.1, 0.1])

Credits

AIRobot is maintained by the Improbable AI team at MIT. It follows a similar architecture in PyRobot. Contributors include:

Build API Docs

Run the following commands to build the API webpage.

cd docs
./make_api.sh

Then you can use any web browser to open the API doc (docs/build/html/index.html)

Run tests

pytest is used for unit tests. TODO: more test cases need to be added.

cd airobot/tests
./run_pytest.sh

License

MIT license

Coding Style

AIRobot uses Google style for formatting docstrings. We use Flake8 to perform additional formatting and semantic checking of code.

Acknowledgement

We gratefully acknowledge the support from Sony Research Grant and DARPA Machine Common Sense Program.