0
$\begingroup$

Rosanswers logo

Hello everyone.

I am currently trying to get OP planner avoid and stop before obstacles, so far without success.

So far the nodes I use are :

Global planning :

  • op_global_planner

Local planning :

  • op_common_params
  • op_behavior_selector
  • op_motion_predictor
  • op_trajectory_evaluator
  • op_trajectory_generator

Obstacle detection :

  • ray_ground_filter
  • lidar_euclidean_cluster_detect
  • imm_ukf_pda_track

It works perfectly to generate a path and follow it. Roll out trajectories are also generated. The problem is that nothing subscribes to any obstacle detection topic.

Do you know if this is supposed to work like this ? And how to get OP use detected objects ?

I also stumbled across this GitHub issue about dp_planner and it seems that it includes object detection. I also checked the Autoware Package and it seems that it contains parameters related to object detection. But of course no documentation.

Should I drop all the op_xxx packages and use dp_planner instead ? Do they work together ?

There is no information anywhere.

@Hatem , You helped me before, would you be so kind to have a look at this too ? 🙏

Of course anyone is welcome to give me a hint here.


Originally posted by Mackou on ROS Answers with karma: 196 on 2020-04-03

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

Hello,

No problem, I can help.

I just fixed this issue for Autoware1.13 yesterday :)

The issue is that imm_ukf_pda_track output the Objects data in "velodyne" frame. But OpenPlanner expects it to be in "map" frame. also the topic names are different.

so how to solve this problem:

Solution 1:

  • In lidar_euclidean_cluster_detect, set the output frame to be "map"
  • Use lidar_kf_contour_tracker.

Solution 2:

  • Add a bridge node that transform the output from imm_ukf_pda_track to "map" frame and publish it with the same topic as in op_motion_predictor.

Hope This is helpful.

Regards,


Originally posted by Hatem with karma: 443 on 2020-04-03

This answer was ACCEPTED on the original site

Post score: 1


Original comments

Comment by Hatem on 2020-04-03:
if you want to fresh fixed version use the one from branch openplanner.1.13, but it is not tested yet

Comment by Mackou on 2020-04-03:
@Hatem Thanks a lot for your answer.

I have tried to set the output frame of lidar_euclidean_cluster_detect to "map" . But now the detected boxes are shifted in rviz, is that normal ?

Also /lidar_kf_contour_tracker subscribes to /cloud_clusters but lidar_euclidean_cluster_detect publishes in /points_cluster

Do I need to republish it ?

Comment by Mackou on 2020-04-03:
the topics do not match

[ERROR] [1585907078.578334622]: Client [/lidar_kf_contour_track] wants topic /cloud_clusters to have datatype/md5sum [autoware_msgs/CloudClusterArray/5bdd7c958335da845b88351aab5141d4], but our version has [sensor_msgs/PointCloud2/1158d486dd51d683ce2f1be655c3c181]. Dropping connection.

Comment by Hatem on 2020-04-03:
It is visualization issue, The visualization only expect velodyne frame.

And you don't need the cloud cluster topic , you can disable that in lidar kf contour tracker

Only use detected objects topic.

Openplanner publish visualization information in map frame. You can use it.

Regards

Comment by Mackou on 2020-04-03:
@Hatem thanks again.

How do I disable the cloud cluster topic in kf contour tracker ?

How do I use detected objects ? What should subscribe to it ? And in what topic ?

[EDIT] I managed to make OP use the tracked objects but it doesnt avoid them at all. Any idea ?

Comment by Mackou on 2020-04-03:
@Hatem

Here is what my current status look like : https://imgur.com/a/x8qy8Yk I have the object detected in open planner, and I have the red detected_polygon.

But OP doesnt take it into account when generating the trajectories and the car just bump into the obstacle. Any idea ?

Comment by Hatem on 2020-04-03:\

  • Make sure Enable Following & Enable Avoidance is checked

  • In pure pursuit make sure you select Waypoint not Dialog.

Comment by Mackou on 2020-04-03:
@Hatem Thanks again.

enableFollowing is true. I dont have any enableAvoidance, but enableSwerving is true.

