解决QDebug打印中文乱码问题
在使用 Qt 开发时,qDebug 打印包含中文的 QString 可能会出现乱码。这通常是由于字符编码不一致导致的。
1 | #include <QDebug> |
Ubuntu18.04安装ROS-Melodic
系统要求
- 操作系统: Ubuntu 18.04 (Bionic Beaver)
- ROS 版本: Melodic Morenia (官方长期支持版本)
- Python 版本: 2.7.x (ROS Melodic 默认使用)
安装步骤
1. 配置软件源和密钥
1 | sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' |
2. 更新软件包列表
1 | sudo apt update |
3. 安装 ROS Melodic
完整桌面版 (推荐,包含 GUI 工具、仿真器和常用库):
1 | sudo apt install ros-melodic-desktop-full |
其他可选版本:
1 | sudo apt install ros-melodic-desktop # 基础桌面版(无仿真器) |
4. 初始化 rosdep
1 | sudo rosdep init |
5. 设置环境变量
1 | echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc |
6. 安装构建工具和依赖
1 | sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential |
7. 创建示例工作空间 (可选)
1 | mkdir -p ~/catkin_ws/src |
验证安装
打开新终端,运行:
1 | roscore |
如果看到类似以下输出,说明安装成功:
1 | ... logging to /home/username/.ros/log/xxx/roslaunch-hostname-xxx.log |
常见问题解决
1. 密钥获取失败
如果 apt-key adv 失败,可以手动下载并添加:
1 | curl -sSL 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xC1CF6E31E6BADE8868B172B4F42ED6FBAB17C654' | sudo apt-key add - |
2. 网络问题
如果下载速度慢,可以替换为国内镜像源(如清华源):
1 | sudo sh -c '. /etc/lsb-release && echo "deb https://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list' |
3. Python 版本验证
确保系统中已安装 Python 2.7:
1 | python --version # 应显示 Python 2.7.x |
测试命令
安装完成后,可以使用以下命令测试 ROS 功能:
roscore- 启动 ROS masterrosrun roscpp_tutorials talker- 运行发布者节点rosrun roscpp_tutorials listener- 运行订阅者节点
参考资源
Ubuntu部署LIO-SAM
概述
LIO-SAM (Lidar Inertial Odometry and Mapping) 是一个紧耦合的激光雷达惯性里程计框架,集成了 IMU 预积分和 GPS 数据,适用于机器人建图和定位。
环境要求
| 组件 | 版本 | 下载地址 |
|---|---|---|
| Ubuntu | 18.04+ | - |
| ROS | Melodic | - |
| gtsam | 4.0.2 | GitHub |
| Eigen | 3.3.7 | GitLab |
| LIO-SAM | 最新版 | GitHub |
安装步骤
1. 安装系统依赖
1 | # 更新系统包列表 |
2. 安装 Eigen 库
1 | # 下载并解压 Eigen |
3. 安装 ROS Melodic
1 | # 设置 ROS 软件源(清华镜像) |
4. 配置 ROS 环境
1 | # 将 ROS 环境变量添加到 bashrc |
5. 安装 gtsam
1 | # 克隆 gtsam 仓库 |
6. 安装 LIO-SAM
1 | # 创建工作空间 |
验证安装
测试 ROS 安装
1 | # 启动 ROS 核心 |
测试 LIO-SAM 编译
1 | # 检查 LIO-SAM 包是否存在 |
常见问题解决
1. Eigen 头文件找不到
问题:编译时出现 fatal error: Eigen/Dense: No such file or directory
解决方案:
1 | # 确保 Eigen 头文件在正确位置 |
2. gtsam 版本不兼容
问题:需要特定版本的 gtsam
解决方案:
1 | # 确保使用 gtsam 4.0.2 版本 |
3. ROS 依赖问题
问题:缺少 ROS 包依赖
解决方案:
1 | # 安装所有缺失的依赖 |
使用说明
启动 LIO-SAM
1 | # 启动 LIO-SAM 主要节点 |
数据播放
1 | # 播放 bag 文件 |
目录结构
1 | ~/catkin_ws/ |
注意事项
- 版本匹配:确保所有组件的版本兼容性
- 内存要求:编译过程需要足够的内存,建议 8GB+ RAM
- 网络连接:下载依赖需要稳定的网络连接
- 权限问题:某些操作需要 sudo 权限
后续步骤
- 配置参数:根据你的传感器调整
config/params.yaml - 数据采集:使用你的传感器采集数据
- 性能调优:根据实际场景调整算法参数
参考资源
Ubuntu部署ROS
准备
建议准备一个干净、换好源的 Ubuntu 16.04 及以上版本(建议 清华源 ),本教程也适用其他 ROS1版本。
查看ubuntu 版本
1 | lsb_release -a |
根据自己的 Ubuntu 的版本选择 ROS 版本 (示例是 Ubuntu 18.04 所以对应ROS版本为 melodic)
![[Ubuntu部署ROS/IMG-20250829234441526.png]]
ROS安装
1. 安装源
1 | sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list' |
2. 设置密钥
1 | sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 |
3. 安装
1 | sudo apt update |
4. 配置环境变量
1 | echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc |
5. 配置rosdep
在使用许多 ROS 工具之前,需要初始化 rosdep,有些功能包源码编译需要rosdep 来安装这些系统依赖项,不配置也不影响ros使用,所以后面需要时再来配置也可以。 rosdep 请求的文件都放在 github 上的, 推荐使用代理。
1 |
|
测试
1 | roscore |
参考
官方文档(melodic)
ubuntu18.04安装ROS Melodic(最详细配置)-CSDN博客
基于Ubuntu18.04的ROS Melodic环境详细配置(含各种大坑及填坑)
[ROS 系列学习教程] ROS与操作系统版本对应关系_ros版本-CSDN博客