Skip to content
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: bendyruler does not resume original route even if OA_OPTIONS=0 #20406

Open
xianglunkai opened this issue Mar 31, 2022 · 9 comments
Open
Labels

Comments

@xianglunkai
Copy link
Contributor

scurve_avoid

@xianglunkai
Copy link
Contributor Author

I don't think scurve navigaiton has more advantages than L1 method in Boat. Besides, it has better turning performance. Moreover, the turning performance depends on very large deceleration. From my test, the L1 method is sufficient in terms of track mapping accuracy, obstacle avoidance effect and automatic control under high flow rate, at least for the current master branch.

@rmackay9 rmackay9 added the Rover label Apr 4, 2022
@rmackay9
Copy link
Contributor

rmackay9 commented Apr 4, 2022

@xianglunkai, thanks very much for testing and reporting issues with the new SCurves on Rover. We've still got time to fix any issues before 4.3 and I would very much like it if we can convince you to use SCurves because I really want to avoid two different versions.

I guess the picture above is not of master Rover? I guess instead this is a modified version that gives up on the current waypoint and moves to the next one if it sees an obstacle? I'm just trying to understand how I could reproduce the issue you're seeing and help resolve it.

@xianglunkai
Copy link
Contributor Author

@rmackay9 Thank you very much. You are right. I use the modified version of master, but even if I use master directly, there is still the problem that the route cannot be restored after obstacle avoidance, which is unbearable for surveying and mapping.
In addition, I think the obstacle avoidance system of the master version needs to be greatly improved. Firstly, it needs to distinguish between dynamic and static obstacles. Secondly, I think it is necessary to change the obstacle avoidance output interface to the time discrete sequence of speed and path, rather than the current point. Finally, it is necessary to divide the obstacle avoidance into horizontal static obstacle avoidance and vertical dynamic obstacle avoidance。

@xianglunkai
Copy link
Contributor Author

Finally, whether we could design a trajectory input interface in guide mode for the navigation needs of ROS or other systems. Maybe I could give some code for the development of obstacle avoidance and planning system, but I still need your help.
Txs!

@rmackay9
Copy link
Contributor

rmackay9 commented Apr 4, 2022

@xianglunkai.

Re the issue of the Rover not returning to the original path, you've tired setting AVOID_OPTIONS = 0 of course?

@xianglunkai
Copy link
Contributor Author

@rmackay9 Yes ,I set OPTIONS = 0,but it does not work at all
scurve_bendyruler
oa_param
.

@rmackay9 rmackay9 changed the title Rover: scurve navigation with bendyruler could not avoid obstacle and resume original route Rover: bendyruler does not resume original route even if OA_OPTIONS=0 Apr 5, 2022
@rmackay9
Copy link
Contributor

rmackay9 commented Apr 5, 2022

@xianglunkai,

OK, thanks. Do you think the issue is new to 4.3?

@xianglunkai
Copy link
Contributor Author

@rmackay9 Yes,I am sure this pr is new for current master

@xianglunkai
Copy link
Contributor Author

@rmackay9
I think L1-NAV coulde be used during obstacle avoidance and scurve be used after obstacle avoidance, which can solve two problems:

  1. The problem of hesitation caused by severe deceleration of the curve during obstacle avoidance

  2. The problem of avoiding obstacles and restoring the original route

Looking forward to discussion, if feasible, I would like to submit a fix.
thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants