一:ROS2+gazebo+PX4环境搭建:环境搭建到无人机起飞

前言

写博客记录学习的过程。

由于博客是安装完环境后写的,因此实际可能会有一些出入,但是实际上也大差不差的。

环境搭建

前置环境

  • ROS2 humble
  • Gazebo Classic (11)

1.下载 PX4 源码

在你的 Home 目录下,用 Git 克隆 PX4 的代码仓库,并更新所有子模块。

git clone https://github.com/PX4/PX4-Autopilot.git --recursive

注意:由于这个源码中包含许多子模块,因此不建议到github主页下载zip再解压,这样做会缺失许多子模块。使用大陆的网络克隆起来会十分慢,因此强烈建议大家使用网络加速!

2.运行自动安装脚本

PX4 提供了自动化脚本,可以帮你安装编译仿真环境所需的所有依赖。

cd PX4-Autopilot bash ./Tools/setup/ubuntu.sh

由于我这里只用到仿真,并没有与阵势的硬件交互,所以我在运行自动安装脚本的时候,选择不安装固件/编译环境,还有一个原因是安装编译环境的时间太长了,大家可以自行选择。

cd PX4-Autopilot bash ./Tools/setup/ubuntu.sh --no-nuttx

3.编译并运行一个事例

PX4-Autopilot目录下

make px4_sitl gazebo-classic_iris

注意:第一次编译会有点慢,这是正常情况,请耐心等待

像这样弹出gazebo,并且gazebo中显示一个黑色的无人机,则成功了!

4.安装并配置 QGC(地面站)

QGroundControl (QGC) 就是你在地面监控和操控飞机的电脑软件 。安装前,需要先给 Ubuntu 系统做一点小配置,确保它能正常和“飞机”通信。

# 将你的用户添加到 dialout 组,以便访问 USB 设备 sudo usermod -aG dialout "$(id -un)" # 移除 ModemManager,它会干扰串口通信 sudo apt-get remove modemmanager -y # 安装 GStreamer 相关库,用于支持视频流 sudo apt install gstreamer1.0-plugins-bad gstreamer1.0-libav gstreamer1.0-gl -y sudo apt install libfuse2 -y sudo apt install libxcb-xinerama0 libxkbcommon-x11-0 libxcb-cursor-dev -y

https://docs.qgroundcontrol.com/master/zh/qgc-user-guide/getting_started/download_and_install.html中找到linux版本下载并将固件移到主目录下。

# 赋予 AppImage 文件执行权限 chmod +x ./QGroundControl-x86_64.AppImage

5.安装 Micro-XRCE-DDS-Agent(ROS2与PX4通信桥梁)

# 安装依赖 sudo apt install -y ros-humble-ros-base ros-humble-geometry-msgs ros-humble-sensor-msgs # 编译Micro-XRCE-DDS-Agent cd ~ git clone https://github.com/eProsima/Micro-XRCE-DDS-Agent.git cd Micro-XRCE-DDS-Agent mkdir build && cd build cmake .. make sudo make install sudo ldconfig /usr/local/lib/

注意:在编译Micro-XRCE-DDS-Agent时,对网络的要求很高,使用国内网络的朋友建议开启网络加速,即使开启了网络加速,也需要一定时间,此时需要耐心等待。

6.配置 PX4 的 ROS2 接口

cd ~/PX4-Autopilot # 你的PX4目录 # 安装Python依赖 pip3 install --user -U empy pyros-genmsg setuptools # mkdir -p ros2_ws/src cd ros2_ws/src # 克隆PX4消息包 git clone https://github.com/PX4/px4_msgs.git git clone https://github.com/PX4/px4_ros_com.git # 编译 cd .. colcon build

注意:在安装Python依赖时,可能会出现版本的问题,此时需要调整版本,反正我是用这个:

# 降级到稳定组合 pip3 install --user empy==3.3.4 setuptools==59.8.0

注意:每次创建PX4的工作空间,都要克隆PX4的消息包。

7.启动

# 终端1:启动Micro-XRCE-DDS-Agent(通信桥梁) MicroXRCEAgent udp4 -p 8888 # 终端2:启动Gazebo仿真 cd ~/PX4-Autopilot make px4_sitl gazebo-classic_iris # 或者其他机型:gazebo-classic_iris_depth_camera, gazebo-classic_iris_vision等 # 终端3:启动QGroundControl(可选,用于监控) ./QGroundControl-x86_64.AppImage # 终端4:进入工作空间再启动,无人机起飞! ros2 run px4_ros_com offboard_control

