Skip to content

Commit dea657c

Browse files
author
lei.gu
committed
feat(object_merger): add parameters loading
1 parent 4fb68f6 commit dea657c

File tree

2 files changed

+12
-9
lines changed

2 files changed

+12
-9
lines changed

perception/autoware_object_merger/config/object_association_merger.param.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,4 @@
66
remove_overlapped_unknown_objects: true
77
base_link_frame_id: base_link
88
priority_mode: 2 # PriorityMode::Confidence
9+
message_timeout_sec: 0.15

perception/autoware_object_merger/src/object_association_merger_node.cpp

+11-9
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15+
#include <type_traits>
1516
#define EIGEN_MPL2_ONLY
1617

1718
#include "autoware/object_merger/object_association_merger_node.hpp"
@@ -131,7 +132,7 @@ ObjectAssociationMergerNode::ObjectAssociationMergerNode(const rclcpp::NodeOptio
131132
stop_watch_ptr_->tic("processing_time");
132133
published_time_publisher_ = std::make_unique<autoware_utils::PublishedTimePublisher>(this);
133134
// Timeout process initialization
134-
message_timeout_sec_ = this->declare_parameter<double>("message_timeout_sec", 0.001);
135+
message_timeout_sec_ = this->declare_parameter<double>("message_timeout_sec", 0.15);
135136
last_sync_time_ = this->now();
136137
timeout_sent_ = false;
137138
timeout_timer_ = this->create_wall_timer(
@@ -152,11 +153,13 @@ void ObjectAssociationMergerNode::objectsCallback(
152153
}
153154
stop_watch_ptr_->toc("processing_time", true);
154155

155-
156156
// If messages normally synced
157157
diagnostics_interface_ptr_->clear();
158-
diagnostics_interface_ptr_->add_key_value("are_merge_messages_synced", true);
159-
diagnostics_interface_ptr_->add_key_value("messages_interval", (this->now() - last_sync_time_).seconds() );
158+
diagnostics_interface_ptr_->add_key_value("timeout_occurred", false);
159+
diagnostics_interface_ptr_->add_key_value(
160+
"messages_interval", (this->now() - last_sync_time_).seconds());
161+
diagnostics_interface_ptr_->update_level_and_message(
162+
diagnostic_msgs::msg::DiagnosticStatus::OK, "ObjectAssociationMergerNode OK: Messages merged successfully");
160163
diagnostics_interface_ptr_->publish(input_objects0_msg->header.stamp);
161164
last_sync_time_ = this->now();
162165
timeout_sent_ = false;
@@ -264,17 +267,16 @@ void ObjectAssociationMergerNode::timeoutCallback()
264267
rclcpp::Time now = this->now();
265268
if ((now - last_sync_time_).seconds() >= message_timeout_sec_ && !timeout_sent_) {
266269
diagnostics_interface_ptr_->clear();
267-
diagnostics_interface_ptr_->add_key_value("are_merge_messages_synced", false);
270+
diagnostics_interface_ptr_->add_key_value("timeout_occurred", true);
268271
diagnostics_interface_ptr_->add_key_value("messages_interval", (now - last_sync_time_).seconds() );
269-
270-
271272
std::stringstream message;
272-
message << "ObjectAssociationMergerNode Timeout: Merging messages not received";
273+
message<< "Timeout occurred: No synchronized messages received within "
274+
<< message_timeout_sec_ << "s.";
273275
diagnostics_interface_ptr_->update_level_and_message(
274276
diagnostic_msgs::msg::DiagnosticStatus::WARN, message.str());
275277
diagnostics_interface_ptr_->publish(now);
276278
timeout_sent_ = true;
277-
}
279+
}
278280
}
279281

280282

0 commit comments

Comments
 (0)