Skip to content

Commit

Permalink
add manager_respawn arg in kinect_head.launch
Browse files Browse the repository at this point in the history
  • Loading branch information
knorth55 committed Oct 25, 2022
1 parent 11aa1a5 commit 8152773
Show file tree
Hide file tree
Showing 3 changed files with 148 additions and 1 deletion.
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
<launch>
<arg name="load_driver" default="true" doc="launch driver set to false on gazebo"/>
<arg name="manager_respawn" default="true" />
<arg name="respawn" default="true" />
<arg name="use_c2" default="true" doc="Launch nodes for registration on C2"/>
<arg name="deprecated_relay" default="true" doc="advertise to deprecated kinect_head_c2 ns"/>
Expand All @@ -26,12 +27,13 @@
<param name="/kinect_head/driver/depth_ir_offset_x" value="4.5" />
<param name="/kinect_head/driver/depth_ir_offset_y" value="2.5" />

<include file="$(find openni_launch)/launch/openni.launch"
<include file="$(find jsk_pr2_startup)/jsk_pr2_sensors/openni.launch"
if="$(arg load_driver)">
<arg name="camera" value="$(arg camera)"/>
<arg name="num_worker_threads" value="$(arg num_worker_threads)" />
<arg name="rgb_frame_id" value="head_mount_kinect_rgb_optical_frame" />
<arg name="depth_frame_id" value="head_mount_kinect_ir_optical_frame" />
<arg name="manager_respawn" value="$(arg manager_respawn)" />
<arg name="respawn" value="$(arg respawn)" />
<arg name="publish_tf" value="false"/>
<arg name="depth_registration" value="true"/>
Expand Down
27 changes: 27 additions & 0 deletions jsk_pr2_robot/jsk_pr2_startup/jsk_pr2_sensors/manager.launch.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<!-- Start nodelet manager -->
<launch>

<!-- Name here should NOT be globally qualified (node names cannot contain /) -->
<arg name="name" />

<!-- Optionally launch manager in GDB, for debugging -->
<arg name="debug" default="false" />
<arg if="$(arg debug)" name="launch_prefix" value="xterm -e gdb --args" />
<arg unless="$(arg debug)" name="launch_prefix" value="" />
<!-- Worker threads -->
<arg name="num_worker_threads" />
<!-- respawn -->
<arg name="respawn" />

<!-- Also globally disable bond heartbeat timeout in debug mode, so everything
doesn't die when you hit a break point -->
<param if="$(arg debug)" name="/bond_disable_heartbeat_timeout" value="true" />

<!-- Nodelet manager -->
<node pkg="nodelet" type="nodelet" name="$(arg name)" args="manager"
output="screen" launch-prefix="$(arg launch_prefix)"
respawn="$(arg respawn)">
<param name="num_worker_threads" value="$(arg num_worker_threads)" />
</node>

</launch>
118 changes: 118 additions & 0 deletions jsk_pr2_robot/jsk_pr2_startup/jsk_pr2_sensors/openni.launch
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
<!-- Entry point for using OpenNI devices -->
<launch>

<!-- "camera" should uniquely identify the device. All topics are pushed down
into the "camera" namespace, and it is prepended to tf frame ids. -->
<arg name="camera" default="camera" />
<arg name="rgb_frame_id" default="$(arg camera)_rgb_optical_frame" />
<arg name="depth_frame_id" default="$(arg camera)_depth_optical_frame" />

<!-- device_id can have the following formats:
"B00367707227042B": Use device with given serial number
"#1" : Use first device found
"2@3" : Use device on USB bus 2, address 3
"2@0" : Use first device found on USB bus 2
-->
<arg name="device_id" default="#1" />

<!-- By default, calibrations are stored to file://${ROS_HOME}/camera_info/${NAME}.yaml,
where ${NAME} is of the form "[rgb|depth]_[serial#]", e.g. "depth_B00367707227042B".
See camera_info_manager docs for calibration URL details. -->
<arg name="rgb_camera_info_url" default="" />
<arg name="depth_camera_info_url" default="" />

<!-- Use OpenNI's factory-calibrated depth->RGB registration? -->
<arg name="depth_registration" default="false" />

<!-- Arguments for remapping all device namespaces -->
<arg name="rgb" default="rgb" />
<arg name="ir" default="ir" />
<arg name="depth" default="depth" />
<arg name="depth_registered" default="depth_registered" />
<arg name="depth_registered_filtered" default="depth_registered" />
<arg name="projector" default="projector" />

