宇树机器人g1二次开发:建图,定位,导航手把手教程(二)建图部分:开始一直到打开rviz教程

注意:

本教程为ros1,需要ubuntu20.04,使用算法为fase_lio

本教程为遵循的网上开源项目:https://github.com/deepglint/FAST_LIO_LOCALIZATION_HUMANOID.git

一、系统环境准备

1.1. 安装必要的依赖库

# 安装C++标准库 sudo apt install libc++-dev libc++abi-dev # 安装Eigen3线性代数库 sudo apt-get install libeigen3-dev

库说明:

  • libc++-dev:C++标准库开发文件
  • libeigen3-dev:线性代数库,用于矩阵运算和几何变换
  • 这些是编译FAST-LIO和Open3D必需的数学和系统库

二、创建工作空间和准备

2.1. 创建定位工作空间

mkdir -p ~/ws_loc/src cd ~/ws_loc/src

把https://github.com/deepglint/FAST_LIO_LOCALIZATION_HUMANOID.git这个项目移到这里

三、获取并配置Open3D库

3.1. 下载预编译Open3D库

3.2. 编辑CMakeLists.txt

# 编辑CMakeLists.txt配置Open3D路径 cd ~/ws_loc/src/FAST_LIO_LOCALIZATION_HUMANOID/open3d_loc nano CMakeLists.txt

3.3. 修改CMakeLists.txt中的Open3D路径

将:set(Open3D_DIR "/home/liar/open3d141/lib/cmake/Open3D")中的liar改成自己home名字修改为你的用户名(假设用户名为 your_username):

set(Open3D_DIR "/home/your_username/open3d141/lib/cmake/Open3D")

保存操作: 修改完后按 Ctrl+X,然后输入 Y,最后按 Enter

3.4. 完成Open3D的配置

cd ~/ws_loc catkin_make -DROS_EDITION=ROS1

 

四、安装Livox SDK和相关驱动

4.1. 安装Livox-SDK2

# 克隆Livox-SDK2 git clone https://github.com/Livox-SDK/Livox-SDK2
# 编译安装 cd Livox-SDK2 mkdir build && cd build cmake .. && make -j sudo make install

4.2. 安装Livox-SDK(旧版)

# 克隆Livox-SDK git clone https://github.com/Livox-SDK/Livox-SDK

# 重命名并处理嵌套文件夹 # 注意:文件有两层嵌套,需要删除第二层嵌套文件夹

# 编译安装 cd Livox-SDK mkdir build && cd build cmake .. && make -j sudo make install

注意: 如果遇到cmake版本兼容问题,尝试使用策略跳过

4.3. 安装livox_ros_driver

# 克隆驱动 git clone https://github.com/Livox-SDK/livox_ros_driver

# 重命名并处理嵌套文件夹

# 创建livox专用工作空间 mkdir -p ~/ws_livox/src cd ~/ws_livox/src
# 创建符号链接 ln -s ~/livox_ros_driver . # 编译 cd ~/ws_livox catkin_make

注意: 如果遇到cmake版本兼容问题,尝试使用策略跳过

五、解决编译问题和配置

5.1. 重新配置和编译定位系统

cd ~/ws_loc/build cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 ../src -DROS_EDITION=ROS1 make -j

六、配置激光雷达

6.1. 配置激光雷达参数文件

cd ~/ws_loc/src/FAST_LIO_LOCALIZATION_HUMANOID/livox_ros_driver2/config nano MID360_config.json

配置文件,校正激光雷达在G1机器人上的安装姿态,确保点云数据坐标系正确

 

6.2. 修改IP地址配置

桥接机器人,检查本机IP地址:

hostname -I
  1. 将MID360_config.json配置文件中的IP地址:
"host_net_info": { "cmd_data_ip": "192.168.123.222", ... }

修改为你自己的IP地址,例如:

"host_net_info": { "cmd_data_ip": "192.168.123.111", ... }

七、环境配置和连接测试

7.1网线连接机器人配置
(也可以先跳过这一步进行下面的步骤,后面遇到问题再来修改)

在home中:

nano ~/.bashrc

在文件末尾添加:

# 有线连接配置 export ROS_MASTER_URI=http://localhost:11311 export ROS_HOSTNAME=localhost

注释掉其他ROS相关配置(如果有):

# export ROS_IP=192.168.111.128 # export ROS_IP=192.168.123.111 # export ROS_MASTER_URI=http://192.168.123.161:11311 # export ROS_IP=192.168.123.99

八、运行FAST-LIO系统

8.1. 测试激光雷达连接

# 测试激光雷达IP连通性 ping 192.168.123.120

8.2. 打开四个终端运行系统

