mirror of
https://github.com/orbbec/OrbbecSDK_ROS2.git
synced 2026-10-10 06:29:50 +08:00
Add industry_mode param in dabai_dcw2.launch.py and dabai_dw2.launch.py
This commit is contained in:
@@ -575,6 +575,7 @@ class OBCameraNode {
|
||||
rclcpp::TimerBase::SharedPtr software_trigger_timer_;
|
||||
std::chrono::milliseconds software_trigger_period_{33};
|
||||
bool enable_heartbeat_ = false;
|
||||
std::string industry_mode_ = "default";
|
||||
bool enable_color_undistortion_ = false;
|
||||
std::shared_ptr<image_publisher> color_undistortion_publisher_;
|
||||
bool has_first_color_frame_ = false;
|
||||
|
||||
@@ -81,6 +81,7 @@ def generate_launch_description():
|
||||
DeclareLaunchArgument('align_mode', default_value='HW'),
|
||||
DeclareLaunchArgument('laser_energy_level', default_value='-1'),
|
||||
DeclareLaunchArgument('enable_heartbeat', default_value='false'),
|
||||
DeclareLaunchArgument('industry_mode', default_value='default'),
|
||||
]
|
||||
|
||||
# Node configuration
|
||||
|
||||
@@ -30,6 +30,8 @@ def generate_launch_description():
|
||||
DeclareLaunchArgument('flip_depth', default_value='false'),
|
||||
DeclareLaunchArgument('depth_qos', default_value='default'),
|
||||
DeclareLaunchArgument('depth_camera_info_qos', default_value='default'),
|
||||
# /config/depthfilter/Openni_device.json,need config path.
|
||||
DeclareLaunchArgument('depth_filter_config', default_value=''),
|
||||
DeclareLaunchArgument('ir_width', default_value='640'),
|
||||
DeclareLaunchArgument('ir_height', default_value='400'),
|
||||
DeclareLaunchArgument('ir_fps', default_value='10'),
|
||||
@@ -56,6 +58,7 @@ def generate_launch_description():
|
||||
DeclareLaunchArgument('align_mode', default_value='HW'),
|
||||
DeclareLaunchArgument('laser_energy_level', default_value='-1'),
|
||||
DeclareLaunchArgument('enable_heartbeat', default_value='false'),
|
||||
DeclareLaunchArgument('industry_mode', default_value='default'),
|
||||
]
|
||||
|
||||
# Node configuration
|
||||
|
||||
@@ -177,6 +177,29 @@ void OBCameraNode::setupDevices() {
|
||||
RCLCPP_INFO_STREAM(logger_, "Setting heartbeat to " << (enable_heartbeat_ ? "ON" : "OFF"));
|
||||
TRY_TO_SET_PROPERTY(setBoolProperty, OB_PROP_HEARTBEAT_BOOL, enable_heartbeat_);
|
||||
}
|
||||
if (device_->isPropertySupported(OB_PROP_DEPTH_INDUSTRY_MODE_INT, OB_PERMISSION_READ_WRITE)) {
|
||||
if (industry_mode_ == "default") {
|
||||
OBDepthIndustryMode mode = OB_INDUSTRY_DEFAULT;
|
||||
device_->setIntProperty(OB_PROP_DEPTH_INDUSTRY_MODE_INT, (int32_t)mode);
|
||||
} else if (industry_mode_ == "mode1") {
|
||||
OBDepthIndustryMode mode = OB_INDUSTRY_MODE1;
|
||||
device_->setIntProperty(OB_PROP_DEPTH_INDUSTRY_MODE_INT, (int32_t)mode);
|
||||
} else if (industry_mode_ == "mode2") {
|
||||
OBDepthIndustryMode mode = OB_INDUSTRY_MODE2;
|
||||
device_->setIntProperty(OB_PROP_DEPTH_INDUSTRY_MODE_INT, (int32_t)mode);
|
||||
} else if (industry_mode_ == "mode3") {
|
||||
OBDepthIndustryMode mode = OB_INDUSTRY_MODE3;
|
||||
device_->setIntProperty(OB_PROP_DEPTH_INDUSTRY_MODE_INT, (int32_t)mode);
|
||||
} else if (industry_mode_ == "mode4") {
|
||||
OBDepthIndustryMode mode = OB_INDUSTRY_MODE4;
|
||||
device_->setIntProperty(OB_PROP_DEPTH_INDUSTRY_MODE_INT, (int32_t)mode);
|
||||
} else if (industry_mode_ == "mode5") {
|
||||
OBDepthIndustryMode mode = OB_INDUSTRY_MODE5;
|
||||
device_->setIntProperty(OB_PROP_DEPTH_INDUSTRY_MODE_INT, (int32_t)mode);
|
||||
}
|
||||
RCLCPP_INFO_STREAM(logger_, "Setting industry mode to "
|
||||
<< device_->getIntProperty(OB_PROP_DEPTH_INDUSTRY_MODE_INT));
|
||||
}
|
||||
if (max_depth_limit_ > 0 &&
|
||||
device_->isPropertySupported(OB_PROP_MAX_DEPTH_INT, OB_PERMISSION_READ_WRITE)) {
|
||||
RCLCPP_INFO_STREAM(logger_, "Setting max depth limit to " << max_depth_limit_);
|
||||
@@ -1158,6 +1181,7 @@ void OBCameraNode::getParameters() {
|
||||
setAndGetNodeParameter<int>(min_depth_limit_, "min_depth_limit", 0);
|
||||
setAndGetNodeParameter<int>(max_depth_limit_, "max_depth_limit", 0);
|
||||
setAndGetNodeParameter<bool>(enable_heartbeat_, "enable_heartbeat", false);
|
||||
setAndGetNodeParameter<std::string>(industry_mode_, "industry_mode", "default");
|
||||
setAndGetNodeParameter<bool>(enable_color_undistortion_, "enable_color_undistortion", false);
|
||||
setAndGetNodeParameter<int>(color_ae_roi_left_, "color_ae_roi_left", -1);
|
||||
setAndGetNodeParameter<int>(color_ae_roi_top_, "color_ae_roi_top", -1);
|
||||
|
||||
Reference in New Issue
Block a user