getfromcode

尚硅谷嵌入式之两轮平衡车项目

后端开发
课程简介

解决的核心问题:如何从底层驱动到算法落地构建一个稳定的自平衡系统 两轮平衡车项目是嵌入式开发中极具代表性的综合实战案例,它涵盖了控制理论、硬件驱动、实时系统调度以及系统集成等多个关键环节。这门课程聚焦于解决“如何让两个轮子的车在静态和动态下保持直立平衡”这一核心工程问题。初学者往往面临理论懂但代码写不出、或者代码能跑但系统不稳定难以调参的困境。本项目通过完…

已有 15 人浏览 发布 2026-03-01 更新 2026-09-30

解决的核心问题:如何从底层驱动到算法落地构建一个稳定的自平衡系统

两轮平衡车项目是嵌入式开发中极具代表性的综合实战案例,它涵盖了控制理论、硬件驱动、实时系统调度以及系统集成等多个关键环节。这门课程聚焦于解决“如何让两个轮子的车在静态和动态下保持直立平衡”这一核心工程问题。初学者往往面临理论懂但代码写不出、或者代码能跑但系统不稳定难以调参的困境。本项目通过完整的分层架构设计,将复杂的车控逻辑拆解为可复用、可测试的独立模块,帮助开发者建立从需求分析到软硬件联调的闭环工程能力。

适合人群与前置基础要求

本课程适合已经掌握 C 语言基础、了解单片机基本原理(如 GPIO、中断、定时器基本概念)并有初步动手经验的开发者。如果你熟悉 STM32 或其他主流 MCU 的基本外设使用,并能阅读简单的数据手册,将能更好地吸收课程内容。不需要深厚的控制理论背景,因为课程会从 PID 算法原理入手进行讲解;也不需要复杂的 PCB 设计能力,重点在于固件软件层面的实现与调优。

学习路径建议:从理论梳理到模块驱动,再到系统整合

建议学习顺序严格遵循课程目录的逻辑递进:首先深入理解 PID 算法及其在平衡控制中的数学意义,这是后续调试的参数基础;接着学习 FreeRTOS 的多任务调度机制,明确平衡计算、电机控制、传感器读取之间的时序关系;然后重点攻克动力模块和角度计算模块的驱动层代码,包括 TB6612 电机驱动、霍尔编码器读取及 MPU6050 姿态解算;最后在分层架构中完成各模块的集成与整体测试。整个过程强调“先理论、后驱动、再系统”的工程思维,确保每个子系统都能独立验证后再合并。

学完目标与资料配合方式

完成本门课程后,你将能够独立搭建基于 MCU 的两轮自平衡车控制系统,具备从零开始移植 RTOS、编写传感器驱动、实现闭环 PID 控制以及进行软硬件联调调试的能力。所涉及的模块化代码结构(如动力模块、传感模块、任务层)可直接迁移到其他机器人的开发中。建议边看课程视频边在开发板上复现代码,重点关注 PID 参数整定过程和 FreeRTOS 任务切换的实际效果,通过实际运行结果反向验证理论理解,从而真正内化为可落地的工程技能。

课程目录:

