Open xianglunkai opened 2 years ago
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.
@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.
@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。
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!
@xianglunkai.
Re the issue of the Rover not returning to the original path, you've tired setting AVOID_OPTIONS = 0 of course?
@rmackay9 Yes ,I set OPTIONS = 0,but it does not work at all
.
@xianglunkai,
OK, thanks. Do you think the issue is new to 4.3?
@rmackay9 Yes,I am sure this pr is new for current master
@rmackay9 I think L1-NAV coulde be used during obstacle avoidance and scurve be used after obstacle avoidance, which can solve two problems:
The problem of hesitation caused by severe deceleration of the curve during obstacle avoidance
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!