XGRIDS文档
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • 灵视 P1

    • 产品概述
    • 设备基本操作
    • 使用 LCC Scan App
    • 维护及保养
    • 常见问题
  • 灵光 K 系列

    • 灵光 K1

      • 产品概述
      • 设备基本操作
      • 设备激活与连接
      • 设备采集
      • 获取绝对坐标点云数据
      • 地图融合
      • 典型场景路线规划建议
      • 注意事项
      • 常见问题
    • 灵光 K2

      • 产品概述
      • 设备基本操作
      • 设备激活与连接
      • 设备采集
      • 获取绝对坐标点云数据
      • 地图融合
      • 典型场景路线规划建议
      • 注意事项
      • 常见问题
  • 灵光 L 系列

    • 灵光 L2 Pro

      • 产品概述
      • 设备基本操作
      • 设备激活与连接
      • 设备采集
      • 获取绝对坐标点云数据
      • 实时测量功能
      • 附录
      • 常见问题
  • Lixel Studio

    • 版权
    • 安装与激活
    • 界面说明
    • 文件
    • 工程处理
    • 工具
    • 平面绘制
    • 行业应用
    • 设置
    • 设备感知
  • Lixel CyberColor

    • LCC Studio

      • 入门
      • 版本与更新
      • 下载与安装
      • 界面概览与导航
      • 重建前工作
      • 模型重建
      • 单模型重建
      • 地图融合
      • 空地融合
      • 航拍重建
      • 我的模型
      • 其他功能
      • 设置与账号
      • 转换工具
      • 视频重建
      • 常见问题 / FAQ
    • LCC Scene Editor

      • 版本与更新
      • 账号与登录
      • 产品概览与主页
      • 编辑器界面介绍
      • 三种场景漫游快捷操作
      • 文件
      • 设置
      • 编辑操作
      • 窗口
      • 视图工具栏
      • 资产与属性
      • 左侧工具栏
      • 视点
      • 跳转点
      • 天空盒
      • 标注
      • 测量
      • 场景漫游
      • 场景报告
      • 智能户型图(3D Layout)
      • 小地图
      • 预览模式(Viewer)
      • 帮助
      • 常见问题 / FAQ
      • 出生点
    • LCC Model Editor

      • 版本与更新
      • 新手指引
      • 概览与界面
      • 文件操作
      • 选择器
      • 编辑操作
      • 测量
      • 调色
      • 资产管理
      • 设置与帮助
      • 常见问题 / FAQ
    • 采集指南

      • 概述
      • 采集设备总览
      • 通用采集原则
      • 室内场景采集
      • 室外场景采集
      • 大场景采集(地图融合)
      • 空地融合采集
      • 物体采集
      • 人物采集
      • 视频重建采集
      • 高清补拍
      • 控制点(灵视 P1)
      • 常见问题与排查
    • 历史版本
  • Plugin & SDK

    • Unreal

      • 介绍
      • 快速入门 - Windows
      • 快速入门 - Linux
      • 快速入门 - Quest3
      • 版本与授权
      • 渲染
      • 画面调节
      • 法线与光照
      • 场景编辑
      • 性能参数说明
      • 性能优化指南
      • 第三方与引擎插件集成
      • 代理网格
      • 加载动画
      • 碰撞
      • 寻路系统支持
      • 单层水支持
      • 本地化
      • 常见问题
      • 故障排查
      • 日志与诊断
      • 联系我们
      • API 参考

        • ALCCActorBase
        • ULCCComponentBase
        • ULCCComponent
        • ULCC2Component
        • SOG / SPZ / PLY Actors
        • ALCC2ProxyMesh
        • ALCCClippingVolume
        • ALCCSectionPlane
        • ULCCUtilLibrary
        • Enums
        • Structs
      • 更新日志

        • v3.3.1
        • v3.0.0
        • v2.2.1
        • v1.0.0
        • v0.9.0
        • v0.8.0
        • v0.7.1
        • v0.6.1
        • v0.5.2
        • v0.4.1
        • v0.4.0
        • v0.3.0
        • v0.0.5
        • v0.0.4
        • v0.0.3
        • v0.0.2
        • v0.0.1
    • X-Brain 系列

      • 产品概述
      • 快速开始
      • 核心概念
      • 集成指南
      • API 参考
      • 数据类型
      • ROS2 桥接
      • 示例程序
      • 部署与网络
      • 排障与 FAQ
      • 版本与发布

ROS2 桥接

SDK 自带 lixel_sdk_ros2 包,把设备数据桥接为标准 ROS2 Topic,适合已有 ROS2 工作流的用户。

