MapFlow

PUBLIC LEARNING ROADMAP

基于 ESP32/Arduino 的物联网第一人称遥控记录小车 学习技能树

由 Skill Tree Engine 确定性生成的只读快照

24 个知识节点 · intermediate

发布者:aki114

知识目录

基础概念

电工与元件基础常识

理解电压电流电阻、使能引脚与PWM频率等概念,避免接线错误烧坏开发板

建议预留 40 分钟

学习目标

  • 理解电压/电流/电阻/地与使能引脚
  • 掌握简易万用表测量与安全接线

关键概念

  • 电压电流
  • 电源与共地
  • 使能引脚
  • PWM频率

为什么学习

  • 作为0基础爱好者,只需按安全规则接线即可,不必深推导林定律,会用万用表读电压就够

如何检验理解

  • 能正确识别正负极并规划3.3V/5V/电池供电分配
  • 能解释为何不能给GPIO接过高电压

补充知识

数制与数字逻辑基础(补充)

了解二进制/十六进制与位运算概念,理解为何引脚电平是HIGH/LOW布尔量

建议预留 30 分钟

学习目标

  • 认识位与电平布尔概念
  • 理解高低电平与布尔值映射

关键概念

  • 二进制
  • 高低电平
  • 布尔HIGH/LOW

为什么学习

  • 采用Arduino高层API,多数时候不需直接操作寄存器,只需认识概念辅助理解代码即可

如何检验理解

  • 能认出常见十六进制引脚号
  • 能说出digitalWrite HIGH/LOW对应的高低电平

核心技能

Arduino IDE搭建与固件烧录

安装IDE、安装ESP32开发板包、配置串口驱动并完成第一次上传,是后续一切实验的起点

建议预留 60 分钟

学习目标

  • 搭建Arduino IDE + ESP32环境
  • 掌握开发板选择与串口烧录验证

关键概念

  • Arduino IDE
  • ESP32开发板包
  • 串口驱动
  • 烧录/上传

为什么学习

  • 固件烧录与工具链为'required'等级需熟练操作,这是ADHD快速获得'运行成功'反馈的入口

如何检验理解

  • 独立完成从新建工程到开发板点亮LED的上传
  • 能在板子无法识别时排查端口与驱动

核心技能

Arduino Sketch结构与setup/loop

理解程序如何被分为只跑一次的setup与反复循环的loop两大块,是车控代码的主干

建议预留 30 分钟

学习目标

  • 理解setup/loop执行模型
  • 写出第一段可运行的Arduino代码

关键概念

  • setup()
  • loop()
  • 延迟delay

为什么学习

  • 小车的初始化(Setup外设)与循环控制(loop轮询传感器/指令)都要写在这两段里,必须会用

如何检验理解

  • 能写出让串口每秒打印一次的setup/loop小程序
  • 能解释setup与loop各自职责

核心技能

C/Arduino最小语法:变量、IO与条件

掌握int/pinMode/digitalWrite与if条件,是点亮LED与控制小车逻辑的最小语法集

建议预留 45 分钟

学习目标

  • 写变量与条件判断
  • 用数字IO函数控制外设

关键概念

  • int变量
  • pinMode/digitalWrite
  • if-else

为什么学习

  • 小车避障判断和指令分流都依赖条件与变量,按最小集入门即可满足目标

如何检验理解

  • 能用变量+if让程序依据输入改变输出
  • 能写出pinMode/digitalWrite控制LED的代码

核心技能

ESP32 Wi-Fi基础(Station/AP)

掌握ESP32连接路由器(Station)与自建热点(AP)两种模式,是无线遥控与视频传输的前提

建议预留 45 分钟

学习目标

  • 认识Station与AP模式
  • 实现Wi-Fi连接并打印本机IP

关键概念

  • Wi-Fi
  • Station模式
  • AP热点
  • IP获取

为什么学习

  • Wi-Fi通信为本目标的'required'熟练项,第一视角小车必须在手机上能看到画面与控制