In pure pursuit I dont have any parameter related to waypoint or Dialog. Where do I set this ?

Also I am not sure the object is really taken into account as I dont see any stopline in rviz

Im really stuck here

Comment by Hatem on 2020-04-03:
Kindly check the tutorial again carefully.

https://youtu.be/BS5nLtBsXPE

After this point it should work.

Comment by Mackou on 2020-04-15:
@Hatem Thanks for the tutorial, I was able to follow everything and get everything to work correctly with the car simulations.

But now when switching to LGSVL, if I put a non-moving obstacle in the middle of the road and disable swerving, the car will decelerate a lot but will at the end still hit it.

When I enable swerving the car avoids the obstacle with no problem, so the obstacle is detected. I can also follow a moving obstacle.

Do you know why the car is not stopping completely when a static obstacle is on the road ?

Thanks !

Comment by Hatem on 2020-04-19:
Hi Mackou, it is probably because the deceleration value. you need to increase deceleration in common params, also you need to set same deceleration to the controller, LGSVL car acceleration/deceleration parameters.

Comment by Mackou on 2020-04-19:
Hey @Hatem, thanks for your answer again !

I have tried to increase the deceleration limit in the common params and it didnt seem to change anything. When you tell me to change the controller params, you mean my path following node right ?

I have noticed something very weird, when I stop all the nodes and start again, it works ONCE. When I retry it fails. And it seems to be the case all the time.

Here are some graphs showing the target velocity when success (1st one) and failure (2nd one) : https://imgur.com/a/q3jsa1x Blue means forward status, and red means following status.

Do you have any idea what could explain this behavior ?

Comment by Hatem on 2020-04-20:
@Mackou , that is weird indeed. can you take a video to show me the steps and results ? I want to know how do you exactly what do you mean by the second time. is there a new global plan? we need to know which node has good initial parameter, but then that value changes and it causes the problem. Regards,

Comment by Mackou on 2020-04-21:
@Hatem, Thanks for your answer.

Here is the video : https://youtu.be/Fp4ENUU88sQ

I use launch files, not the runtime manager, but I can make a video using the runtime manager too if you prefer.

Comment by Hatem on 2020-04-22:
Hi @Mackou,

I checked the your video, several things could go wrong here.

a) from parameters setting point of view:

  1. SpeedProfileFactor is too small, I think 1.0 is good

  2. enablePrediction should be "false" , prediction is not tested yet.

  3. lateral_acceleration_limit is too high , I never use more than 6 , 4 is preferable for me

b) Don't use velocity set. with open planner.

c) if the simulation speed is as slow as I see in the video, then the controller will not work properly, not enough time update steps to apply braking. the frequency of shouldn't go below 5 f/s.

hope this is useful. Regards,

Comment by Mackou on 2020-04-24:
Hey @Hatem and thanks for your answer.

Thanks to your last answer it works perfectly now ! But loosing prediction and hence the ability to give way is bad news for me as it would be very useful.

Do you know what work is to do to make it work ? Is there any new version even untested where you were able to make it work ?

The video capture was a bit laggy, not the simulation

I can't thank you enough for your time !

Comment by Hatem on 2020-04-24:
@Mackou I am happy that it works, great. can you please mark the this question as answered.

This is my latest repository

https://gitlab.com/hatem-darweesh-autoware.ai

Checkout branch openplannet.1.13

I am testing multiple features now. one of my objective is to get the trajectory and intention estimation to work. this is the prediction paper: https://www.jstage.jst.go.jp/article/jsaeijae/10/4/10_20194117/_article/-char/en

Currently this feature is not integrated properly with OpenPlanner. hopefully soon.

and Maybe I will need your help getting LGSVL to work ;) currently I use only CARLA.

Have fun. Regards,

Comment by Mackou on 2020-04-24:
@Hatem, Thanks, I will keep an eye on it and follow your repository. I would be thrilled to help !

Regards

Comment by Hatem on 2020-04-24:
Great, Thanks , feel free to test, give me feedback and suggestions.

Comment by Mackou on 2020-04-29:
@Hatem I already opened an issue with a few questions.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.