ZATiTech / open_planner

Integrated open source planner and related tools for autonomous navigation of autonomous vehicle and mobile robots
Apache License 2.0
26 stars 6 forks source link

In the latest universe and carla co-simulation, the ego vehicle failed to locate successfully #12

Closed wohu1104 closed 8 months ago

wohu1104 commented 9 months ago

Hi @hatem-darweesh , Thank you for the great work.

I followed the three tutorials below to recreate the universe and carla co-simulation

https://github.com/ZATiTech/open_planner/tree/humble/op_carla_bridge

https://github.com/hatem-darweesh/op_agent/tree/ros2-humble

https://github.com/hatem-darweesh/op_bridge/tree/ros2-humble

My environment is

I think I have completely followed all the steps of the tutorial, but as shown in the figure, the ego vehicle has been at the origin coordinates, and there are errors on the command line as follows, I am not sure whether these errors have an impact on the system.

[system.service_log_checker]: /localization/initialize: status code 4 'NDT align server failed.' (/default_ad_api/node/localization) (set_error() at /home/dep/project/autoware/src/universe/autoware.universe/common/component_interface_tools/src/service_log_checker.cpp:83)
[service_log_checker-5] [ERROR 1704596860.962163046] [system.service_log_checker]: /api/localization/initialize: status code 4 'NDT align server failed.' (/default_ad_api/node/localization) (set_error() at /home/dep/project/autoware/src/universe/autoware.universe/common/component_interface_tools/src/service_log_checker.cpp:83)
[perception.occupancy_grid_map.occupancy_grid_map_node]: Could not find a connection between 'map' and 'base_link' because they are not part of the same tree.Tf has two or more unconnected trees. (onPointcloudWithObstacleAndRaw() at /home/dep/project/autoware/src/universe/autoware.universe/perception/probabilistic_occupancy_grid_map/src/pointcloud_based_occupancy_grid_map/pointcloud_based_occupancy_grid_map_node.cpp:179)
[system.system_error_monitor]: input data is timeout (onTimer() at /home/dep/project/autoware/src/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp:447)

image

I'm very much looking forward to your reply. Thanks.

hatem-darweesh commented 9 months ago

I found several issues related to the Autoware requirements such as:

I am trying to fix these issues now. Will update the read me and the source code soon. Thanks

hatem-darweesh commented 9 months ago

Kindly check the updated instruction: https://github.com/ZATiTech/open_planner/blob/humble/op_carla_bridge/README.md

autoware.universe release/2023.10

wohu1104 commented 9 months ago

@hatem-darweesh

Thanks again for your prompt reply.

According to the latest guidance document, it is indeed a big improvement from before.

However, I've encountered a new problem as shown below, it seems that the position of the ego vehicle in Carla does not match the position in RVIZ? Resulting in the planned path not working correctly.

2024-01-09_11-01_1

Can you help analyze what might be incorrectly configured to cause this issue?

Maybe need to change where the ego vehicle is generated in carla?

Best wishes.

wohu1104 commented 8 months ago

Once I changed the spawn location of the ego vehicle and restarted the script it went back to normal, probably due to my historical operations.

Thank you for your great work again.

ZhouTao415 commented 8 months ago

Thank you for the great work. I have also the same problem and solve the problem with you advice. When i run the

./run_exploration_mode_ros2.sh 

the Localization is right, and the image can be showed.

But when i run

./run_route_scenarios_ros2.sh 

the Localization is not right. You can see the followed Scrennshot.

Screenshot from 2024-01-22 10-55-47

I try to solve the problem but it's still not working. How can i solve this problems. Thanks

TianYifan-Vincent commented 4 months ago

@wohu1104 Sorry to bother you, I met the same question: The ego vehicle was at the origin coordinates. And I followed latest guidance document but still failed, could you give me some detailed suggestions?

wohu1104 commented 4 months ago

@wohu1104 Sorry to bother you, I met the same question: The ego vehicle was at the origin coordinates. And I followed latest guidance document but still failed, could you give me some detailed suggestions?

@TianYifan-Vincent

  1. Is the LiDAR point cloud normal?

  2. Try a new starting coordinate?

TianYifan-Vincent commented 4 months ago

@wohu1104 Sorry to bother you, I met the same question: The ego vehicle was at the origin coordinates. And I followed latest guidance document but still failed, could you give me some detailed suggestions?

@TianYifan-Vincent

  1. Is the LiDAR point cloud normal?
  2. Try a new starting coordinate?

Thank you for your suggestions. As the figure shows, my Global status shows Error: Frame[map] does not exist. I tried a new starting coordinate and didn't work. I think there might be a problem bridging carla and autoware's positioning. Looking back at the steps I followed the material, there are two parts of it that I think may have confused me. First, Lidar Driver (tier4/universe and awf/main) branch, which is appropriate, though I have both tried. Second, copy the files (sensor_kit_calibration.yaml, sensors.calibration.yaml) from folder "autoware/src/universe/external/open_planner/op_carla_bridge/carla_sensor_kit_launch/carla_sensor_kit_description/config" to "autoware/src/param/autoware_individual_params/individual_params/config/default/carla_sensor_kit".(Maybe a little different from the path of the tutorial.) And then rebuild the autoware. Besides, do i need modify any other file like autoware.launch.xml, because in some blogs, add some <arg name="launch_carla_interface"> or change true to false in launch_sensing_driver and use_sim_time, etc. I'm a beginner student so I'm not sure if what I mentioned above will make a difference to bridge, please correct me, thanks a lot for taking your time! 7aafc7f00ccf4bd21efa98e3513ebcb

wohu1104 commented 4 months ago

@TianYifan-Vincent

First, you look at the command line to start autoware is there no error print? It looks like there was already a problem when starting autoware(rviz).

Second, confirm that the autoware environment is normal. Can autoware work normally if autoware is started separately without the co-simulation with carla?

TianYifan-Vincent commented 4 months ago

@wohu1104 Thank you for your help. Autoware can work normally without carla, but using “2D Pose Estimate” to specify a starting point doesn't work. And when run ./../op_carla/op_bridge/op_scripts/run_exploration_mode_ros2.sh , there are two log errors in the command line I need to pay attention to. First, The GNSS pose has not arrived.

[ERROR] [system.service_log_checker]: /localization/initialize: status code 3 'The GNSS pose has not arrived.' (/localization/util/pose_initializer_node)
[ERROR] [system.service_log_checker]: /localization/initialize: status code 3 'The GNSS pose has not arrived.' (/default_ad_api/node/localization)

Second, Cannot find the reference position for map update. Please check if the EKF odometry is provided to NDT.

[ERROR] [localization.pose_estimator.ndt_scan_matcher]: Cannot find the reference position for map update. Please check if the EKF odometry is provided to NDT.

rviz

wohu1104 commented 4 months ago

@TianYifan-Vincent Autoware can work normally without carla, but using “2D Pose Estimate” to specify a starting point doesn't work. ——This phenomenon indicates that Autoware is not working properly.It is recommended that you check the Autoware environment.