-
Notifications
You must be signed in to change notification settings - Fork 135
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
ROS2 foxy compatibility mode #149
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- remove deprecated methods + naming nits - Added notes to size(), empty(), full() - Expose scan_ring param and update relevant params description - Added ImageProcessor to support IMG flag - Define new argument scan_ring - Re-formatting CHANGELOG a bit - Add missing parameter declaration - Apply && to accepted method of ThreadSafeRingBuffer + nits and code formatting - Update CHANGELOG.rst and package version - Update minimal readme file and utilize os_driver by default - Add proc_mask to xml file - Remove experminal marker from set_config and reset ros services - Expose use_system_default_qos parameter to xml launch file and use proper defaults - Rename the file os_sensor_cloud_image_params to os_sensor_cloud_image_params.yaml and update corresponding launch files - More detailed explanation about the IMG node - Add minor note - Add the ability to override current qos settings - Reduce sync operations + restore sensor reset/reactivation - Add support for the selecting IMU - Create topics/subs when their respective flags enabled - Parse proc_mask and hook to launch files and config - Restor os_cloud_node ability to process point clouds - Refactor a bit and add the ability to process and publish point clouds and laser scans - Incorporate LaserScan message composition - Fix build issue - Formatting imu and lidar packet handlers - Factor out tf transforms broadcast - Provide support for parsing the community driver params file with approprite launch file - Formatting os_sensor and os_driver - Keep transforms in Lidar Frame by default with option to switch - Add an option to select the point_cloud frame - Quick hook up of the ThreadSafeRingBuffer for os_sensor and os_driver - Add one more case to the unit test of ThreadSafeRingBuffer - Adding unit tests for the ThreadSafeRingBuffer - Move down pragma once in the handlers - Added os_driver which combines os_sensor and os_cloud - Added required launch files - Better abstraction of classes - Simplified threading logic - Added thread safe implemention of ring buffer (not hooked yet) - Factoring out Imu and Lidar packets handling
This was referenced Jun 15, 2023
Merged
kairenw
approved these changes
Jun 28, 2023
This was referenced Jun 29, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Related Issues & PRs
Summary of Changes
lidar_frame
by defaultproc_mask
handling (all flags supportedexcluding the)IMG
scan_ring
parameter to enable picking a specific ring.Performance
Still in the process of running a full benchmark but in general the current data shows the following:
Validation
Old Interface Maintained
The three launch commands should be fully preserved under the new changes
Single Node (os_sensor+os_cloud+os_image)
To use the new combined node os_driver run the launch file
driver.launch.py
as shown below but please find thedriver_config.yaml
and adjust to match your sensor settings:Single Node (Compatibility Mode)
To have the same topic names as the community driver use
driver_launch.py
launch file instead, this launch file points to thecommunity_driver_config.yaml
and it should work seamlesslyexcept for the(all flags should work as expected)IMG
option of proc_mask parameterproc_mask flags
proc_mask
.IMU
,SCAN
,IMG
andPCL
.Alternate QoS settings
use_system_default_qos
Note that when setting
use_system_default_qos
to true RViz won't be able to display the point cloud by default.You would need to select
/ouster/points
topic and adjust the policy to be reliable.Alternate PointCloud frame
point_cloud_frame
betweenos_lidar
andos_sensor
Altering between the two should be clearly reflected in the the rendered point cloud in RVIZ
Sensor Lifecycle Management
/ouster/reset
service