SICKAG / sick_scan_xd

Based on the sick_scan drivers for ROS1, sick_scan_xd merges sick_scan, sick_scan2 and sick_scan_base repositories. The driver supports both Linux (native, ROS1, ROS2) and Windows (native and ROS2).
Apache License 2.0
89 stars 81 forks source link

Question for multiScan's "TelegramVersion" on Compact data format #338

Closed kajiyyuGXJ closed 1 month ago

kajiyyuGXJ commented 1 month ago

When I have a look into compact_parser.cpp, DistanceScalingFactor is eliminated on multiScan's Compact data format when "TelegramVersion" is 3.

ScreenShot_2024-05-27 155825

But, it looks like DistanceScalingFactor is saved when "TelegramVersion" is 4.

Could you please tell me this difference meaning?

*We would like to know this meaning for the deep understanding of the multiScan, aimed for the future development.

rostest commented 1 month ago

Thanks for your feedback. The compact format encodes distances in millimeter with 16 bit (uint16). This allows the representation of distances up to 2^16 mm resp. 65.5 meter. To be able to encode greater distances, the DistanceScalingFactor has been introduced by telegram version 4.

Note that telegram version 3 is not in use any longer. It is included in compact_parser.cpp for backward compatibility to support multiScan devices with older firmware versions. We recommend to update the firmware to the most recent version, which uses telegram version 4.

kajiyyuGXJ commented 1 month ago

Thank you very much for prompt answer, we'll update the firmware. Please let me close this post, thank you!