-
Notifications
You must be signed in to change notification settings - Fork 91
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
safety_limiter: enable omni-directional safety brake #646
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
out.linear.x = (out.linear.x > 0) ? | ||
std::min(out.linear.x, max_values_[0]) : | ||
std::max(out.linear.x, -max_values_[0]); | ||
const double vel_ratio = max_values_[0] / std::hypot(out.linear.x, out.linear.y); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it safe when out.linear = { x: 0, y: 0 }
? (divide by zero)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
Codecov Report
@@ Coverage Diff @@
## master #646 +/- ##
==========================================
+ Coverage 90.21% 90.47% +0.25%
==========================================
Files 61 61
Lines 4548 4556 +8
==========================================
+ Hits 4103 4122 +19
+ Misses 445 434 -11
Help us with your feedback. Take ten seconds to tell us how you rate us. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
if ((M_PI - threshold_angle) < std::abs(angle)) | ||
{ | ||
// Moving backward | ||
obstacle_x += -2.0; | ||
} | ||
else if (threshold_angle < std::abs(angle)) | ||
{ | ||
if (angle > 0) | ||
{ | ||
// Moving left | ||
obstacle_x += -1.0; | ||
obstacle_y += 0.1; | ||
} | ||
else | ||
{ | ||
// Moving right | ||
obstacle_x += -1.0; | ||
obstacle_y += -0.1; | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think writing absolute values for each direction is easier to read.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
} | ||
// Otherwise moving forward. | ||
|
||
// 1.0 m/ss, obstacle at 0.5 m: limited to 1.0 m/s |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// 1.0 m/ss, obstacle at 0.5 m: limited to 1.0 m/s | |
// 1.5 m/ss, obstacle at 0.5 m: limited to 1.0 m/s |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
This comment has been minimized.
This comment has been minimized.
Co-authored-by: Atsushi Watanabe <atsushi.w@ieee.org>
[217] PASSED on melodicAll tests passed
[217] PASSED on noeticAll tests passed
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
No description provided.