-
Notifications
You must be signed in to change notification settings - Fork 17.7k
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
Rover: Circle mode enhancements #27983
Rover: Circle mode enhancements #27983
Conversation
Fix for #25825 The issue can be replicated in SITL by setting |
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.
Not sure about the stopping, rest looks OK.
We do already limit the speed on circle enter for the given accel limits, maybe we just need some safety factor there, or to include some missing limiting factors.
Rover/mode_circle.cpp
Outdated
// if more than 20% inside or outside circle radius, stop vehicle | ||
GCS_SEND_TEXT(MAV_SEVERITY_ERROR, "Circle: vehicle unable to turn fast enough to track circle. Stopping vehicle."); | ||
stop_vehicle(); | ||
return; |
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.
We also come through here in loiter turns mission items. This is not such a great solution in that case. Also it looks like it will call send text at loop rate?
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.
Yeah, I should add in a flag to only send this message once...
I assume you mean the throttle accel limits? This is more the case when the vehicle turn rate (yaw) is much less than the desired turn rate. The vehicle (currently) does not slow down if it can't reach the desired turn rate. It'd be nice if it did, though - I couldn't quite work out the maths to do that though. |
f7234ef
to
2fc3d0f
Compare
Ok, I've changed my approach here: Worked well in SITL |
2fc3d0f
to
bda3d25
Compare
bda3d25
to
e0cf5f6
Compare
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.
Looks good.
This looks pretty good to me, thanks! I've made some comments on text messages to the user but after that's let's merge |
e0cf5f6
to
9982398
Compare
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, thanks!
Two fixes for circle mode in Rover: