Files
OrbbecSDK_ROS2/zh/source/lidar_devices/lidar.html
T
2026-01-04 01:19:58 +00:00

356 lines
29 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html class="writer-html5" lang="zh-CN" data-content_root="../../">
<head>
<meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>1. 安装 &mdash; OrbbecSDK V2 ROS2 封装 文档</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=b86133f3" />
<link rel="stylesheet" type="text/css" href="../../_static/css/theme.css?v=e59714d7" />
<link rel="stylesheet" type="text/css" href="../../_static/custom.css?v=63de077d" />
<link rel="shortcut icon" href="../../_static/orbbec_footerlogo_3d_world.svg"/>
<script src="../../_static/jquery.js?v=5d32c60e"></script>
<script src="../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
<script src="../../_static/documentation_options.js?v=7d86a446"></script>
<script src="../../_static/doctools.js?v=9bcbadda"></script>
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
<script src="../../_static/translations.js?v=beaddf03"></script>
<script src="../../_static/js/theme.js"></script>
<link rel="index" title="索引" href="../../genindex.html" />
<link rel="search" title="搜索" href="../../search.html" />
<link rel="prev" title="Lidar Devices" href="index.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../../index.html" class="icon icon-home">
OrbbecSDK V2 ROS2 封装
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
<input type="text" name="q" placeholder="搜索文档" aria-label="搜索文档" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="导航菜单">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../camera_devices/index.html">Camera Devices</a><ul class="simple">
</ul>
</li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">Lidar Devices</a><ul class="current">
<li class="toctree-l2 current"><a class="current reference internal" href="#">1. 安装</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id2">1.1. 先决条件</a></li>
<li class="toctree-l3"><a class="reference internal" href="#deb">1.2. 安装deb依赖项</a></li>
<li class="toctree-l3"><a class="reference internal" href="#udev">1.3. 安装udev规则</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id3">1.4. 构建包</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">1.5. 启动激光雷达节点</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#id5">2. 使用方法</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id6">2.1. 运行驱动</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id7">2.2. 获取已连接激光雷达的设备信息</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id8">2.3. 检查激光雷达支持的配置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id9">2.4. 2.4 参数和配置</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#id10">3. 点云数据详细说明</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id11">3.1. 点云格式</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id12">3.2. 点云聚合功能</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#id13">3.2.1. 功能特点:</a></li>
<li class="toctree-l4"><a class="reference internal" href="#id14">3.2.2. 使用示例:</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#imu">4. IMU数据</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id15">4.1. IMU话题</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id16">4.2. 使用IMU数据</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="移动版导航菜单" >
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../../index.html">OrbbecSDK V2 ROS2 封装</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="页面导航">
<ul class="wy-breadcrumbs">
<li><a href="../../index.html" class="icon icon-home" aria-label="Home"></a></li>
<li class="breadcrumb-item"><a href="index.html">Lidar Devices</a></li>
<li class="breadcrumb-item active"><span class="section-number">1. </span>安装</li>
<li class="wy-breadcrumbs-aside">
<a href="../../_sources/source/lidar_devices/lidar.md.txt" rel="nofollow"> 查看页面源码</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="lang-switch" style="margin:0 0 1em 0; font-size:0.9em;"><a class="lang-other" href="#">English</a> | <a class="lang-current" href="#">中文</a></div><script>(function(){var p=window.location.pathname;var isEn=p.indexOf('/en/')!==-1 && p.indexOf('/zh/')===-1;if(p.indexOf('/zh/')!==-1) isEn=false;var other = isEn ? p.replace(/\/en\//, '/zh/') : p.replace(/\/zh\//, '/en/');var current=p;var sw=document.querySelector('.lang-switch'); if(!sw) return;var o=sw.querySelector('.lang-other'); var c=sw.querySelector('.lang-current');if(isEn){ o.textContent='中文'; c.textContent='English'; } else { o.textContent='English'; c.textContent='中文'; }o.setAttribute('href', other); c.setAttribute('href', current);})();</script><p>本ROS2驱动支持您使用奥比中光单线/多线激光雷达。本文档提供安装说明、使用指南和其他重要信息,帮助您快速开始使用此驱动。</p>
<section id="id1">
<h1><span class="section-number">1. </span>安装<a class="headerlink" href="#id1" title="Link to this heading"></a></h1>
<section id="id2">
<h2><span class="section-number">1.1. </span>先决条件<a class="headerlink" href="#id2" title="Link to this heading"></a></h2>
<p>在使用OrbbecSDK ROS2 LiDAR驱动程序之前,请确保您的系统上安装了以下依赖项:</p>
<ul class="simple">
<li><p><strong>ROS2</strong>:Humble、Jazzy 或其他受支持的发行版。</p>
<ul>
<li><p>如果您需要帮助,请参阅<a class="reference external" href="https://docs.ros.org/en/foxy/Installation.html">ROS2安装指南</a>。</p></li>
</ul>
</li>
</ul>
</section>
<section id="deb">
<h2><span class="section-number">1.2. </span>安装deb依赖项<a class="headerlink" href="#deb" title="Link to this heading"></a></h2>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># 假设您已经配置了ROS环境,下同</span>
sudo<span class="w"> </span>apt<span class="w"> </span>install<span class="w"> </span>libgflags-dev<span class="w"> </span>nlohmann-json3-dev<span class="w"> </span><span class="se">\</span>
ros-<span class="nv">$ROS_DISTRO</span>-image-transport<span class="w"> </span>ros-<span class="si">${</span><span class="nv">ROS_DISTRO</span><span class="si">}</span>-image-transport-plugins<span class="w"> </span>ros-<span class="si">${</span><span class="nv">ROS_DISTRO</span><span class="si">}</span>-compressed-image-transport<span class="w"> </span><span class="se">\</span>
ros-<span class="nv">$ROS_DISTRO</span>-image-publisher<span class="w"> </span>ros-<span class="nv">$ROS_DISTRO</span>-camera-info-manager<span class="w"> </span><span class="se">\</span>
ros-<span class="nv">$ROS_DISTRO</span>-diagnostic-updater<span class="w"> </span>ros-<span class="nv">$ROS_DISTRO</span>-diagnostic-msgs<span class="w"> </span>ros-<span class="nv">$ROS_DISTRO</span>-statistics-msgs<span class="w"> </span><span class="se">\</span>
ros-<span class="nv">$ROS_DISTRO</span>-backward-ros<span class="w"> </span>libdw-dev
</pre></div>
</div>
</section>
<section id="udev">
<h2><span class="section-number">1.3. </span>安装udev规则<a class="headerlink" href="#udev" title="Link to this heading"></a></h2>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="nb">cd</span><span class="w"> </span>~/ros2_ws/src/OrbbecSDK_ROS2/orbbec_camera/scripts
sudo<span class="w"> </span>bash<span class="w"> </span>install_udev_rules.sh
sudo<span class="w"> </span>udevadm<span class="w"> </span>control<span class="w"> </span>--reload-rules<span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span>sudo<span class="w"> </span>udevadm<span class="w"> </span>trigger
</pre></div>
</div>
</section>
<section id="id3">
<h2><span class="section-number">1.4. </span>构建包<a class="headerlink" href="#id3" title="Link to this heading"></a></h2>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="nb">cd</span><span class="w"> </span>~/ros2_ws/
<span class="c1"># 构建发布版本,默认为调试版本</span>
colcon<span class="w"> </span>build<span class="w"> </span>--event-handlers<span class="w"> </span>console_direct+<span class="w"> </span>--cmake-args<span class="w"> </span>-DCMAKE_BUILD_TYPE<span class="o">=</span>Release
</pre></div>
</div>
</section>
<section id="id4">
<h2><span class="section-number">1.5. </span>启动激光雷达节点<a class="headerlink" href="#id4" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p>第一个终端</p></li>
</ul>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>.<span class="w"> </span>./install/setup.bash
ros2<span class="w"> </span>launch<span class="w"> </span>orbbec_camera<span class="w"> </span>lidar.launch.py
</pre></div>
</div>
<ul class="simple">
<li><p>第二个终端</p></li>
</ul>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>.<span class="w"> </span>./install/setup.bash
rviz2
</pre></div>
</div>
<ol class="simple">
<li><p>打开Rviz2。</p></li>
<li><p>添加 <code class="docutils literal notranslate"><span class="pre">PointCloud2</span></code>或 <code class="docutils literal notranslate"><span class="pre">LaserScan</span></code>显示。</p></li>
<li><p>对于 <code class="docutils literal notranslate"><span class="pre">PointCloud2</span></code>,选择 <code class="docutils literal notranslate"><span class="pre">/lidar/cloud/points</span></code>话题;对于 <code class="docutils literal notranslate"><span class="pre">LaserScan</span></code>,选择 <code class="docutils literal notranslate"><span class="pre">/lidar/scan/points</span></code>话题。</p></li>
<li><p>将 <code class="docutils literal notranslate"><span class="pre">Fixed</span> <span class="pre">Frame</span></code>设置为 <code class="docutils literal notranslate"><span class="pre">lidar_lidar_frame</span></code>以正确对齐数据。</p></li>
</ol>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">PointCloud2</span></code>可视化示例:</p></li>
</ul>
<p><img alt="rviz2中的模块" src="source/lidar_devices/docs/images/lidar0.jpg" /></p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">LaserScan</span></code>可视化示例:</p></li>
</ul>
<p><img alt="rviz2中的模块" src="source/lidar_devices/docs/images/lidar1.png" /></p>
</section>
</section>
<section id="id5">
<h1><span class="section-number">2. </span>使用方法<a class="headerlink" href="#id5" title="Link to this heading"></a></h1>
<section id="id6">
<h2><span class="section-number">2.1. </span>运行驱动<a class="headerlink" href="#id6" title="Link to this heading"></a></h2>
<p>要启动驱动,请启动提供的ROS2启动文件:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="nb">source</span><span class="w"> </span>install/setup.bash
<span class="c1"># 启动带有点云数据的驱动</span>
ros2<span class="w"> </span>launch<span class="w"> </span>orbbec_camera<span class="w"> </span>lidar.launch.py<span class="w"> </span>lidar_format:<span class="o">=</span>LIDAR_POINT
<span class="c1"># 启动带有球面点云数据的驱动</span>
ros2<span class="w"> </span>launch<span class="w"> </span>orbbec_camera<span class="w"> </span>lidar.launch.py<span class="w"> </span>lidar_format:<span class="o">=</span>LIDAR_SPHERE_POINT
<span class="c1"># 启动带有激光扫描数据的驱动</span>
ros2<span class="w"> </span>launch<span class="w"> </span>orbbec_camera<span class="w"> </span>lidar.launch.py<span class="w"> </span>lidar_format:<span class="o">=</span>LIDAR_SCAN
<span class="c1"># 启动启用IMU的驱动</span>
ros2<span class="w"> </span>launch<span class="w"> </span>orbbec_camera<span class="w"> </span>lidar.launch.py<span class="w"> </span>enable_imu:<span class="o">=</span><span class="nb">true</span><span class="w"> </span>imu_rate:<span class="o">=</span>50hz
<span class="c1"># 启动同时包含点云和IMU数据的驱动</span>
ros2<span class="w"> </span>launch<span class="w"> </span>orbbec_camera<span class="w"> </span>lidar.launch.py<span class="w"> </span>lidar_format:<span class="o">=</span>LIDAR_POINT<span class="w"> </span>enable_imu:<span class="o">=</span><span class="nb">true</span><span class="w"> </span>imu_rate:<span class="o">=</span>100hz
</pre></div>
</div>
<p>此命令将启动与奥比中光激光雷达设备接口的节点。请确保在运行此命令之前正确连接激光雷达硬件。</p>
</section>
<section id="id7">
<h2><span class="section-number">2.2. </span>获取已连接激光雷达的设备信息<a class="headerlink" href="#id7" title="Link to this heading"></a></h2>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>ros2<span class="w"> </span>run<span class="w"> </span>orbbec_camera<span class="w"> </span>list_devices_node
</pre></div>
</div>
<p>此命令将列出已连接的激光雷达设备并显示其各自的IP地址和端口。您可以使用此信息配置驱动以连接到特定设备。</p>
</section>
<section id="id8">
<h2><span class="section-number">2.3. </span>检查激光雷达支持的配置<a class="headerlink" href="#id8" title="Link to this heading"></a></h2>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>ros2<span class="w"> </span>run<span class="w"> </span>orbbec_camera<span class="w"> </span>list_camera_profile_mode_node
</pre></div>
</div>
</section>
<section id="id9">
<h2><span class="section-number">2.4. </span>2.4 参数和配置<a class="headerlink" href="#id9" title="Link to this heading"></a></h2>
<p><code class="docutils literal notranslate"><span class="pre">lidar.launch.py</span></code>文件包含驱动的默认参数。您可以通过修改启动文件或创建自定义配置文件来自定义这些设置。关键参数包括:</p>
<ul class="simple">
<li><p><strong>device_type</strong>: 要启动的设备类型。可选值:<code class="docutils literal notranslate"><span class="pre">lidar</span></code>、<code class="docutils literal notranslate"><span class="pre">camera</span></code>。将此参数设置为 <code class="docutils literal notranslate"><span class="pre">lidar</span></code>启动激光雷达设备,设置为 <code class="docutils literal notranslate"><span class="pre">camera</span></code>启动摄像头设备。</p></li>
<li><p><strong>camera_name</strong>: 启动节点命名空间。</p></li>
<li><p><strong>device_num</strong>: 设备数量。如果需要启动多个设备,则必须填写此项。</p></li>
<li><p><strong>upgrade_firmware</strong>: 固件升级功能。输入参数是固件路径。</p></li>
<li><p><strong>connection_delay</strong>: 重新打开设备的延迟时间(毫秒)。在热插拔期间立即重新打开设备可能导致固件崩溃。</p></li>
<li><p><strong>publish_tf</strong>: 启用TF发布。</p></li>
<li><p><strong>tf_publish_rate</strong>: TF发布频率。</p></li>
<li><p><strong>lidar_format</strong>: 激光雷达的数据格式。可选值:<code class="docutils literal notranslate"><span class="pre">LIDAR_POINT</span></code>、<code class="docutils literal notranslate"><span class="pre">LIDAR_SPHERE_POINT</span></code>、<code class="docutils literal notranslate"><span class="pre">LIDAR_SCAN</span></code></p></li>
<li><p><strong>lidar_rate</strong>: 激光雷达的扫描频率。</p></li>
<li><p><strong>publish_n_pkts</strong>: 多帧数据合并发布的帧数量。范围:1-12000。仅在激光雷达格式为 <code class="docutils literal notranslate"><span class="pre">LIDAR_POINT</span></code> 或 <code class="docutils literal notranslate"><span class="pre">LIDAR_SPHERE_POINT</span></code> 时生效,用于累积指定数量的帧后再发布合并的点云数据。默认值:<code class="docutils literal notranslate"><span class="pre">1</span></code></p></li>
<li><p><strong>enable_scan_to_point</strong>: 启用扫描数据到点云数据的转换,发布PointCloud2数据类型话题。</p></li>
<li><p><strong>repetitive_scan_mode</strong>: 重复扫描模式参数。</p></li>
<li><p><strong>filter_level</strong>: 添加过滤级别参数。</p></li>
<li><p><strong>vertical_fov</strong>: 垂直角度参数。</p></li>
<li><p><strong>min_angle</strong>: 激光雷达扫描范围的最小角度(度)(例如,<code class="docutils literal notranslate"><span class="pre">-135.0</span></code>)。默认值:<code class="docutils literal notranslate"><span class="pre">-135.0</span></code></p></li>
<li><p><strong>max_angle</strong>: 激光雷达扫描范围的最大角度(度)(例如,<code class="docutils literal notranslate"><span class="pre">135.0</span></code>)。默认值:<code class="docutils literal notranslate"><span class="pre">135.0</span></code></p></li>
<li><p><strong>min_range</strong>: 激光雷达可测量的最小距离(米)。默认值:<code class="docutils literal notranslate"><span class="pre">0.05</span></code></p></li>
<li><p><strong>max_range</strong>: 激光雷达可测量的最大距离(米)。默认值:<code class="docutils literal notranslate"><span class="pre">30.0</span></code></p></li>
<li><p><strong>echo_mode</strong>: 激光雷达的回波模式。可选值:<code class="docutils literal notranslate"><span class="pre">Last</span> <span class="pre">Echo</span></code>、<code class="docutils literal notranslate"><span class="pre">First</span> <span class="pre">Echo</span></code></p></li>
<li><p><strong>point_cloud_qos</strong>: ROS 2消息服务质量(QoS)设置。可能的值包括 <code class="docutils literal notranslate"><span class="pre">SYSTEM_DEFAULT</span></code>、<code class="docutils literal notranslate"><span class="pre">DEFAULT</span></code>、<code class="docutils literal notranslate"><span class="pre">PARAMETER_EVENTS</span></code>、<code class="docutils literal notranslate"><span class="pre">SERVICES_DEFAULT</span></code>、<code class="docutils literal notranslate"><span class="pre">PARAMETERS</span></code>和 <code class="docutils literal notranslate"><span class="pre">SENSOR_DATA</span></code>,不区分大小写。这些值分别对应 <code class="docutils literal notranslate"><span class="pre">rmw_qos_profile_system_default</span></code>、<code class="docutils literal notranslate"><span class="pre">rmw_qos_profile_default</span></code>、<code class="docutils literal notranslate"><span class="pre">rmw_qos_profile_parameter_events</span></code>、<code class="docutils literal notranslate"><span class="pre">rmw_qos_profile_services_default</span></code>、<code class="docutils literal notranslate"><span class="pre">rmw_qos_profile_parameters</span></code>和 <code class="docutils literal notranslate"><span class="pre">SENSOR_DATA</span></code>。</p></li>
<li><p><strong>enumerate_net_device</strong>: 启用网络设备的自动枚举。</p></li>
<li><p><strong>net_device_ip</strong>: 网络设备的IP地址。</p></li>
<li><p><strong>net_device_port</strong>: 网络端的端口号。</p></li>
<li><p><strong>log_level</strong>: SDK日志级别,默认值为 <code class="docutils literal notranslate"><span class="pre">none</span></code>,可选值为 <code class="docutils literal notranslate"><span class="pre">debug</span></code>、<code class="docutils literal notranslate"><span class="pre">info</span></code>、<code class="docutils literal notranslate"><span class="pre">warn</span></code>、<code class="docutils literal notranslate"><span class="pre">error</span></code>、<code class="docutils literal notranslate"><span class="pre">fatal</span></code></p></li>
<li><p><strong>time_domain</strong>: 设备的时间戳类型。可选值为 <code class="docutils literal notranslate"><span class="pre">device</span></code>、<code class="docutils literal notranslate"><span class="pre">global</span></code>、<code class="docutils literal notranslate"><span class="pre">system</span></code></p></li>
<li><p><strong>config_file_path</strong>: YAML配置文件的路径。默认值为&quot;&quot;。如果未指定配置文件,将使用启动文件中的默认参数。</p></li>
<li><p><strong>enable_heartbeat</strong>: 启用心跳功能,默认为 <code class="docutils literal notranslate"><span class="pre">false</span></code>。如果设置为 <code class="docutils literal notranslate"><span class="pre">true</span></code>,相机节点将向固件发送心跳信号;如果需要硬件日志记录,也应将其设置为 <code class="docutils literal notranslate"><span class="pre">true</span></code>。</p></li>
<li><p><strong>enable_imu</strong>: 启用IMU(加速度计+陀螺仪)并输出统一的IMU话题数据。</p></li>
<li><p><strong>imu_rate</strong>: IMU的统一频率(加速度计和陀螺仪)。</p></li>
<li><p><strong>accel_range</strong>: 加速度计的量程。</p></li>
<li><p><strong>gyro_range</strong>: 陀螺仪的量程。</p></li>
<li><p><strong>linear_accel_cov</strong>: 线性加速度协方差值,默认为 <code class="docutils literal notranslate"><span class="pre">0.0001</span></code>。</p></li>
<li><p><strong>angular_vel_cov</strong>: 角速度协方差值,默认为 <code class="docutils literal notranslate"><span class="pre">0.0001</span></code>。</p></li>
</ul>
</section>
</section>
<section id="id10">
<h1><span class="section-number">3. </span>点云数据详细说明<a class="headerlink" href="#id10" title="Link to this heading"></a></h1>
<section id="id11">
<h2><span class="section-number">3.1. </span>点云格式<a class="headerlink" href="#id11" title="Link to this heading"></a></h2>
<p>PointCloud2 (PointXYZITO) 点云格式如下:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">float32</span> <span class="n">x</span> <span class="c1"># X轴,单位:米</span>
<span class="n">float32</span> <span class="n">y</span> <span class="c1"># Y轴,单位:米</span>
<span class="n">float32</span> <span class="n">z</span> <span class="c1"># Z轴,单位:米</span>
<span class="n">uint8</span> <span class="n">intensity</span> <span class="c1"># 激光雷达强度</span>
<span class="n">uint8</span> <span class="n">tag</span> <span class="c1"># 激光雷达标签</span>
<span class="n">uint32</span> <span class="n">offset_time</span> <span class="c1"># 点云相对话题时间的偏移量,单位纳秒</span>
</pre></div>
</div>
</section>
<section id="id12">
<h2><span class="section-number">3.2. </span>点云聚合功能<a class="headerlink" href="#id12" title="Link to this heading"></a></h2>
<p>通过 <code class="docutils literal notranslate"><span class="pre">publish_n_pkts</span></code> 参数可以开启点云聚合功能,该功能允许激光雷达在发布数据前累积指定数量的帧,然后将这些帧合并为一个更大的点云数据包进行发布。</p>
<section id="id13">
<h3><span class="section-number">3.2.1. </span>功能特点:<a class="headerlink" href="#id13" title="Link to this heading"></a></h3>
<ul class="simple">
<li><p><strong>参数范围</strong>: 1-12000 帧</p></li>
<li><p><strong>适用格式</strong>: 仅在激光雷达格式为 <code class="docutils literal notranslate"><span class="pre">LIDAR_POINT</span></code> 或 <code class="docutils literal notranslate"><span class="pre">LIDAR_SPHERE_POINT</span></code> 时有效</p></li>
<li><p><strong>默认值</strong>: 1(即不聚合,每帧单独发布)</p></li>
<li><p><strong>用途</strong>: 提高点云密度,适用于需要更密集点云数据的应用场景</p></li>
</ul>
</section>
<section id="id14">
<h3><span class="section-number">3.2.2. </span>使用示例:<a class="headerlink" href="#id14" title="Link to this heading"></a></h3>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># 聚合10帧数据后发布</span>
ros2<span class="w"> </span>launch<span class="w"> </span>orbbec_camera<span class="w"> </span>lidar.launch.py<span class="w"> </span>lidar_format:<span class="o">=</span>LIDAR_POINT<span class="w"> </span>publish_n_pkts:<span class="o">=</span><span class="m">10</span>
<span class="c1"># 聚合100帧数据后发布</span>
ros2<span class="w"> </span>launch<span class="w"> </span>orbbec_camera<span class="w"> </span>lidar.launch.py<span class="w"> </span>lidar_format:<span class="o">=</span>LIDAR_SPHERE_POINT<span class="w"> </span>publish_n_pkts:<span class="o">=</span><span class="m">100</span>
</pre></div>
</div>
<p><strong>注意</strong>: 增加 <code class="docutils literal notranslate"><span class="pre">publish_n_pkts</span></code> 值会提高点云密度,但同时会增加延迟和内存使用量,请根据实际应用需求进行调整。</p>
</section>
</section>
</section>
<section id="imu">
<h1><span class="section-number">4. </span>IMU数据<a class="headerlink" href="#imu" title="Link to this heading"></a></h1>
<section id="id15">
<h2><span class="section-number">4.1. </span>IMU话题<a class="headerlink" href="#id15" title="Link to this heading"></a></h2>
<p>启用IMU时,将发布以下话题:</p>
<ul class="simple">
<li><p><strong><code class="docutils literal notranslate"><span class="pre">/lidar/imu/sample</span></code></strong>: 统一的IMU话题,包含 <code class="docutils literal notranslate"><span class="pre">sensor_msgs/Imu</span></code>格式的同步加速度计和陀螺仪数据。</p></li>
<li><p><strong><code class="docutils literal notranslate"><span class="pre">/lidar/lidar_to_imu</span></code></strong>: 从激光雷达坐标系到IMU坐标系的变换。</p></li>
</ul>
</section>
<section id="id16">
<h2><span class="section-number">4.2. </span>使用IMU数据<a class="headerlink" href="#id16" title="Link to this heading"></a></h2>
<p>要启用IMU数据采集:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># 启动并启用IMU</span>
ros2<span class="w"> </span>launch<span class="w"> </span>orbbec_camera<span class="w"> </span>lidar.launch.py<span class="w"> </span>enable_imu:<span class="o">=</span><span class="nb">true</span><span class="w"> </span>imu_rate:<span class="o">=</span>50hz
<span class="c1"># 检查IMU话题</span>
ros2<span class="w"> </span>topic<span class="w"> </span>list<span class="w"> </span><span class="p">|</span><span class="w"> </span>grep<span class="w"> </span>imu
<span class="c1"># 查看IMU数据</span>
ros2<span class="w"> </span>topic<span class="w"> </span><span class="nb">echo</span><span class="w"> </span>/lidar/imu/sample
</pre></div>
</div>
<p>IMU数据包括:</p>
<ul class="simple">
<li><p><strong>linear_acceleration</strong>: 3D加速度数据(x、y、z),单位:m/s²</p></li>
<li><p><strong>angular_velocity</strong>: 3D角速度数据(x、y、z),单位:rad/s</p></li>
<li><p><strong>orientation</strong>: 四元数方向(硬件不提供,设置为零)</p></li>
</ul>
</section>
</section>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="页脚">
<a href="index.html" class="btn btn-neutral float-left" title="Lidar Devices" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> 上一页</a>
</div>
<hr/>
<div role="contentinfo">
<p>&#169; 版权所有 2025, 奥比中光科技集团股份有限公司 www.orbbec.com.。
<span class="lastupdated">最后更新于 2026年01月04日 01:19:55.
</span></p>
</div>
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>