依赖

  • ROS2 Humble(Ubuntu 22.04)或 Foxy(Ubuntu 20.04)
  • X-Brain SDK 核心库(交付包中的 lib/<arch>/liblixel_sdk.so)
  • Eigen3

编译

mkdir -p ~/ros2_ws/src
ln -sf <sdk>/ros2 ~/ros2_ws/src/lixel_sdk_ros2

cd ~/ros2_ws
source /opt/ros/humble/setup.bash
colcon build --packages-select lixel_sdk_ros2

运行

source /opt/ros/humble/setup.bash
source ~/ros2_ws/install/setup.bash
# <arch> 取 x86_64 或 aarch64,与目标机架构一致
export LD_LIBRARY_PATH=<sdk>/lib/<arch>:$LD_LIBRARY_PATH

# 方式 1:直接运行
ros2 run lixel_sdk_ros2 sdk_bridge_node --ros-args -p device_ip:=192.168.123.103

# 方式 2:launch 文件
ros2 launch lixel_sdk_ros2 sdk_bridge.launch.py device_ip:=192.168.123.103

节点行为:

  • 启动时自动连接设备并启动录制;
  • 等待设备进入录制状态后开始订阅并发布数据;
  • Ctrl+C 退出时自动停止录制并断开连接。

发布的 Topic

Topic消息类型频率说明
/lixel/odomnav_msgs/Odometry~100Hz设备(IMU)系位姿,map → base_link,无外参变换
/lixel/tftf2_msgs/TFMessage~100Hzmap → base_link 动态变换
/lixel/cloud_pointssensor_msgs/PointCloud2~10Hz设备(IMU)系 reloc 点云(XYZI, float32),frame=base_link
/lixel/raw_cloudsensor_msgs/PointCloud2~10Hz去畸变原始点云,frame=base_link
/lixel/imusensor_msgs/Imu~200Hz原始 IMU(加速度 + 角速度),frame=base_link
/lixel/camera/left/compressedsensor_msgs/CompressedImage取决于设备左相机 JPEG
/lixel/camera/center/compressedsensor_msgs/CompressedImage取决于设备中相机 JPEG
/lixel/camera/right/compressedsensor_msgs/CompressedImage取决于设备右相机 JPEG
/lixel/diagnosticsdiagnostic_msgs/DiagnosticArray~10Hz设备错误码
ros2 topic list             # 查看话题
ros2 topic hz /lixel/odom   # 确认位姿在发(预期 ~100Hz)
ros2 topic echo /lixel/odom # 查看数据

TF 结构

TF 极简,仅两层:

map ──(动态, ~100Hz)──► base_link
 └ 世界/地图系            └ 设备(IMU)基准
  • base_link 直接等于设备 IMU 系。桥接把设备位姿原样作为 map → base_link,不做任何外参变换。
  • 世界系命名为 map:设备输出是 SLAM + 可重定位的全局位姿(绑地图、有重定位跳变),语义上是 map(REP-105)而非 odom。
  • 点云 / IMU / 图像的 frame_id 均为 base_link(都是设备系数据)。

接到你的载体

若设备装在机器狗/车/无人机上,需要载体中心位姿时,由你在 base_link 之下再发一层静态 TF(设备 → 载体):

map ──► base_link(设备IMU) ──► your_robot_center
                              └ 你自己标定并发布这层静态 TF
ros2 run tf2_ros static_transform_publisher \
  <x> <y> <z> <qx> <qy> <qz> <qw> base_link your_robot_center

这与"设备只输出设备系、载体变换归集成方"的约定一致(见核心概念)。

参数

参数默认值说明
device_ip192.168.123.103设备 IP
device_port7448设备端口(SDK 只连此单端点)
connect_timeout_ms5000连接超时(ms)
map_framemap世界/地图坐标系(REP-105 全局无漂移)
base_framebase_link设备基座坐标系,等于设备 IMU 系

各 Topic 名也可通过参数改(odom_topic / cloud_topic / imu_topic 等)。参数可通过 config/default_params.yaml 或命令行 --ros-args -p key:=value 传入。

注:由于 SDK 订阅的位姿/点云本身即设备(IMU)系,桥接不再做外参变换,因此不需要 sensor_frame / use_omega_cross_r / static_tf.* 等参数。

前提条件

  • 设备与上位机处于同一网段且 7448 端口可达;
  • 设备在录制状态下才发布位姿(节点会自动启动录制);
  • 点云数据需设备在有图模式下且重定位成功后才发布。

排障见排障与 FAQ。

上一页
数据类型
下一页
示例程序