add timestamp to work info
This commit is contained in:
@@ -277,7 +277,7 @@ private:
|
||||
std::ostringstream oss;
|
||||
oss <<
|
||||
"\n <root BTCPP_format=\"4\" >\n\n <BehaviorTree ID=\"MainTree\">\n <Sequence name=\"root_sequence\">\n";
|
||||
auto timestamp = std::chrono::duration_cast<std::chrono::microseconds>(std::chrono::steady_clock::now().time_since_epoch()).count();
|
||||
auto timestamp = std::chrono::duration_cast<std::chrono::seconds>(std::chrono::system_clock::now().time_since_epoch()).count();
|
||||
for (size_t i = 0; i < seq.size(); ++i) {
|
||||
const auto & act = seq[i];
|
||||
// Append timestamp and sequence index to ensure global uniqueness of the instance name in the tree
|
||||
|
||||
@@ -670,6 +670,7 @@ bool CerebrumNode::DeclareBtActionParamsForSkillInstance(
|
||||
robot_work_info_.skill = skill_name;
|
||||
robot_work_info_.action_name = instance_name;
|
||||
robot_work_info_.instance_params = instance_params;
|
||||
robot_work_info_.stamp = this->now();
|
||||
|
||||
return UpdateBtActionParamsForSkillInstance(skill_name, instance_name, instance_params);
|
||||
} else if (current_path_copy.config == skill_name) {
|
||||
@@ -699,6 +700,10 @@ bool CerebrumNode::DeclareBtActionParamsForSkillInstance(
|
||||
robot_work_info_.skill = skill_name;
|
||||
robot_work_info_.action_name = instance_name;
|
||||
robot_work_info_.instance_params = instance_params;
|
||||
//builtin_interfaces/Time stamp # 时间戳
|
||||
// # * stamp.secs: seconds (stamp_secs) since epoch
|
||||
// # * stamp.nsecs: nanoseconds since stamp_secs
|
||||
robot_work_info_.stamp = this->now();
|
||||
|
||||
return UpdateBtActionParamsForSkillInstance(skill_name, instance_name, instance_params);
|
||||
}
|
||||
@@ -1573,6 +1578,7 @@ void CerebrumNode::RobotWorkInfoPublish()
|
||||
robot_work_info_.task.push_back("None"); //next task
|
||||
robot_work_info_.task.push_back("None"); //current task
|
||||
robot_work_info_.bt_node_status = "IDLE";
|
||||
robot_work_info_.stamp = this->now();
|
||||
|
||||
robot_work_info_pub_ = this->create_publisher<
|
||||
interfaces::msg::RobotWorkInfo>("/robot_work_info", 10);
|
||||
|
||||
Reference in New Issue
Block a user