Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 9 additions & 3 deletions ur_controllers/src/passthrough_trajectory_controller.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -797,19 +797,25 @@ bool PassthroughTrajectoryController::check_goal_tolerance()
return false;
}
if (std::abs(joint_pos.value() - setpoint) > joint_tol.position) {
// RCLCPP_ERROR(
// get_node()->get_logger(), "Joint %s should be at position %f, but is at position %f, where tolerance is %f",
// joint_position_state_interface_[i].get().get_name().c_str(), setpoint, joint_pos, joint_tol.position);
RCLCPP_ERROR(
get_node()->get_logger(), "Joint %s should be at position %f, but is at position %f, where tolerance is %f",
joint_position_state_interface_[i].get().get_name().c_str(), setpoint, joint_pos.value(), joint_tol.position);
return false;
}

if (!active_joint_traj_.points.back().velocities.empty() && !joint_velocity_state_interface_.empty()) {
const auto joint_vel = joint_velocity_state_interface_[i].get().get_optional();
if (!joint_vel.has_value()) {
RCLCPP_ERROR(get_node()->get_logger(), "Could not read velocity for joint %s, cannot check velocity tolerance.",
joint_velocity_state_interface_[i].get().get_name().c_str());
return false;
}
const auto& expected_vel = active_joint_traj_.points.back().velocities[joint_mapping->at(joint_name)];
if (std::abs(joint_vel.value() - expected_vel) > joint_tol.velocity) {
RCLCPP_ERROR(get_node()->get_logger(),
"Joint %s should be at velocity %f, but is at velocity %f, where tolerance is %f",
joint_velocity_state_interface_[i].get().get_name().c_str(), expected_vel, joint_vel.value(),
joint_tol.velocity);
return false;
}
}
Expand Down
Loading