isaac_manipulator_bringup
Source code on GitHub.
Overview
isaac_manipulator_bringup
contains the launch files for Isaac Manipulator.
These launch files are used in the
Pose-to-Pose, Object Following and
Pick and Place
reference workflows.
Main Launch File Parameters
This section documents the main launch files used in Pose-to-Pose, Object Following.
cumotion_nvblox_pose_to_pose.launch.py
This launch file launches the pose to pose example.
Launch Argument |
Default Value |
Choices |
Description |
---|---|---|---|
|
|
|
Camera sensor to use for this example |
|
|
|
Depth mode for Hawk camera |
|
|
|
Number of cameras to run 3d reconstruction on |
|
|
|
Whether to run without a robot arm (perception only mode) |
|
|
N/A |
The name of the setup you are running on (specifying calibration, workspace bounds and camera ids) |
|
|
N/A |
Path to rosbag (running on sensor if not set) |
|
|
|
The log level to report errors at |
cumotion_object_following.launch.py
This launch file launches the object following example. It defaults to tracking the Mac and Cheese box mentioned in the tutorial.
Launch Argument |
Default Value |
Choices |
Description |
---|---|---|---|
|
|
|
Camera sensor to use for this example |
|
|
|
Depth mode for Hawk camera |
|
|
|
Number of cameras to run 3d reconstruction on |
|
|
|
Whether to run without a robot arm (perception only mode) |
|
|
N/A |
The name of the setup you are running on (specifying calibration, workspace bounds, and camera IDs) |
|
|
N/A |
Path to rosbag (running on sensor if not set) |
|
|
N/A |
The RT-DETR class ID of the object to be detected. |
|
|
N/A |
Path to rosbag (running on sensor if not set) |
|
|
|
The log level to report errors at |
|
|
|
Pose estimation model to use for this example |
record_realsense.launch.py
This launch files records a rosbag containing the RealSense’s data, which can be useful for debugging purposes.
Launch Argument |
Default Value |
Choices |
Description |
---|---|---|---|
|
|
|
Whether to run the RealSense or not |
|
|
|
The number of cameras to run |
|
|
|
Whether or not to run RQT to visualize the image |
|
|
N/A |
The file path to write the rosbag |
camera_calibration.launch.py
This launch file is used to perform camera calibration. Please consult the Manipulator Camera Calibration page.
Launch Argument |
Default Value |
Choices |
Description |
---|---|---|---|
|
|
|
Camera sensor used for calibration |
Sub Launch File Parameters
cumotion.launch.py
This launch file launches components related to cuMotion. If no robot mode is enabled,
it will launch the cuMotion Planner
and Robot Segmentation
nodes. If object attachment is enabled with
no robot mode, it will also launch the Object Attachment
node. If no robot mode is enabled,
then it will launch the ESDF Visualizer node
. Please consult the
Isaac ROS cuMotion documentation
for more information.
Launch Argument |
Default Value |
Choices |
Description |
---|---|---|---|
|
|
N/A |
The URDF for cuMotion to use for planning - used by sim |
|
|
N/A |
The file path that describes the robot. You must specify the full file path and the files can be found in the |
|
|
N/A |
Speed scaling factor for the planner |
|
|
N/A |
Maximum distance from a given collision sphere (in meters) at which to mask points in the CumotionRobotSegmenter |
|
|
N/A |
Maximum allowed delay (in seconds) for which depth image and joint state messages are considered synchronized in the CumotionRobotSegmenter |
|
|
N/A |
Maximum allowed delayed between the buffer of depth images with respect to the current time |
|
|
N/A |
The joint states topic that receives robot position |
|
|
N/A |
The tool frame of the robot |
|
|
|
When true, indicates that cuMotion should read a Euclidean signed distance field (ESDF) as part of its world |
|
|
N/A |
Object link name for object attachment |
|
|
N/A |
Search radius for object attachment. |
|
|
N/A |
Update link sphere server for the Robot Segmentation node |
|
|
N/A |
Update link sphere server for cuMotion planner |
|
|
|
Whether to bypass clustering |
|
|
N/A |
List of action names for object attachment |
|
|
N/A |
HDBSCAN min samples for clustering |
|
|
N/A |
HDBSCAN min cluster size for clustering |
|
|
N/A |
HDBSCAN cluster selection epsilon |
|
|
N/A |
Number of top clusters to select |
|
|
|
Whether to group clusters |
|
|
N/A |
Minimum points for clustering |
|
|
|
When true, indicates that cuMotion should publish its world representation |
|
|
N/A |
Indicates what QOS setting is used in the app |
|
|
N/A |
Radius for object surface collision spheres |
|
|
N/A |
Amount by which to pad each dimension of the AABB enclosing the object, in meters, for the purpose of ESDF clearing |
dope.launch.py
This launch file launches the DOPE network, which performs pose estimation. This pose is used as the target to follow in object following.
Launch Argument |
Default Value |
Choices |
Description |
---|---|---|---|
|
|
N/A |
The absolute file path to the ONNX file |
|
|
N/A |
The absolute file path to the TensorRT engine file |
|
|
N/A |
The object class that the DOPE network is detecting |
|
|
N/A |
The minimum value of a peak in a DOPE belief map |
|
|
N/A |
Whether Dope Decoder will broadcast poses to the TF tree or not |
|
|
N/A |
Number of samples to ensure pose stability |
|
|
N/A |
Maximum distance in meters between poses for stability |
|
|
N/A |
Maximum angle in degrees between poses for stability |
|
|
N/A |
Enable DOPE pose estimation to be rotated by X degrees along y axis |
|
|
N/A |
Enable DOPE pose estimation to be rotated by X degrees along x axis |
|
|
N/A |
Enable DOPE pose estimation to be rotated by X degrees along z axis |
|
|
N/A |
FPS for input messages to the drop node of DOPE |
|
|
N/A |
FPS that are dropped by the drop node of DOPE |
|
|
N/A |
QOS setting used for DOPE input |
ess.launch.py
This launch file launches the ESS network to estimate depth images, and is only used if Hawk is used.
Launch Argument |
Default Value |
Choices |
Description |
---|---|---|---|
|
|
N/A |
The absolute path to the ESS engine plan |
|
|
N/A |
Threshold value ranges between 0.0 and 1.0 for filtering disparity with confidence |
|
|
|
ESS model type. |
foundationpose.launch.py
This launch files launches the FoundationPose network to estimate the pose of an object detected by the object detection network (RT-DETR). This is used as the target for object following and as the object to grasp in pick and place.
Launch Argument |
Default Value |
Choices |
Description |
---|---|---|---|
|
|
N/A |
The absolute file path to the mesh file |
|
|
N/A |
The absolute file path to the texture map |
|
|
N/A |
The absolute file path to the refine model |
|
|
N/A |
The absolute file path to the refine engine plan |
|
|
N/A |
The absolute file path to the score model |
|
|
N/A |
The absolute file path to the score engine plan |
|
|
N/A |
The RT-DETR class ID of the object |
|
|
N/A |
The number of pose refinement iterations to run |
|
|
N/A |
The plane or planes across which the object is symmetric |
goal.launch.py
This launch file launches the Goal Initializer
node, which is used to
set goals given the object pose in object following.
Launch Argument |
Default Value |
Choices |
Description |
---|---|---|---|
|
|
N/A |
The world frame of the robot |
|
|
N/A |
The grasp frame (goal) that the robot should target |
|
|
N/A |
The duration until a grasp frame (goal) not updating is considered stale |
|
|
N/A |
The minimum amount that the goal must move to be targeted |
|
|
N/A |
The time in seconds for which the goal should request a plan |
|
|
N/A |
The MoveIt group name that the planner should plan for |
|
|
N/A |
The MoveIt pipeline ID to use |
|
|
N/A |
The MoveIt planner ID to use |
|
|
N/A |
The name of the end effector link for planning |
hawk.launch.py
This launch file launches the hawk stereo camera’s drivers. It does not have any configurable parameters.
nvblox.launch.py
This launch file launches nvblox to provide a 3D voxel representation of the world as an Euclidean Signed Distance Function (ESDF). It’s used to determine obstacles that the planner should avoid.
For the base configuration of nvblox, see the configuration found here and the documentation found here.
The modifications that are made from the base configuration can be found here.
pose_to_pose.launch.py
This launch file launches the pose-to-pose node, which is used to set goals between two different poses in the Pose to Pose example.
Launch Argument |
Default Value |
Choices |
Description |
---|---|---|---|
|
|
N/A |
The world frame of the robot |
|
|
N/A |
The list of target frames that the robot should plan towards |
|
|
N/A |
The time in seconds for which the goal should request a plan |
|
|
N/A |
The MoveIt group name that the planner should plan for |
|
|
N/A |
The MoveIt pipeline ID to use |
|
|
N/A |
The MoveIt planner ID to use |
|
|
N/A |
The name of the end effector link for planning |
realsense.launch.py
This launch file launches the RealSense camera. See the configuration file that can be found here.
rtdetr.launch.py
This launch file launches the RT-DETR pipeline for object detection in order to determine the object’s location in the image.
Launch Argument |
Default Value |
Choices |
Description |
---|---|---|---|
|
|
N/A |
The absolute path to the RT-DETR engine plan |
|
|
N/A |
The minimum score for a bounding box to be published |
|
|
N/A |
FPS for input message to the drop node of RT-DETR |
|
|
N/A |
FPS that are dropped by the drop node of RT-DETR |
|
|
N/A |
QOS setting used for RT-DETR input |
static_transforms.launch.py
This file contains the calibration of various camera setups. It does not have any configurable parameters, however the tutorials expects one to create their own setup, with any required transforms.