Giter Site home page Giter Site logo

autonobot-lab / bestman_pybullet Goto Github PK

View Code? Open in Web Editor NEW
88.0 3.0 5.0 775.34 MB

Codebase for the 'BestMan' Mobile Manipulator

Home Page: https://bestmanrobot.com

License: MIT License

Python 18.37% CMake 0.10% HTML 81.12% Shell 0.41%
manipulation navigation robotics mobile-manipulator pybullet grasp object-detection robotic-arm slam

bestman_pybullet's Introduction

GitHub license Ubuntu 20.04 Python 3.8 pre-commit Code style: black Imports: isort

Welcome to the official repository of BestMan, a mobile manipulator simulator (with a wheel-base and arm) built on PyBullet.

πŸ’» Installation

  • Pull the repository and update the submodule
git clone https://github.com/AutonoBot-Lab/BestMan_Pybullet.git --branch master
cd BestMan_Pybullet
git submodule init
git submodule update

☘️ Conda

First install Anaconda / minconda on linux system and then perform the following steps:

  • Run the following script to add the project to the PYTHON search path
cd Install
sudo bash pythonpath.sh
source ~/.bashrc
  • Install ffmpeg to enable video record
sudo apt update && sudo apt install ffmpeg
  • Install shared file (If it already exists, skip this step.)
sudo apt install -y libgl1-mesa-glx libglib2.0-0
sudo mkdir /usr/lib/dri
sudo ln -s /lib/x86_64-linux-gnu/dri/swrast_dri.so /usr/lib/dri/swrast_dri.so
  • Optional: Configure mamba to speed up the conda environment construction
# Install conda-libmamba-solver
conda install -n base conda-libmamba-solver
conda config --set solver libmamba

# Install mamba
conda install mamba -n base -c conda-forge
  • Create conda environment (If mamba is configured, the command uses mamba, otherwise conda)
mamba(conda) env create -f basic_environment.yaml
mamba(conda) activate BestMan

☘️ Docker

Windows

  • Pull docker image from DockerHub
docker pull yk1127/bestman:v1
  • Create docker container
docker run -it --name BestMan yk1127/bestman:v1
  • Install VcXsrv Windows X Server, Start and keep running in the background.

  • Execute echo $DISPLAY inside the container, Make sure the result is host.docker.internal:0 so that it can be visualized on the host machine, if not:

export DISPLAY=host.docker.internal:0

Linux

  • TBD

πŸ”Ž Project Structure

cat Asset/project_structure.txt

πŸ‘¨β€πŸ’» Basic Demos

cd Examples/

☘️ Load Kitchens

python load_kitchen.py

☘️ Navigation

python navigation_basic.py
navigation navigation

☘️ Manipulation

python grasp_bowl_in_kitchen.py
python grasp_bowl_from_drawer_in_kitchen.py
manipulation Video 1 Video 2

πŸ“˜ Documents

☘️ APIs_in_utils.txt: A detailed list of common functions used in the utility scripts

🀝 Reference

If you find this work useful, please consider citing:

@inproceedings{ding2023task,
  title={Task and motion planning with large language models for object rearrangement},
  author={Ding, Yan and Zhang, Xiaohan and Paxton, Chris and Zhang, Shiqi},
  booktitle={2023 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
  pages={2086--2092},
  year={2023},
  organization={IEEE}
}

@article{ding2023integrating,
  title={Integrating action knowledge and LLMs for task planning and situation handling in open worlds},
  author={Ding, Yan and Zhang, Xiaohan and Amiri, Saeid and Cao, Nieqing and Yang, Hao and Kaminski, Andy and Esselink, Chad and Zhang, Shiqi},
  journal={Autonomous Robots},
  volume={47},
  number={8},
  pages={981--997},
  year={2023},
  publisher={Springer}
}

bestman_pybullet's People

Contributors

skywalkerwang98 avatar ssspeg avatar starry521 avatar wjy030522 avatar yding25 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

bestman_pybullet's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.