Skip to content

b-it-bots/skratch_simulation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sKratch

sKratchBOT, a mobile robot with a custom-made base using Kelo wheels and a Kinova 7-DOF Manipulator, developed for the b-it bots team for the RoboCup @Work League

Requirements

Dependencies

sudo apt install -y ros-humble-gazebo-ros-pkgs gazebo libgazebo-dev python3-colcon-common-extensions ros-humble-xacro ros-humble-joint*

Setup Instructions

1. Create a ROS 2 Workspace

mkdir -p ~/skratch_ws/src
cd ~/skratch_ws/src

2. Clone Required Repositories

2.1 Clone skratch_description (URDF)

git clone -b dev_classic --single-branch https://github.com/b-it-bots/skratch_description.git

2.2 Clone the skratch_simulation for gazebo setup

git clone -b dev_classic --single-branch https://github.com/b-it-bots/skratch_simulation.git

3. Build the Workspace

Navigate to the workspace root and build:

cd ~/skratch_ws
colcon build --symlink-install --packages-select package_name

Currently available packages:

colcon build --symlink-install --packages-select skratch_description skratch_gazebo

4. Run Gazebo Simulation

Source the setup file and launch Gazebo:

source ~/skratch_ws/install/setup.bash 
ros2 launch skratch_gazebo gazebo.launch.py

once the robot is launched you can use teleop twist keyboard to control the roobt.

ros2 run teleop_twist_keyboard teleop_twist_keyboard 

Mapping

If not already done, install following packages

sudo apt-get install ros-humble-slam-toolbox ros-humble-navigation2 ros-humble-nav2-bringup ros-humble-teleop-twist-keyboard

Creating a Map

Run mapping node, and move the robot around the

ros2 launch skratch_navigation online_async.launch.py

Saving the Map

cd ~/skratch_ws/src/skratch_simulation/skratch_navigation/maps/
ros2 run nav2_map_server map_saver_cli -f map_name

Running in Docker

  • Build docker image Choose the dockerfile based on your hardware spec, e.g., dockerfiles/Dockerfile.rocm (for AMD GPU), dockerfiles/Dockerfile.nvidia (for NVIDIA GPU), or dockerfiles/Dockerfile (for CPU only).

    docker build -t skratch_sim:latest -f dockerfiles/Dockerfile.rocm dockerfiles
    
  • Run simulation in container

    • Wayland display with AMD GPU
      ./sim-docker-amd-wayland.sh
      
    • For NVIDIA GPU:
      # ToDo
      

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •