AprilTag + Obstacle Avoidance#
Combines AprilTag-driven pick-and-place with Nvblox obstacle avoidance: Isaac
cuMotion plans collision-free motion against a live Nvblox reconstruction while
Isaac ROS AprilTag locates the target. See Example Applications for the shared
manipulator setup. All commands run through mros.
AprilTag based obstacle avoidance on simulation#
AprilTag based obstacle avoidance on hardware-in-the-loop (HIL).#
AprilTag based obstacle avoidance on real-world scenario.#
Open the Isaac Sim scene:
~/workspaces/movensys-simulation/<MANIPULATOR_MODEL>/6a_apriltag_obstacle_avoidance_simulation.usdRun the simulator bridge:
mros ros2 launch movensys_manipulator_moveit_config sim_bridge.launch.py \ simulator:=isaacsim use_sim_time:=true
Launch cuMotion + Nvblox:
mros ros2 launch movensys_manipulator_isaac_ros_config isaac_cumotion_nvblox.launch.py use_sim_time:=true
Launch Isaac AprilTag:
mros ros2 launch movensys_manipulator_isaac_ros_config isaac_apriltag.launch.py use_sim_time:=true
Run AprilTag pick-and-place with obstacle avoidance:
mros ros2 launch movensys_manipulator_moveit_config apriltag_pick_and_place.launch.py \ use_sim_time:=true target_spawn:=false
Open the Isaac Sim scene:
~/workspaces/movensys-simulation/<MANIPULATOR_MODEL>/6b_apriltag_obstacle_avoidance_hil.usdStart WMX R2 for the manipulator (real WMX runtime) with
use_sim_time:=true(see~/workspaces/movensys_ws/src/wmx-r2/doc/launch_<MANIPULATOR_MODEL>_manipulator.md).Launch cuMotion + Nvblox:
mros ros2 launch movensys_manipulator_isaac_ros_config isaac_cumotion_nvblox.launch.py use_sim_time:=true
Add
rsp:=falseif using Gazebo orros2_control– both already publish/robot_description.Launch Isaac AprilTag:
mros ros2 launch movensys_manipulator_isaac_ros_config isaac_apriltag.launch.py use_sim_time:=true
Run AprilTag pick-and-place with obstacle avoidance:
mros ros2 launch movensys_manipulator_moveit_config apriltag_pick_and_place.launch.py \ use_sim_time:=true target_spawn:=false
Open the Isaac Sim scene:
~/workspaces/movensys-simulation/<MANIPULATOR_MODEL>/6c_apriltag_obstacle_avoidance_real.usdStart WMX R2 for the manipulator on the robot (see
~/workspaces/movensys_ws/src/wmx-r2/doc/launch_<MANIPULATOR_MODEL>_manipulator.md).Launch cuMotion + Nvblox:
mros ros2 launch movensys_manipulator_isaac_ros_config isaac_cumotion_nvblox.launch.py
Add
rsp:=falseif using Gazebo orros2_control– both already publish/robot_description.Launch Isaac AprilTag:
mros ros2 launch movensys_manipulator_isaac_ros_config isaac_apriltag.launch.py
Run AprilTag pick-and-place with obstacle avoidance:
mros ros2 launch movensys_manipulator_moveit_config apriltag_pick_and_place.launch.py \ use_sim_time:=false target_spawn:=true