Skip to content

This repository creates a robot climbing simulator that runs in pybullet. It can be used for teleoperation and also for reinforcement learning. The simulator is based on the robot, SCALER (Spine-enhanced Climbing Autonomous Legged Exploration Robot), from the Robotics and Mechanisms Laboratory at UCLA.

License

Notifications You must be signed in to change notification settings

AlexS28/ClimbSim_code

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ClimbSim

(WORK IN PROGRESS) Timeline for future repo updates:

  1. **Expect updates near end of May 2024.

This repository creates a robot climbing simulator that runs in pybullet, and can be used with an Xbox controller for teleoperation. The simulator is based on the robot, SCALER (Spine-enhanced Climbing Autonomous Legged Exploration Robot), from the Robotics and Mechanisms Laboratory at UCLA - see reference [2] below. The paper on the simulator and use of reinforcement learning using this simulator will be written in citation [1] (currently work in progress)

Please also cite [1] if you plan to use the simulator, for questions or if you'd like to contribute to the repo, email: aschperb@gmail.com

[1] Schperberg, A. (2023, March). Planner for Robotic Free-Climbing using Reinforcement Learning. [Research Gate]. DOI: 10.13140/RG.2.2.34085.99044

Special thanks to: Feng Xu for creating the initial urdf files and part of the simulation code, and the SCALER team: Yuki Shirai, and Yusuke Tanaka.

Installation:

  1. System tested: Ubuntu 20.04, ROS Noetic, Python 3.8
  2. Install ROS Noetic (potentially ROS Melodic may also work, but it has not been tested)
  3. sudo apt-get install ros-noetic-desktop-full
  4. sudo apt-get install ros-noetic-joy
  5. mkdir -p ~/catkin_ws/src
  6. git clone this repository inside the src folder
  7. cd ~/catkin_ws/
  8. catkin_make
  9. cd ~/catkin_ws/src/ClimbSim/
  10. pip install -r requirements.txt

How to run:

  1. Plug in Xbox Series X or Xbox 360 controller (other joysticks likely to also work, but button mapping will differ)
  2. Terminal 1: cd ~/catkin_ws/
  3. source devel/setup.bash
  4. roslaunch joystick_package joystick.launch
  5. Terminal 2: python start_teleoperation.py

[2] SCALER: A Tough Versatile Quadruped Free-Climber Robot by Yusuke Tanaka, Yuki Shirai, Xuan Lin, Alexander Schperberg, Hayato Kato, Alexander Swerdlow, Naoya Kumagai, and Dennis Hong.

[2] @INPROCEEDINGS{9981555, author={Tanaka, Yusuke and Shirai, Yuki and Lin, Xuan and Schperberg, Alexander and Kato, Hayato and Swerdlow, Alexander and Kumagai, Naoya and Hong, Dennis}, booktitle={2022 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)}, title={SCALER: A Tough Versatile Quadruped Free-Climber Robot}, year={2022}, volume={}, number={}, pages={5632-5639}, doi={10.1109/IROS47612.2022.9981555}}

Simulator used: PyBullet [3] @MISC{coumans2021, author = {Erwin Coumans and Yunfei Bai}, title = {PyBullet, a Python module for physics simulation for games, robotics and machine learning}, howpublished = {\url{http://pybullet.org}}, year = {2016--2021} }

TELEOPERATION CONTROLS:

controller_pic

PYBULLET SIMULATION:

scaler_pybullet

scaler_pybullet_image

SCALER HARDWARE:

fig1

About

This repository creates a robot climbing simulator that runs in pybullet. It can be used for teleoperation and also for reinforcement learning. The simulator is based on the robot, SCALER (Spine-enhanced Climbing Autonomous Legged Exploration Robot), from the Robotics and Mechanisms Laboratory at UCLA.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •