基础概念
电工与元件基础常识
理解电压电流电阻、使能引脚与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 分钟
学习目标
- 完成运动+遥控+视频一体集成
- 全链路排错交付稳定小车
关键概念
- 系统工程
- 集成调试
- 稳定性
- 全链路验证
为什么学习
- 最终验收目标,需综合运用全部模块,能独立从头组装并解决集成问题,标志着整体能力成形
如何检验理解
- 手机端能实时看到画面并顺畅遥控转向行进
- 断开重连或场外异常时能定位并修复问题复用小车
前置关系与知识联系
- 差速转向、底盘组装与运动集成 → 电源与电流规划(防烧板)
- C/Arduino最小语法:变量、IO与条件 → C语法进阶:循环、函数与数组
- GPIO数字IO与面包板接线(LED/按键) → 超声波测距与避障(可选增强)
- ESP32-CAM摄像头初始化与JPEG采集 → MJPEG实时视频流输出
- PWM与模拟输出控制 → L298N电机驱动板接线与使能
- ESP32 Wi-Fi基础(Station/AP) → ESP32-CAM摄像头初始化与JPEG采集
- 分块状态机主控逻辑(防失控工程习惯) → 里程碑:完整第一视角遥控记录小车v1
- Arduino Sketch结构与setup/loop → C/Arduino最小语法:变量、IO与条件
- 电源与电流规划(防烧板) → 里程碑:完整第一视角遥控记录小车v1
- ESP32 Web Server与Socket指令接收 → Web控制界面HTML/JS(按钮/方向键)
- 超声波测距与避障(可选增强) → 里程碑:完整第一视角遥控记录小车v1
- C/Arduino最小语法:变量、IO与条件 → PWM与模拟输出控制
- Web控制界面HTML/JS(按钮/方向键) → 分块状态机主控逻辑(防失控工程习惯)
- 摄像头云台随动与画面跟随 → 里程碑:完整第一视角遥控记录小车v1
- Arduino Sketch结构与setup/loop → ESP32 Wi-Fi基础(Station/AP)
- PWM与模拟输出控制 → 舵机控制(云台/转向)
- C语法进阶:循环、函数与数组 → Web控制界面HTML/JS(按钮/方向键)
- C语法进阶:循环、函数与数组 → ESP32 Web Server与Socket指令接收
- 电工与元件基础常识 → GPIO数字IO与面包板接线(LED/按键)
- 舵机控制(云台/转向) → 摄像头云台随动与画面跟随
- MJPEG实时视频流输出 → 分块状态机主控逻辑(防失控工程习惯)
- 差速转向、底盘组装与运动集成 → 分块状态机主控逻辑(防失控工程习惯)
- C语法进阶:循环、函数与数组 → ESP32-CAM摄像头初始化与JPEG采集
- GPIO数字IO与面包板接线(LED/按键) → 串口监视器调试与日志打印
- 直流电机调速与前进后退 → 电源与电流规划(防烧板)
- 直流电机调速与前进后退 → 差速转向、底盘组装与运动集成
- C/Arduino最小语法:变量、IO与条件 → GPIO数字IO与面包板接线(LED/按键)
- 电工与元件基础常识 → L298N电机驱动板接线与使能
- ESP32 Web Server与Socket指令接收 → Wi-Fi节能与低延迟优化(补充)
- ESP32 Wi-Fi基础(Station/AP) → ESP32 Web Server与Socket指令接收
- Arduino IDE搭建与固件烧录 → Arduino Sketch结构与setup/loop
- C/Arduino最小语法:变量、IO与条件 → 舵机控制(云台/转向)
- L298N电机驱动板接线与使能 → 直流电机调速与前进后退
- C/Arduino最小语法:变量、IO与条件 → 超声波测距与避障(可选增强)
- GPIO数字IO与面包板接线(LED/按键) → PWM与模拟输出控制
- ESP32 Web Server与Socket指令接收 → MJPEG实时视频流输出
- MJPEG实时视频流输出 → 摄像头云台随动与画面跟随
结合互动地图查看具体关系类型,再选择下一步。