news 2026/8/19 19:49:32

当“想飞“的念头撞上ESP32:新手造开源无人机的一周实录

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
当“想飞“的念头撞上ESP32:新手造开源无人机的一周实录

当"想飞"的念头撞上ESP32:新手造开源无人机的一周实录

【免费下载链接】esp-droneMini Drone/Quadcopter Firmware for ESP32 and ESP32-S Series SoCs.项目地址: https://gitcode.com/GitHub_Trending/es/esp-drone

想拥有自己的无人机,又不甘心只当个"遥控器使用者"?这篇记录讲的是我和一架 ESP-Drone 开源无人机的故事——它跑在 ESP32 系列芯片上,Wi-Fi 连接、手机控制、自稳定飞行,电路图和固件代码全部公开,是新手无人机入门的一块绝佳跳板。

🛠️ 为什么要自己做,而不是直接买一架?

成品无人机越来越便宜,但买回来的那台机器,对你来说永远是个黑盒:它为什么能悬停?陀螺仪数据是怎么变成电机转速的?摔坏了只能返厂。自己做一架的意义,不在于省那点钱,而在于每一颗螺丝、每一行代码都在你手里。

便宜只是表面,真正的乐趣是"看懂"

这套方案把飞控部分直接复用了 Crazyflie 开源工程的代码,硬件上只需一块搭载 ESP32-S2 的主控板,配上电机、电池和桨叶,整套成本就能压到一顿多人聚餐的饭钱以下。更难得的是代码架构清晰、注释完整,即便是嵌入式新手,也能顺着stabilizer.ccontroller_pid.c这些文件,摸清一架四旋翼的内部脉络。

一台 ESP-Drone 能陪你走到哪一步

按能力划分,它给你留了三档"晋级路线":

  • 自稳定模式:自动保持机身水平,这是出厂就有的基础能力;
  • 定高模式:让飞机悬在固定高度,需要气压计扩展板;
  • 定点模式:锁定空间位置纹丝不动,需要光流和激光测距扩展板。

有意思的是,这三档能力恰好对应着你从"会飞"到"飞得准"的成长路径,每次升级都能顺带认识一种新传感器。

🧩 动手之前,先把"买什么"想明白

很多新手卡在第一步,不是不会焊,而是不知道该买什么。其实这套方案的选型逻辑特别直白:一块主控板打底,扩展板按需加。

一块主控板、四种扩展板,先想清楚再下单

模块核心元器件提供的能力接口
主控制板ESP32-S2-WROVER + MPU6050基础飞行、自稳定引出 I2C/SPI/GPIO
定点扩展板PMW3901 光流 + VL53L1X 测距室内定点悬停SPI + I2C
气压定高扩展板MS5611定高飞行I2C
罗盘扩展板HMC5883无头模式等高级玩法I2C

新手起步,这些配件就够了

如果你的目标只是"让第一架无人机转起来",一套主控板加电机、桨叶、电池足矣;等飞顺手了,再添一块定点扩展板,体验会瞬间上一个台阶。第一次组装,不推荐一口气配齐所有扩展板——先飞起来,比先飞得花哨重要得多。

✨ 组装那一晚:从零件摊了一桌,到电机第一次转起来

收到套件的那个晚上,我把所有零件在桌上摊开,对着原理图挨个认了一遍,然后发现组装比想象中轻松得多。

七步走完,核心只有"拆、装、焊、拧"

顺着 PCB 上的预切槽轻轻掰下机架,装好四只塑料支撑脚,接着把四个空心杯电机的引线焊到对应焊盘,按正反旋向装上螺旋桨,最后插上电池,一架飞机的骨架就齐了。整个过程一小时之内就能完成,唯一的"技术活"是焊接。

我们踩过的坑,你可以直接跳过

  • 烙铁在焊盘上停留别超过三秒,久了容易把铜箔烫起来;
  • 螺旋桨与电机上都有 CW/CCW 方向标记,装反了飞机只会在地上打转;
  • 电池插头有正负极方向,插反的那一下,主板上的元件可能就"毕业"了。

⚠️ 第一次通电前,建议先不装桨叶,推油门看电机是否按预期转动,确认无误再上桨。

🧠 烧录固件:给无人机装上"大脑"的那一步

组装只是让飞机"有了身体",真正让它"活过来"的是固件。这一步看着唬人,做起来其实就几条命令的事。