如何检验理解

  • 能让ESP32连上Wi-Fi并打印获取的IP
  • 能切换AP模式并说出两者用途

核心技能

C语法进阶:循环、函数与数组

掌握for循环、自定义函数与数组,支撑多电机的封装、数据缓冲与Web回调逻辑

建议预留 45 分钟

学习目标

  • 定义与调用函数
  • 使用数组与for循环组织数据

关键概念

  • 自定义函数
  • for循环
  • 数组缓冲区

为什么学习

  • 把电机控制/摄像头逻辑封装成函数能大幅降低复杂度,符合分块与复用需要

如何检验理解

  • 能将控制一辆电机封装成一个函数便于多次调用
  • 能写循环填充JPEG接收缓冲区

核心技能

GPIO数字IO与面包板接线(LED/按键)

在面包板上用杜邦线连接LED与按键,编程控制点亮与读取,第一个即时可见的里程碑

建议预留 45 分钟

学习目标

  • 接线面包板电路
  • 用digitalWrite/digitalRead实现输入输出

关键概念

  • GPIO
  • 面包板
  • digitalRead
  • 上拉下拉

为什么学习

  • 数字IO是电机驱动板PWM开关与镜头补光的底层能力,做一次LED实测就能建立接线与代码的联系

如何检验理解

  • 能在面包板上完成LED亮灭控制并解释电流路径
  • 能接按键并通过digitalRead读取触发

核心技能

串口监视器调试与日志打印

用Serial.print打印状态与数值,出错时通过日志定位问题,是ADHD即时反馈与排错的核心习惯

建议预留 35 分钟

学习目标

  • 用Serial打印调试信息
  • 形成'打印-观察-修正'的迭代习惯

关键概念

  • Serial.begin
  • Serial.print/println
  • 日志定位

为什么学习

  • 调试排错为'required熟练'项,小车的每块小实验都需靠串口日志验证,能迁移到任何模块排错

如何检验理解

  • 能串口打印关键变量观察运行状态
  • 遇到不正常行为能加日志定位根因再修复

核心技能

PWM与模拟输出控制

用analogWrite/ESP32LEDC输出PWM信号,占空比决定电机强弱与舵机角度

建议预留 40 分钟

学习目标

  • 理解PWM占空比原理
  • 用PWM驱动调速执行器

关键概念

  • PWM
  • 占空比
  • LEDC/analogWrite
  • 频率

为什么学习

  • 电机调速与云台舵机都靠PWM占空比,掌握后即可通过一个信号平滑控制多个执行器

如何检验理解

  • 能改变占空比让LED亮度变化
  • 能配置ESP32 LEDC输出指定频率与占空比的PWM

补充知识

超声波测距与避障(可选增强)

接入HC-SR04超声波模块读取距离,让小车的自动避障或辅助记录更有意义

建议预留 45 分钟

学习目标

  • 接HC-SR04测距
  • 写简单避障判断

关键概念

  • 超声测距
  • Trig/Echo
  • 距离阈值判断

为什么学习

  • 传感器入门项,作为加分体验而非v1必需,降低时不会拖累主目标达成

如何检验理解

  • 能读取超声波距离并在串口打印厘米数
  • 能让小车接近障碍附近做规避动作

核心技能

ESP32 Web Server与Socket指令接收

建立Web Server监听浏览器或客户端发来的移动指令,桥接无线控制与车内逻辑

建议预留 60 分钟

学习目标

  • 创建ESP32 Web Server
  • 接收并解析控制指令

关键概念

  • WebServer
  • HTTP请求
  • URL解析
  • Socket

为什么学习

  • 远程遥控决策链路的关键节点,需能搭建server并按URL或POST解析出前进/后退指令

如何检验理解

  • 能开Web Server并在浏览器访问返回页面
  • 能从请求中解析出运动指令并串口打印

核心技能

ESP32-CAM摄像头初始化与JPEG采集

