ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

How to trigger a obstacle avoidance with hatem's gitlab fork?

asked 2021-01-06 02:49:27 -0500

wangludong gravatar image

Hi guys

I'm working with a branch called "openplanner.1.13" from hatem's gitlab fork(https://gitlab.com/hatem-darwees.... I can implement a lane change when set a goal at a adjacent lane right now. But when I place a obstacle on the route, ego car hits it with a little hesitance. So I'm wondering how to bypass the obstacle by triggering a lane change. By the way, at present, I've enabled all the nodes under op_global_planner and op_local_planner. I'm looking forward your help.

edit retag flag offensive close merge delete

Comments

Calling @Hatem

Josh Whitley gravatar image Josh Whitley  ( 2021-01-06 15:54:07 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2021-01-06 22:40:20 -0500

Hatem gravatar image

Hi @wangludong ,

Lane change main design is to reach the final goal by doing a series of lane changes if required.

from your question I understand that you want to avoid front obstacle using lane change ? that won't work.

First tune the parameter for obstacle avoidance using rollout trajectories. that could be achieved by adjusting parameters such as (minFollowingDistance, minDistanceToAvoid, maxDistanceToAvoid) for longitudinal movement, and (rollOutsNumber, rollOutDensity) for lateral movement.

Again, the lane change is set by op_global_planner. what the local planner does is making sure to not execute the lane change if an obstacle is blocking the target lane.

Hope this is useful.

edit flag offensive delete link more

Comments

@Hatem Thanks for your help.

I previously watched a video demonstrates how to avoid a obstacle. Please check image below cause I don't have enough points to upload.The obstacle is marked by red circle. https://ibb.co/XZNTTk0 As I know that was an old version of autoware without Openplanner.

Originally, I used official release 1.13.And later I noticed from the question below that this feature is not complete.So I tried your fork. https://answers.ros.org/question/3587...

If I enable op_behavior_selector, ego car hits the obstacle. If I disable op_behavior_selector and enable astar_avoid, ego car stops in front of the obstacle without bypassing it. Actually, I'm new to Autoware.Could you tell me which nodes should I enable to bypass the obstacle ahead. Thank you.

wangludong gravatar image wangludong  ( 2021-01-07 21:04:26 -0500 )edit

Now I have these nodes enabled, and the car can stop before the obstacle.

  • lidar_euclidean_cluster_detect
  • lidar_kf_contour_track
  • op_global_planner
  • op_common_params
  • op_trajectory_generator
  • op_trajectory_evaluator
  • op_behavior_selector
  • pure_pursuit
  • twist_filter

So next I expect the car could bypass it. Are there some nodes should I add or tune some parameters?

wangludong gravatar image wangludong  ( 2021-01-07 21:48:58 -0500 )edit

Stopping before the obstacle and overtaking the obstacle are two different objectives.

The image you have shared shows that lane change is enabled. which add to the complexity of the task you are trying to achieve.

First disable "lane change" in both op_global_planner and op_common_params, then enable "Follow" in the op_common_params, after that choose "waypoint" not "Dialog" in purepursuit node.

Hatem gravatar image Hatem  ( 2021-01-08 04:51:26 -0500 )edit

@Hatem

Thanks for your help.

Unfortunately, it doesn't work.I think there ought to be a bunch of green lines before the car, but I can't see them.Maybe that's a big deal.Please check the image.

https://ibb.co/SwpfYrq

wangludong gravatar image wangludong  ( 2021-01-11 01:07:46 -0500 )edit

can you use https://gitlab.com/hatem-darweesh-aut... to visualize on rviz.

also can you record a video (screen recording of your steps and the results) and share that video

Hatem gravatar image Hatem  ( 2021-01-11 02:02:39 -0500 )edit

@Hatem

I partly solved the problem, but still have a question.

In my case, I associated autoware with carla and spawned a car in carla as an obstacle.

Also I customized a vector map with 3 parallel lanes in the same direction.

In the video below, ego car can overtake only when I placed the obstacle on the edge of the lane.

It can not overtake when the obstacle was in the center.

In reality, ego car can change to another lane in a situation like this, but in my case seemed it can only run within a limited horizontal range.

Is there any solution?

https://youtu.be/VI_k8w9rIc0

wangludong gravatar image wangludong  ( 2021-01-13 19:47:11 -0500 )edit

@wangludong , overtake behavior is not implemented.

If you want to add the overtake behavior , you will need to read how the behaviors implemented , for example Trafficlightstop behavior , then you extend open planner to include your new behavior.

Regards,

Hatem gravatar image Hatem  ( 2021-01-14 05:14:47 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2021-01-06 02:49:27 -0500

Seen: 202 times

Last updated: Jan 06 '21