终端1:启动ROS核心
roscore
终端2:启动建图系统
cd ~/ws_loc source devel/setup.bash roslaunch fast_lio mapping_mid360_g1.launch
终端3:启动雷达驱动
cd ~/ws_loc source devel/setup.bash roslaunch livox_ros_driver2 msg_MID360.launch
终端4:启动可视化界面
rviz

九、添加显示项

Read more

钉钉Webhook机器人如何发送群消息?

钉钉Webhook机器人如何发送群消息?

钉钉Webhook机器人如何发送群消息? 在钉钉中通过 Webhook 机器人发送消息的步骤如下: 一、创建自定义机器人 1. 进入群设置 * 打开钉钉群 → 点击右上角「设置」→「群管理」 2. 添加机器人 * 点击 [机器人] ->「添加机器人」→ 选择「自定义」 * 点击「添加」 3. 获取Webhook地址 * 创建完成后复制 Webhook URL 设置成功后如下: 二、发送消息示例 1. 基础文本消息 import json import requests url ="你的Webhook地址" headers ={"Content-Type":"application/json"} data

探索RISC-V处理器FPGA实现:高性能开源核心的硬件部署实践

探索RISC-V处理器FPGA实现:高性能开源核心的硬件部署实践 【免费下载链接】XiangShanOpen-source high-performance RISC-V processor 项目地址: https://gitcode.com/GitHub_Trending/xia/XiangShan 在嵌入式系统开发中,如何快速验证RISC-V架构的设计创新?如何在FPGA平台上实现高性能处理器原型?这些问题一直困扰着硬件工程师。本文将以香山(XiangShan)开源处理器为研究对象,通过实验方式探索基于FPGA的RISC-V部署与验证全流程,为开源处理器的硬件实现提供实践参考。 环境适配指南:从源码到FPGA原型的准备工作 开发环境配置 香山处理器采用Chisel语言(硬件构造语言)编写,需要先配置Scala开发环境。以下是基础环境准备步骤: # 克隆项目代码(适用场景:首次获取香山源码) git clone https://gitcode.com/GitHub_Trending/xia/XiangShan # 进入项目目录 cd XiangShan # 安装项目依赖

2025年FPGA就业形势如何?是否适合入行?(附最新薪资行情)

2025年FPGA就业形势如何?是否适合入行?(附最新薪资行情)

本文介绍了FPGA行业的发展趋势,强调了数字电路、硬件描述语言(HDL)设计、算法建模以及工程实践的重要性。同时还详细列出了不同高校硕士及城市间的FPGA薪资待遇,以及所需掌握的关键技能,如RTL设计、仿真验证、时序约束及硬件调试。对于FPGA的就业市场与学习路径,也进行了全面梳理。 虽然FPGA设计的门槛高、学习周期长,但相比传统数字IC设计,FPGA行业的入行路径更加灵活,就业方向也更广泛。而且在通信、军工、人工智能、工业控制等细分领域,FPGA人才依旧稀缺。 FPGA行业现状:门槛高,但机会更稳 FPGA(现场可编程门阵列)在硬件可重构计算领域中占据重要地位。无论是在5G通信基站、边缘AI推理加速、雷达图像处理还是自动驾驶原型验证中,FPGA都承担着“软硬件桥梁”的角色。 过去几年,随着AI芯片、RISC-V、国产EDA工具的推进,FPGA的行业应用从传统通信、军工,扩展到了AI计算、算法验证、工业检测、智慧城市等多个领域。 这也意味着FPGA岗位的综合技能要求更高,但同时就业韧性更强。 FPGA薪资待遇(2023年秋招数据) 不同高校硕士

Altera USB-Blaster驱动安装:FPGA下载基础完整指南

从零搞定Altera USB-Blaster驱动安装:FPGA下载不踩坑实战指南 你有没有遇到过这样的场景? 辛辛苦苦写完Verilog代码,综合布线全部通过,满心期待地打开Quartus Programmer准备烧录——结果却弹出“ No hardware available ”或“ Can’t access JTAG chain ”。 别急,这大概率不是你的设计出了问题,而是那个看似简单、实则暗藏玄机的 USB-Blaster 驱动没装好 。 在FPGA开发中,硬件连接的稳定性往往比逻辑设计更先决定成败。而作为Intel(原Altera)官方标配的编程工具, USB-Blaster 虽小,却是打通PC与FPGA之间通信链路的关键枢纽 。一旦驱动异常,再完美的设计也只能“望板兴叹”。 本文将带你彻底搞懂 USB-Blaster 的工作原理、驱动机制和安装全流程,重点解决 Windows 平台下常见的识别失败、签名阻止、反复掉线等顽疾,并提供可复用的调试脚本和工程实践建议,助你构建一个稳定可靠的 FPGA 下载环境。 USB-Blaster 到底是什么?