01.两轮平衡车项目简介
02.项目总体概述
03.硬件概述
04.PID算法的理解
05.PID算法总结梳理
06.分层架构&创建初始工程
07.移植FreeRTOS
08.动力模块_前置知识_电机驱动芯片09.动力模块_前置知识_霍尔编码器
10.动力模块_前置知识_定时器编码器模式
11.动力模块_驱动层_定时器pwm模式初始化
12.动力模块_硬件层_TB6612驱动
13.动力模块_测试输出控制电机
14.动力模块_驱动层_编码器模式配置
15.动力模块_配置打印到串口&测试编码器
16.角度计算_前置知识_MPU6050介绍
17.角度计算_IIC驱动&MPU6050驱动读写函数
18.角度计算_MPU6050初始化编码1
19.角度计算_MPU6050初始化编码2
20.角度计算_MPU6050读取传感器数据
21.角度计算_MPU6050测试读取六轴数据
22.角度计算_计算角度的方案分析
23.角度计算_计算角度编码&测试
24.显示模块_ADC驱动编码
25.显示模块_测试ADC采集电池电压
26.显示模块_OLED厂商驱动&SPI驱动移植
27.显示模块_修改OLED驱动&测试
28.显示模块_显示需要的数据
29.姿态控制_PID设计方案
30.姿态控制_PID算法编码实现
31.姿态控制_PID控制编码实现
32.任务调度_FreeRTOS任务配置
33.PID调参_直立环参数调试
34.PID调参_速度环参数调试
35.PID调参_转向环参数调试
36.无线遥控_蓝牙ECB01简介&移植USART2驱动
37.无线遥控_测试蓝牙AT指令
38.无线遥控_前后控制编码&测试
39.无线遥控_左右转向编码&测试
40.HAL方式_创建工程&配置驱动层
41.HAL方式_硬件接口层移植修改
42.HAL方式_硬件接口层_OLED修改&告警解决
43.HAL方式_中间层FreeRTOS修改
44.HAL方式_应用层移植修改
45.HAL方式_编码器计数方式修改&串口2接收修改
46.HAL方式_初始化硬件&测试小车功能
47.总结_PID参数细调思路
48.总结_项目串讲

课程目录

01.两轮平衡车项目简介
02.项目总体概述
03.硬件概述
04.PID算法的理解
05.PID算法总结梳理
06.分层架构&创建初始工程
07.移植FreeRTOS
08.动力模块_前置知识_电机驱动芯片
09.动力模块_前置知识_霍尔编码器
10.动力模块_前置知识_定时器编码器模式
11.动力模块_驱动层_定时器pwm模式初始化
12.动力模块_硬件层_TB6612驱动
13.动力模块_测试输出控制电机
14.动力模块_驱动层_编码器模式配置
15.动力模块_配置打印到串口&测试编码器
16.角度计算_前置知识_MPU6050介绍
17.角度计算_IIC驱动&MPU6050驱动读写函数
18.角度计算_MPU6050初始化编码1
19.角度计算_MPU6050初始化编码2
20.角度计算_MPU6050读取传感器数据
21.角度计算_MPU6050测试读取六轴数据
22.角度计算_计算角度的方案分析
23.角度计算_计算角度编码&测试
24.显示模块_ADC驱动编码
25.显示模块_测试ADC采集电池电压
26.显示模块_OLED厂商驱动&SPI驱动移植
27.显示模块_修改OLED驱动&测试
28.显示模块_显示需要的数据
29.姿态控制_PID设计方案
30.姿态控制_PID算法编码实现
31.姿态控制_PID控制编码实现
32.任务调度_FreeRTOS任务配置
33.PID调参_直立环参数调试
34.PID调参_速度环参数调试
35.PID调参_转向环参数调试
36.无线遥控_蓝牙ECB01简介&移植USART2驱动
37.无线遥控_测试蓝牙AT指令
38.无线遥控_前后控制编码&测试
39.无线遥控_左右转向编码&测试
40.HAL方式_创建工程&配置驱动层
41.HAL方式_硬件接口层移植修改
42.HAL方式_硬件接口层_OLED修改&告警解决
43.HAL方式_中间层FreeRTOS修改
44.HAL方式_应用层移植修改
45.HAL方式_编码器计数方式修改&串口2接收修改
46.HAL方式_初始化硬件&测试小车功能
47.总结_PID参数细调思路
48.总结_项目串讲
课程购买
课程价格
金币29
290金币限时优惠会员免费
销量:0
💎 开通会员每日免费下载,比单买更划算 →
支付成功后会自动显示下载资源云盘的链接!点击链接即可下载到本地。