ReloPush is a multi-object rearrangement task planner incorporated with motion planners for a non-holonomic robot within a limited workspace region.
This version of ReloPush uses a modifed version of MuSHR RHC controller for both simulations and real robot. MuSHR MuSHR RHC
- Size of the workspace in rectangular shape
- Physical dimensions and the initial pose of the robot
- Physical size, possible pushing directions, the initial pose, and the goal position of each movable object (i.e. a box has four pushing directions)
- Parameters required for motion planning (i.e. nominal driving velocity, maximum turning radius, etc)
- A sequence of trajectories/actions to rearrange all movable objects to their designated positions.
To separate parameters for motion planning and others, we use two different files to contain necessary parameters:
include/pathPlanTools/path_planning_tools.h
: Contains parameters for motion planningsrc/reloPush/params.cpp
: Contains other parameters
Set of instances with random deviation from nominal test data are stored in 'testdata' folder. Each instance contains initial poses and goal positions of the movable objects, assignments of a goal to each object, and the initial pose of the robot.
Measurements are set to be saved in log
folder.
- raw: raw data acquired as the program runs
- xlsx: re-organized raw data
- testdata_gen_from_nominal: testdata instance generator. Nominal poses are typed in the script.
- log_handler: re-organized raw data to xlsx.
- repeat: automatically repeats simulations.
roscore # optional
roslaunch mushr_sim teleop.launch use_keyboard:=false
roslaunch mushr_rhc sim.launch
rviz -d $(roscd reloPush && pwd)/rviz/reloPush.rviz
rosrun reloPush reloPush {test_data_filename} {data_index} {record_log} {method}
# ex) rosrun reloPush reloPush data4o.txt 0 1 proposed
(The instructions are to be added.)
@article{ahn2024relopush,
title={ReloPush: Multi-object Rearrangement in Confined Spaces with a Nonholonomic Mobile Robot Pusher},
author={Ahn, Jeeho and Mavrogiannis, Christoforos},
journal={arXiv preprint arXiv:2409.18231},
year={2024}
}