-
Notifications
You must be signed in to change notification settings - Fork 184
Open
Description
When I try to enable IPC in composition I get this error:
Component constructor threw an exception: intraprocess communication is not allowed with a zero qos history depth value
The default QoS settings for the depthimage_to_laserscan component are not good for using IPC.
Example:
# ZED Wrapper component
zed_wrapper_component = ComposableNode(
package='zed_components',
namespace=camera_name_val,
plugin='stereolabs::ZedCamera',
name=zed_node_name,
parameters=[
# YAML files
config_common_path, # Common parameters
config_camera_path, # Camera related parameters
# Overriding
{
'general.camera_name': camera_name_val,
'general.camera_model': camera_model_val,
'general.svo_file': svo_path,
'general.serial_number': serial_number
}
],
extra_arguments=[{'use_intra_process_comms': True}]
)
# Depth to Laser scan component
zed_cvt_component = ComposableNode(
package='depthimage_to_laserscan',
namespace=camera_name_val,
plugin='depthimage_to_laserscan::DepthImageToLaserScanROS',
name='depthimage_to_laserscan',
parameters=[
config_path_cvt,
# Overriding
{
'output_frame': camera_depth_frame,
'qos_overrides./parameter_events.publisher.depth': 5
}],
remappings=[
('depth', zed_node_name_val + '/depth/depth_registered'),
('depth_camera_info', zed_node_name_val + '/depth/camera_info')
],
extra_arguments=[{'use_intra_process_comms': True}]
)
# ROS 2 Component Container
container = ComposableNodeContainer(
name='zed_depth_to_laserscan',
namespace=camera_name_val,
package='rclcpp_components',
executable='component_container',
composable_node_descriptions=[
zed_wrapper_component,
zed_cvt_component
],
output='screen',
)
Metadata
Metadata
Assignees
Labels
No labels