diff --git a/nexus_integration_tests/config/workcell_2_bts/pick_from_conveyor.xml b/nexus_integration_tests/config/workcell_2_bts/pick_from_conveyor.xml index 2523588..059877d 100644 --- a/nexus_integration_tests/config/workcell_2_bts/pick_from_conveyor.xml +++ b/nexus_integration_tests/config/workcell_2_bts/pick_from_conveyor.xml @@ -18,7 +18,7 @@ - + diff --git a/nexus_tree_nodes.xml b/nexus_tree_nodes.xml index 559a2ad..777fe10 100644 --- a/nexus_tree_nodes.xml +++ b/nexus_tree_nodes.xml @@ -121,8 +121,8 @@ An std::string signal to set within a workcell - - The pose to apply input offsets to + + The geometry_msgs::msg::PoseStamped pose to apply input offsets to The translation along X-Axis The translation along Y-Axis The translation along Y-Axis @@ -131,10 +131,17 @@ The qy component of quaternion rotation The qz component of quaternion rotation The qw component of quaternion rotation - A geometry_msgs::msg::Pose which defines the desired transfrom - Takes precedence over transform_from_pose - Applies the mirror of the transform. Defaults to false - The desired transform as a geometry_msgs::msg::Transform + A geometry_msgs::msg::Transform which defines the desired transform. Overrides the direct values if defined. + Perform a local transform instead, wrt. the frame of the base_pose. Defaults to false + The pose with the offset applied as a geometry_msgs::msg::PoseStamped + + + + The geometry_msgs::msg::PoseStamped pose at the start of the offset + The geometry_msgs::msg::PoseStamped pose at the end of the offset + OPTIONAL, timepoint to lookup on, if not provided, the current time is used + OPTIONAL, if true, return t such that `target_pose = base_pose * t` + The geometry_msgs::msg::Transform offset that transforms base_pose to target_pose diff --git a/nexus_workcell_orchestrator/src/job.cpp b/nexus_workcell_orchestrator/src/job.cpp index 7597e37..ade55c9 100644 --- a/nexus_workcell_orchestrator/src/job.cpp +++ b/nexus_workcell_orchestrator/src/job.cpp @@ -58,11 +58,11 @@ Job::Job(rclcpp_lifecycle::LifecycleNode::WeakPtr node, }); this->_bt_factory.registerNodeType("MakeTransform"); - this->_bt_factory.registerBuilder( - "TransformPoseLocal", + this->_bt_factory.registerBuilder( + "ApplyPoseOffset", [this](const std::string& name, const BT::NodeConfiguration& config) { - return std::make_unique(name, config, + return std::make_unique(name, config, *this->_node.lock(), this->_tf2_buffer); });