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

chore!: upgrade to Nebula v0.2.1 #5275

Merged

Conversation

mojomex
Copy link
Contributor

@mojomex mojomex commented Sep 24, 2024

Description

This PR changes the Nebula version to v0.2.0.

This is a breaking change for the way Nebula is launched, and thus, this PR has to be merged in tandem with

Similar PRs have been made to TIER IV's internal repos, for example:

I will merge all PRs in tandem once all of them get approved and have passing CI.
Please do not merge them independently.

Tests performed

Logging simulator with sample_sensor_kit succeeded, all pointclouds were being published:
Screenshot from 2024-09-24 16-53-02

The logs are looking fine too:
sample_sensor_kit.log

As for single_lidar_sensor_kit, it failed with an unrelated error:

[ERROR] [launch]: Caught exception in launch (see debug for traceback): executed command failed. Command: xacro /home/maxschmeller/autoware/install/tier4_vehicle_launch/share/tier4_vehicle_launch/urdf/vehicle.xacro vehicle_model:=sample_vehicle sensor_model:=single_lidar_sensor_kit config_dir:=/home/maxschmeller/autoware/install/individual_params/share/individual_params/config/default/single_lidar_sensor_kit
Captured stderr output: error: [Errno 2] No such file or directory: '/home/maxschmeller/autoware/install/individual_params/share/individual_params/config/default/single_lidar_sensor_kit/sensors_calibration.yaml' 
when evaluating expression 'xacro.load_yaml('$(arg config_dir)/sensors_calibration.yaml')' 
when evaluating expression 'calibration['base_link']['sensor_kit_base_link']['x']'
when instantiating macro: sensor_kit_macro (/home/maxschmeller/autoware/install/single_lidar_sensor_kit_description/share/single_lidar_sensor_kit_description/urdf/sensor_kit.xacro)

If anyone knows how to properly launch it (I didn't find any documentation on that), please let me know.

Effects on system behavior

Nebula pointclouds will experience less packet loss and Nebula should be more stable.

Interface changes

  • Nebula now always publishes to /diagnostics when launch_driver is enabled.
  • Nebula only accepts /<vendor>_packets when launch_driver is disabled (= no real sensor is connected)

Pre-review checklist for the PR author

The PR author must check the checkboxes below when creating the PR.

In-review checklist for the PR reviewers

The PR reviewers must check the checkboxes below before approval.

Post-review checklist for the PR author

The PR author must check the checkboxes below before merging.

  • There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

@xmfcx
Copy link
Contributor

xmfcx commented Sep 25, 2024

Before these PRs, the rosbag replay sim works correctly:
image

Now I will test with these PRs applied.

@xmfcx
Copy link
Contributor

xmfcx commented Sep 25, 2024

test with pr branches

In the following failing test I did:

git pull
git checkout chore/upgrade-to-nebula-v0.2.0
vcs import src < autoware.repos
vcs pull src
cd src/sensor_kit/sample_sensor_kit_launch
git checkout chore/upgrade-to-nebula-v0.2.0
cd ../../..
cd src/sensor_kit/single_lidar_sensor_kit_launch
git checkout chore/upgrade-to-nebula-v0.2.0
cd ../../..
colcon build --symlink-install --event-handlers=console_cohesion+ --cmake-args -DCMAKE_BUILD_TYPE=RelWithDebInfo
2024-09-25.19-00-35.mp4

I've checked out to all the relevant branches and did a clean build, autoware is not working correctly in the rosbag replay sim demo.

test with main branch

Now I will re-do the same test in the main branch to make sure.

2024-09-25.19-12-31.mp4

I've also ran it in 1.0 rate and it still works in main branch.

Something is wrong with the new configuration.

I've double checked the pr branches and new config behaved as shown in the video again.

@mojomex
Copy link
Contributor Author

mojomex commented Sep 27, 2024

The main issue was this bug introduced with the latest Nebula version, which cause the cloud timestamps to be rounded down to the nearest second:

After fixing it, the simulation looks much better, but due to the way scan cutting and the VelodyneScan message handling changed, there might be a timing issue with that too, causing the LiDARs to appear misaligned/lagging w.r.t each other.
I'll investigate that next.

@mojomex mojomex force-pushed the chore/upgrade-to-nebula-v0.2.0 branch from 105dc0f to d2cef91 Compare September 27, 2024 10:34
@mojomex
Copy link
Contributor Author

mojomex commented Oct 1, 2024

@xmfcx
It looks like it's working properly now that

has been merged:

timestamp-fix.mp4

@xmfcx
Copy link
Contributor

xmfcx commented Oct 1, 2024

@mojomex Thanks for updating. But from your video, I see slight jittering in the point cloud and subsequently the point cloud localization.

I will test this again regardless to see and compare it before&after the PR.

@mojomex
Copy link
Contributor Author

mojomex commented Oct 3, 2024

Hi @xmfcx, comparing it to the main branch I don't really see a difference. As I see it, main also has jitter. Could you go into more detail of what you think is not right?

Thank you for your time 🙇

@xmfcx
Copy link
Contributor

xmfcx commented Oct 3, 2024

@mojomex Sorry for the delay, yesterday I was testing the latest AWSIM Labs - Autoware latest main incompabilities and fixes. I didn't have time to test this. 🙇

Today I will test it again.

Hi @xmfcx, comparing it to the main branch I don't really see a difference. As I see it, main also has jitter.

That is good to hear 👍

@mojomex
Copy link
Contributor Author

mojomex commented Oct 3, 2024

@xmfcx Sorry if you already started evaluating: I implemented the above-mentioned fix (tier4/nebula#201) but did not update the version tag referenced by Autoware. Will fix in a minute 🙇

@xmfcx
Copy link
Contributor

xmfcx commented Oct 3, 2024

Test 2

I will keep updating this message as I make the tests.

Latest main

autoware_2024-10-03_10-38-56_UTC.repos

2024-10-03.13-34-55.mp4

Nebula 0.2.1

git pull
git checkout chore/upgrade-to-nebula-v0.2.0
vcs import src < autoware.repos
vcs pull src
cd src/sensor_kit/sample_sensor_kit_launch
git checkout chore/upgrade-to-nebula-v0.2.0
cd ../../..
cd src/sensor_kit/single_lidar_sensor_kit_launch
git checkout chore/upgrade-to-nebula-v0.2.0
cd ../../..
colcon build --symlink-install --event-handlers=console_cohesion+ --cmake-args -DCMAKE_BUILD_TYPE=RelWithDebInfo
2024-10-03.14-09-00.mp4

It works!

@xmfcx xmfcx merged commit f0314f1 into autowarefoundation:main Oct 3, 2024
16 checks passed
@xmfcx xmfcx changed the title chore!: upgrade to Nebula v0.2.0 chore!: upgrade to Nebula v0.2.1 Oct 3, 2024
@mojomex mojomex deleted the chore/upgrade-to-nebula-v0.2.0 branch October 3, 2024 11:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tag:run-health-check Run health-check
Projects
Development

Successfully merging this pull request may close these issues.

2 participants