环境搭建,照着四条命令走就行

先安装 ESP-IDF v5.0 并配置好环境变量,然后拉取源码:

git clone https://gitcode.com/GitHub_Trending/es/esp-drone cd esp-drone idf.py menuconfig # 选择你的芯片型号,如 ESP32-S2 idf.py build # 编译固件

编译通过后,把板子连上电脑执行idf.py flash monitor,看到滚动日志的瞬间,你会第一次真切感受到"这块板子活了"。

烧录前记得先确认这两件事

一是芯片型号务必在 menuconfig 里选对,项目对 ESP32、ESP32-S2、ESP32-S3 都有对应配置;二是如果烧录时报端口权限错误,多半是 USB 串口设备权限没放开,把当前用户加进 dialout 组就能解决。

🚀 首飞时刻:当手机摇杆第一次有了回应

说实话,第一次推油门之前我做了整整五分钟心理建设。但整个起飞流程比想象中流畅得多。

从连上热点到离地,全程不到三分钟

给飞机上电,在手机 Wi-Fi 列表里找到ESP-DRONE_XXXX热点连上去(初始密码是 12345678),打开 ESP-Drone APP 点击连接,机身绿灯闪烁表示握手成功。这时候轻推左侧摇杆,飞机会先小幅加力,再缓缓离地。

手忙脚乱的第一飞,和它的补救办法

第一次飞,飞机不可避免地会飘:推油门没反应,先检查摇杆死区设置和连接状态;机身朝一个方向持续偏航,多半是传感器需要校准;电池电压掉到临界值,飞机会明显发软,这时候果断降落。真遇到突发状况,把两个摇杆同时拉到底,飞机就会立即切断动力——这是每个新手都应该先练熟的动作。

🎓 飞稳之后,它还能教给你什么?

等你能稳稳起降,这架开源无人机才真正开始"回本"。

用 cfclient 调一次 PID,才算摸到飞控的门

在电脑上装好 cfclient 上位机,通过 Wi-Fi 连上飞机,就能在参数面板里找到pid_attitude那一组数值。试着把 P 值调大一点,飞机会更"跟手",但调过头就会开始高频抖动;D 值则负责抑制震荡。改一次、飞一次、再改一次,亲手试出那个"甜点值",你对"控制"二字的理解会远超课本。

⚠️ 每次参数修改后需要重启飞机才生效,所以调参节奏是:改参数、重启、试飞、记录。

从定点悬停到多机编队,边界取决于想象力

加了光流扩展板后,飞机能像钉在空中一样定点悬停;planner.c里藏着路径规划的雏形,collision_avoidance.c是自动避障的起点,wifilink.c里的通信协议更是多机协同的钥匙。对初学者来说,这些是绝佳的进阶教材;对做 STEAM 教育的老师来说,这是一套现成的教具;对爱折腾的极客来说,3D 打印外壳、加装摄像头、做手势控制,都是顺手的事。

一台开源无人机能带给你的,从来不只是"飞起来"那一刻的快乐,而是你开始理解"它为什么会飞"之后的底气。下次再看到头顶悬停的无人机,你大概会想:这里面的每一行代码,我都能看懂。这大概就是自己动手造一架 ESP32 无人机,最让人上瘾的地方。

【免费下载链接】esp-droneMini Drone/Quadcopter Firmware for ESP32 and ESP32-S Series SoCs.项目地址: https://gitcode.com/GitHub_Trending/es/esp-drone

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/19 19:47:43

免费解锁三星耳机全部隐藏功能:Galaxy Buds Client 完整上手指南

免费解锁三星耳机全部隐藏功能:Galaxy Buds Client 完整上手指南 【免费下载链接】GalaxyBudsClient Unofficial Galaxy Buds Manager for Windows, macOS, Linux, and Android 项目地址: https://gitcode.com/gh_mirrors/ga/GalaxyBudsClient 你刚拆开一副 …

作者头像 李华
网站建设 2026/8/19 19:46:49

librealsense 全解析:从零上手 RealSense 深度相机的完整开发攻略

librealsense 全解析:从零上手 RealSense 深度相机的完整开发攻略 【免费下载链接】librealsense RealSense SDK 项目地址: https://gitcode.com/GitHub_Trending/li/librealsense 深度相机是机器人、AR、3D 扫描领域的"标配眼睛",而 l…

作者头像 李华