|
Package Summary
Tags | No category tags. |
Version | 0.6.3 |
License | Apache-2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/bosch-engineering/off_highway_sensor_drivers.git |
VCS Type | git |
VCS Version | humble-devel |
Last Updated | 2024-11-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Robin Petereit
Authors
- Robin Petereit
off_highway_general_purpose_radar
The off_highway_general_purpose_radar package provides a receiver node to receive and decode CAN
frames of the Bosch General Purpose Radar Off-Highway (GPR) into ROS messages - it implements an
off_highway_can::Receiver
.
Further information on the Bosch General Purpose Radar Off-Highway (GPR), it’s inputs, outputs and how they can be interpreted can be found in the corresponding Technical Customer Documentation (TCD) of the sensor system.
Supported devices
Device name | Part Number | Description | Supported by subpackage | Quality declaration |
---|---|---|---|---|
General Purpose Radar Off-Highway (GPR) | - F037.000.100 (series) - F037.B00.255-11 (sample) |
- Radar sensor with up to 48 target reflections - Target output on automotive CAN is supported |
off_highway_general_purpose_radar | 3 |
Further information: Radar systems for off-highway applications
Contact: off-highway.beg@bosch.com
Nodes
Receiver
The radar receiver decodes CAN frames into a target list, manages the current list and publishes it cyclically.
All received messages are checked for their cyclic redundancy check (CRC), rolling message counter
and age (message not older than parameter allowed_age
). If any of these checks do not succeed the
received message is not further processed and skipped.
The relevant radar CAN frame IDs to process are specified by the target_base_id
and info_id
parameters. They should correspond to the first target frame ID and the info frame ID of the radar
CAN node and need to be adapted for the specific bus setup. If multiple radar sensors need to be
decoded on the same bus just launch multiple receiver nodes with individual *_id
parameters.
The target list is published as a list of radar targets or as a point cloud and contains up to 48 targets (sensor limit). Only valid targets in the list are published (measured flag set).
If the receiver node does not receive anything within a configured period (parameter timeout
), it
will publish a diagnostic error on /diagnostics
. Also, the sensor information CAN frame gets
published and is checked for the diagnostic status of the radar. On error, the node will publish a
diagnostic error on /diagnostics
.
Subscribed Topics
-
received_messages
(
can_msgs/Frame
)- Radar CAN frames to decode
Published Topics
-
targets
(
off_highway_general_purpose_radar_msgs/Targets
)- Update Rate: configurable with
publish_frequency
- Contains current target list of radar as custom message containing the same information as
each target’s CAN frame. Mapping to the respective CAN frame is done via the
id
field.
- Update Rate: configurable with
-
targets_pcl
(
sensor_msgs/PointCloud2
)- Update Rate: configurable with
publish_frequency
- Contains current target list of radar as point cloud.
- Update Rate: configurable with
-
info
(
off_highway_radar_msgs/Information
)- Update Rate: On each sensor information CAN frame
- Contains current sensor information message containing the same information as the respective CAN frame.
-
/diagnostics
(
diagnostic_msgs/DiagnosticArray
)- Update Rate: On each sensor information CAN frame or if receiver timed out periodically with timeout period
- Diagnostic status contains statuses from the latest received sensor information and timeout status.
Parameters
See receiver_params.yaml.
Launch files
-
receiver_launch: Starts the receiver with the given parameters.
- Arguments:
- params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
- Arguments:
Changelog for package off_highway_general_purpose_radar
0.6.3 (2024-07-09)
- Add missing dependency on PCL headers (#9) When I try to build this package on jazzy with rosdep, the PCL headers are missing. This package uses [find_package(PCL)]{.title-ref} and includes it in the headers. Therefore I think it would be best to add it to the [build_depend]{.title-ref} and [build_export_depend]{.title-ref} tags of the [package.xml]{.title-ref} files. In the buildfarm this is technically not needed because the PCL headers are a [build_export_depend]{.title-ref} of [pcl_conversions]{.title-ref}, but rosdep ignores this dependency so it misses the PCL headers.
- Contributors: Ramon Wijnands
0.6.2 (2024-06-13)
0.6.1 (2024-06-04)
0.6.0 (2024-05-14)
- Convert general purpose radar from node to component
- Add launch argument for parameters and unify launch file names
- Contributors: Robin Petereit
0.5.1 (2024-03-27)
- Include what you use
- Disable irrelevant warnings for Clang Anonymous structs are used in PCL for type punning: https://github.com/PointCloudLibrary/pcl/issues/2303 Subobject braces are not needed: https://bugs.llvm.org/show_bug.cgi?id=21629 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25137
- Contributors: Robin Petereit
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
ament_cmake | |
ament_lint_auto | |
ament_lint_common | |
ament_cmake_ros | |
rclcpp | |
rclcpp_components | |
sensor_msgs | |
can_msgs | |
off_highway_can | |
off_highway_general_purpose_radar_msgs | |
pcl_conversions | |
pcl_ros |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
off_highway_sensor_drivers |