初始化OV2640、配置PSRAM与帧缓冲,抓取一帧JPEG并在浏览器显示

建议预留 60 分钟

学习目标

  • 初始化ESP32-CAM并配置PSRAM
  • 抓取并显示JPEG图像

关键概念

  • ESP32-CAM
  • OV2640
  • JPEG
  • PSRAM帧缓冲

为什么学习

  • 第一视角记录的核心,需理解框架缓冲/img_buf与PSRAM分配才能在分辨率和流畅度间取舍

如何检验理解

  • 能配置摄像头并成功采集并显示一帧画面
  • 在帧率不足时能调整分辨率/质量参数改善

核心技能

L298N电机驱动板接线与使能

连接L298N的IN/使能与电机、接好电源地线,理解输出与PWM输入脚的关系

建议预留 45 分钟

学习目标

  • 构建L298N电机驱动电路
  • 理解方向脚与使能脚分工

关键概念

  • L298N
  • IN/使能EN
  • 电机供电
  • 共地

为什么学习

  • 驱动板是电机的放大器,需按使能脚接PWM、IN脚定方向,接线能力必须可靠以保护板子与电机

如何检验理解

  • 能独立完成L298N与两路电机的接线
  • 能解释IN脚决定方向、使能PWM决定速度

核心技能

舵机控制(云台/转向)

用另一路PWM驱动舵机转到指定角度,用于摄像头云台俯仰或轮向前轮转向

建议预留 35 分钟

学习目标

  • 驱动舵机到任意角度
  • 理解脉宽与角度映射

关键概念

  • 舵机
  • 脉宽-角度映射
  • Servo库

为什么学习

  • 舵机是镜头云台转向的关键执行器,控制方法简单(角度映射)可快速上手并即时转动验证

如何检验理解

  • 能让舵机转到指定角度并保持
  • 能说出脉冲宽度与角度的对应并平滑转动

核心技能

Web控制界面HTML/JS(按钮/方向键)

编写简易HTML/JS页面,通过方向键或按钮向ESP32发送移动与云台命令完成远程遥控

建议预留 45 分钟

学习目标

  • 搭建接收并转发控制指令的网页
  • 把按钮事件映射为HTTP请求

关键概念

  • HTML按钮
  • JavaScript
  • fetch/WebSocket
  • 按键响应

为什么学习

  • 作为远程操控入口(recommended但熟练),在手机上点按即遥控,能理解前后端交互即可不断迭代界面

如何检验理解

  • 能在手机浏览器方向键/按钮控制小车移动
  • 能说明JS如何把按键转成发往ESP32的请求

核心技能

MJPEG实时视频流输出

在Web Server上以multipart格式连续发送JPEG帧,浏览器端形成流畅的MJPEG实时画面

建议预留 60 分钟

学习目标

  • 实现MJPEG连续帧输出
  • 理解multipart/x-mixed-replace机制

关键概念

  • MJPEG
  • multipart响应
  • 帧缓冲循环
  • 浏览器显示

为什么学习

  • 第一视角记录的核心输出,需理解帧缓冲与multipart流式响应机制,保证手机端实时画面

如何检验理解

  • 能在浏览器看到稳定流畅的实时视频流
  • 带宽不足时会合理降分辨率/帧率取舍

补充知识

Wi-Fi节能与低延迟优化(补充)

了解降采样率、关Wi-Fi休眠与减小延迟等措施,提升记录小车续航与跟手度

建议预留 40 分钟

学习目标

  • 认识低功耗与降延迟手段
  • 权衡性能与续航

关键概念

  • modem sleep
  • 帧率/质量平衡
  • 延迟优化

为什么学习

  • 属锦上添花的优化项,能识别可选方向即可,不在首版必需范围内以免破坏ADHD专注主目标

如何检验理解

  • 能说出两种降低功耗或延迟的可行做法
  • 能说明高帧率与电池续航的矛盾

核心技能

直流电机调速与前进后退