<!-- Optionally suppress loading the driver nodelet and/or publishing the default tf
tree. Useful if you are playing back recorded raw data from a bag, or are
supplying a more accurate tf tree from calibration. -->
<arg name="load_driver" default="true" />
<arg name="publish_tf" default="true" />
<!-- Processing Modules -->
<arg name="rgb_processing" default="true"/>
<arg name="ir_processing" default="true"/>
<arg name="depth_processing" default="true"/>
<arg name="depth_registered_processing" default="true"/>
<arg name="disparity_processing" default="true"/>
<arg name="disparity_registered_processing" default="true"/>
<arg name="hw_registered_processing" default="true" />
<arg name="sw_registered_processing" default="true" />

<!-- Disable bond topics by default -->
<arg name="bond" default="false" /> <!-- DEPRECATED, use respawn arg instead -->
<arg name="respawn" default="$(arg bond)" />
<arg name="manager_respawn" default="false" />

<!-- Worker threads for the nodelet manager -->
<arg name="num_worker_threads" default="4" />

<!-- Push down all topics/nodelets into "camera" namespace -->
<group ns="$(arg camera)">

<!-- Start nodelet manager in top-level namespace -->
<arg name="manager" value="$(arg camera)_nodelet_manager" />
<arg name="debug" default="false" /> <!-- Run manager in GDB? -->
<include file="$(find jsk_pr2_startup)/jsk_pr2_sensors/manager.launch.xml">
<arg name="name" value="$(arg manager)" />
<arg name="debug" value="$(arg debug)" />
<arg name="num_worker_threads" value="$(arg num_worker_threads)" />
<arg name="respawn" value="$(arg manager_respawn)" />
</include>

<!-- Load driver -->
<include if="$(arg load_driver)"
file="$(find openni_launch)/launch/includes/device.launch.xml">
<!-- Could really use some syntactic sugar for this -->
<arg name="manager" value="$(arg manager)" />
<arg name="device_id" value="$(arg device_id)" />
<arg name="rgb_frame_id" value="$(arg rgb_frame_id)" />
<arg name="depth_frame_id" value="$(arg depth_frame_id)" />
<arg name="rgb_camera_info_url" value="$(arg rgb_camera_info_url)" />
<arg name="depth_camera_info_url" value="$(arg depth_camera_info_url)" />
<arg name="depth_registration" value="$(arg depth_registration)" />
<arg name="rgb" value="$(arg rgb)" />
<arg name="ir" value="$(arg ir)" />
<arg name="depth" value="$(arg depth)" />
<arg name="depth_registered" value="$(arg depth_registered)" />
<arg name="projector" value="$(arg projector)" />
<arg name="respawn" value="$(arg respawn)" />
</include>

<!-- Load standard constellation of processing nodelets -->
<include file="$(find rgbd_launch)/launch/includes/processing.launch.xml">
<arg name="manager" value="$(arg manager)" />
<arg name="rgb" value="$(arg rgb)" />
<arg name="ir" value="$(arg ir)" />
<arg name="depth" value="$(arg depth)" />
<arg name="depth_registered" value="$(arg depth_registered)" />
<arg name="depth_registered_filtered" value="$(arg depth_registered_filtered)" />
<arg name="projector" value="$(arg projector)" />
<arg name="respawn" value="$(arg respawn)" />
<arg name="rgb_processing" value="$(arg rgb_processing)" />
<arg name="ir_processing" value="$(arg ir_processing)" />
<arg name="depth_processing" value="$(arg depth_processing)" />
<arg name="depth_registered_processing" value="$(arg depth_registered_processing)" />
<arg name="disparity_processing" value="$(arg disparity_processing)" />
<arg name="disparity_registered_processing" value="$(arg disparity_registered_processing)" />
<arg name="hw_registered_processing" value="$(arg hw_registered_processing)" />
<arg name="sw_registered_processing" value="$(arg sw_registered_processing)" />
</include>

</group> <!-- camera -->

<!-- Load reasonable defaults for the relative pose between cameras -->
<include if="$(arg publish_tf)"
file="$(find rgbd_launch)/launch/kinect_frames.launch">
<arg name="camera" value="$(arg camera)" />
</include>

</launch>

0 comments on commit 8152773

Please sign in to comment.