总结

本文章完成了ROS2 + gazebo classic + PX4的仿真环境搭建,对后续无人机仿真的学习打下了坚实的环境基础。

这篇文章是我第一次写的文章,有些不足的地方可及时指出,也请多多包容。

参考资料

PX4飞控官网:https://docs.px4.io/main/zh/

QCG地面站:https://qgroundcontrol.com/

Read more

Claude Code Security:AI猎杀代码漏洞时代正式开启

Claude Code Security:AI猎杀代码漏洞时代正式开启

文章目录 * 1、前言 * 2、快速上手:Claude Code Security 怎么用 * 2.1 访问入口与适用范围 * 2.2 两种使用方式 * 2.2.1 方式一:终端命令(所有付费用户) * 2.2.2 方式二:GitHub Actions 集成(自动化 PR 扫描) * 2.3 Dashboard 核心功能一览(企业版) * 3、背景:代码安全为何成了 AI 的下一个战场 * 3.1 软件漏洞:永无止境的噩梦 * 3.2 传统 SAST 工具的三大痛点

By Ne0inhk

[AI提效-30]- 2026年国内OPC社区全景地图

🏙️ 2026年国内OPC社区全景地图 一、📍 核心城市OPC生态社区 1. 上海:OPC发源地与政策高地 上海是国内OPC概念最成熟、政策支持力度最大的城市。 社区/园区名称地点特色亮点加入方式上海临港“超级个体288”基地浦东新区临港新片区零租金创业空间、算力补贴、AI工具免费用 关注“临港新片区”公众号 → 搜索“超级个体” → 在线申请 张江AI小镇 OPC孵化中心浦东新区张江高科 聚焦AI应用开发、 大模型生态对接 访问张江高科官网 → 创业服务 → 提交BP NVIDIA AI Tech Center (上海)徐汇区/浦东新区国际技术资源、GPU算力支持、开发者社群 注册NVIDIA开发者账号 → 申请加入本地社群 微软加速器 (上海)闵行区/徐汇区面向早期初创企业、含一人公司官网提交申请 → 筛选面试 💡 上海特别提示: 临港新片区对“超级个体”有专项认定,通过认定后可享受3年免租及税收返还。 2.

By Ne0inhk
你的 AI 助手不想“活在云端“:CoPaw 项目评估

你的 AI 助手不想“活在云端“:CoPaw 项目评估

当大多数 AI 助手产品都在争夺云端托管用户时,CoPaw 选择了一条相反的路:把 Agent 部署在你自己的机器上,接入你熟悉的钉钉、飞书和 QQ,用 Markdown 文件定义打工技能。 这篇文章写给那些想用 AI 做真正"私活"、又不想把数据和控制权交出去的工程师和架构师。 一、所有 AI 助手都有一个共同前提——你必须信任他们的云 打开市面上任何一款"个人 AI 助手"产品,你会发现它们有一个隐含的使用协议:你的对话在他们的服务器上处理,你的文件提交给他们的存储,你的 API Key 存在他们的数据库里。 这个前提对大多数工具类场景没什么问题。但当你需要 AI 助手帮你摘读邮件、整理本地文件、定时跑脚本、甚至控制桌面——这时"信任云端&

By Ne0inhk
打造你的家庭 AI 助手(四):单 OpenClaw 配置多 Agent、多 QQ、飞书机器人

打造你的家庭 AI 助手(四):单 OpenClaw 配置多 Agent、多 QQ、飞书机器人

打造你的家庭 AI 助手(四):单 OpenClaw 配置多 Agent、多 QQ、飞书机器人 引言 OpenClaw 是一个强大的智能体(Agent)编排框架,它通过统一的架构让开发者可以轻松管理多个聊天机器人,并接入不同的即时通讯平台。在实际应用中,我们往往需要同时运行多个 QQ 机器人(例如个人助手、工作助手),甚至希望同一个智能体既能处理 QQ 消息,也能响应飞书消息。 本文将详细介绍如何在一个 OpenClaw 实例中配置多通道(QQ、飞书)、多 Agent 以及多 QQ 机器人账号,实现资源的高效利用和灵活的消息路由。特别地,我们将阐明飞书通道与 QQ 通道在绑定规则上的差异,避免常见的配置错误。 核心概念回顾 * Agent(智能体):拥有独立人格、记忆和技能的对话单元。每个

By Ne0inhk