Skip to content

bi3ri/hotspray

Repository files navigation

HOTSPRAY

This project was created in the course of a project thesis. It enables you to create scan poses which are used to compute a scan motion. The scanned tubular mesh is then utilized to compute toolpath poses with a novel algorithm. A spray motion is computed based on the generated toolpath poses.

Scan motion

scan

Spray motion

spray

Hotspray ROS Packages

  • hotspray_application - maps the entire workflow and sends calls to other packages depending on the workflow state
  • hotspray_bringup - package is a collection of launch files to start the application from a single file.
  • hotspray_description - contains Unified Robot Description Format (URDF) files describing the geometry and kinematics of the application.
  • hotspray_motion - computes the trajectory for scan and spray-poses utilizing the Tesseract motion planning framework.
  • hotspray_msgs - package bundles the description of messages and services of the application.
  • hotspray_ur5_moveit_config - is automatically generated by MoveIt. It is used to move the robot to desired scan poses, which can then be saved using the hotspray_application package.
  • hotspray_utils - is a collection of helper functions used by other packages. It also contains a docker container running Ubuntu 16.04 and the universal robot driver. 
  • tubular_toolpath_creator - computes a custom toolpath based on a tubular mesh and is separated from the main application.

Installation

# Create a new ROS workspace
mkdir -p ~/hotspray_ws/src && cd ~/hotspray_ws/src

# Download demo repository
git clone https://github.com/bi3ri/hotspray.git

# Download dependencies
wstool init .
wstool merge ~/hotspray_ws/src/hotspray/hotspray.rosinstall
wstool up

wstool merge --merge-keep ~/hotspray_ws/src/tesseract_ros/dependencies.rosinstall
wstool up

# Reset ROS_PACKAGE_PATH
source /opt/ros/noetic/setup.bash

# Install dependencies 
rosdep update && rosdep install -y --from-paths ~/hotspray_ws/src --ignore-src 

# Build workspace
cd ~/hotspray_ws && catkin build 

# Source workspace
source ~/hotspray_ws/devel/setup.bash

Dependencies

# CUDA
sudo apt install -y nvidia-cuda-toolkit 

# Tesseract
sudo add-apt-repository ppa:ros-industrial/ppa
sudo apt-get update

sudo apt install -y libbullet-dev libbullet-extras-dev ros-noetic-fcl ros-noetic-taskflow 
sudo apt install ros-noetic-opw-kinematics 
sudo apt-get install cmake libeigen3-dev coinor-libipopt-dev

# Tesseract_ros
sudo apt-get install ros-noetic-octomap-ros

Run

# Simulation and application helper packages
roslaunch hotspray_bringup application_bringup.launch
# Info: Make sure to press play in Gazebo

# Start application

# 1 Create scan poses:
roslaunch hotspray_application create_scan_poses.launch <scan_poses_file_name> 
# Info: if scan_poses_file_name is left empty a default name is used

# 2 Load scan poses:
roslaunch hotspray_application load_scan_poses.launch <scan_poses_file_name> 
# Info: if scan_poses_file_name is left empty a default name is used

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published