通过对双电机IN方向与PWM调速组合,实现小车前进、后退与变速

建议预留 45 分钟

学习目标

  • 组合方向位与PWM实现移动
  • 封装运动函数(moveForward等)

关键概念

  • 电机方向
  • PWM调速
  • 运动状态

为什么学习

  • 运动能力是本车核心,必须理解如何把逻辑方向翻译为实际轮转,后续才能在转弯时做差速

如何检验理解

  • 能编程使小车前进/后退并调节速度
  • 能解释IN与PWM组合如何决定运动

核心技能

摄像头云台随动与画面跟随

借助转向/云台舵机让镜头随遥控方向转动,在画面中保持前进可视角度(第一人称感)

建议预留 45 分钟

学习目标

  • 把云台与运动指令耦合
  • 校准镜头回中角度

关键概念

  • 云台联动
  • 角度映射
  • 舵机回中

为什么学习

  • 让'记录视角'跟随操作方向是目标特色,需把舵机角度与运动指令联动起来确定体验

如何检验理解

  • 按方向键时镜头能相应转动保持视野朝向
  • 能调整舵机回中与限位防止卡死

核心技能

差速转向、底盘组装与运动集成

通过左右轮差速实现转向,完成底盘、电池、驱动板、主控的整体装配并跑通运动

建议预留 60 分钟

学习目标

  • 实现差速转向
  • 装配底盘与电子件并排除连线问题

关键概念

  • 差速转向
  • 底盘接地
  • 运动组装
  • 整机通电

为什么学习

  • 运动层闭环的验收点,需把封装好的前后/左右函数组装成听话的底盘并处理连线干扰

如何检验理解

  • 能组装底盘并差速实现流畅左右转弯
  • 接线松动或方向反时能自行排查修正

核心技能

电源与电流规划(防烧板)

在电机大电流与主控之间划分供电、加共地并避免回流高压,保障连续记录不宕机不烧板

建议预留 45 分钟

学习目标

  • 设计可靠多路供电结构
  • 规避高压回流与电流尖峰

关键概念

  • 独立电源
  • 共地
  • 电池电压监测
  • 压降与散热

为什么学习

  • 电机瞬时电流远大于主控,错误规划会烧板或无线重启;必须形成可靠供电视图确保小车稳定运行

如何检验理解

  • 能为电机与主控/摄像头建立独立且共地的供电
  • 能解释电池电压监管与压降如何避免复位/烧毁

核心技能

分块状态机主控逻辑(防失控工程习惯)

把遥控传输、电机运动、视频流拆成独立小模块,用状态机组织每次最小可验证迭代

建议预留 60 分钟

学习目标

  • 拆分模块并逐一验证
  • 用版本基线做小步迭代
  • 设计简单状态机调度

关键概念

  • 模块解耦
  • 状态机
  • 基线回退
  • 小步迭代

为什么学习

  • 针对ADHD,把大任务切成可各自烧录验证的小函数并保留可用基线,能显著降低中途放弃风险

如何检验理解

  • 能分别验证电机、Wi-Fi、视频三个模块后再合并
  • 能回退到上一个可用版本继续改而不推倒重写

核心技能

里程碑:完整第一视角遥控记录小车v1

将底盘运动、无线遥控界面、MJPEG实时画面与镜头云台合体,通过手机端驾驶并记录第一视角视频

建议预留 90 分钟

学习目标

  • 完成运动+遥控+视频一体集成
  • 全链路排错交付稳定小车

关键概念

  • 系统工程
  • 集成调试
  • 稳定性
  • 全链路验证

为什么学习

  • 最终验收目标,需综合运用全部模块,能独立从头组装并解决集成问题,标志着整体能力成形

如何检验理解

  • 手机端能实时看到画面并顺畅遥控转向行进
  • 断开重连或场外异常时能定位并修复问题复用小车

前置关系与知识联系

结合互动地图查看具体关系类型,再选择下一步。