← 返回上页
学习路径 / HARDWARE

硬件组学习路径

硬件组面对的是一整套供电和信号链路:主控、驱动、电机、电池、传感器和通信接口必须在同一台车上稳定工作。学习时要从需求、器件和工况出发,不能只停留在“原理图能通过检查”。

内容来源 本页由 GKD 战队硬件组整理,合并自两份组内资料:《GKD硬件组介绍》(硬件组的工作与技能要求)与 《教程学习》(推荐教程清单);「四、学习路线」与「五、各阶段的产出建议」整理自 GKD 硬件组原始学习仓库。 原始文件:《GKD硬件组介绍》PDF 与《教程学习》DOCX · 学习仓库:GKD-RM-Lab/GKD_HardwareLearning ↗

一、硬件组的工作

对于 RoboMaster 机甲大师,硬件组主要负责所有机器人电气走线安排与管理、协调整车结构、分电板设计、超级电容开发、USB_TO_CAN && IMU && 集线器设计。

1.1 机器人电气走线安排与管理

负责全车电气系统的布线设计,包括底盘供电、CAN 通信网络、裁判系统等关键线路。具体包括:将 24V 主电源通过滑环从底盘引至云台,合理分配功率电至各电机与计算单元;规划底盘与云台之间的 CAN 总线拓扑结构,确保通信稳定性;完成裁判系统相关传感器与主控之间的信号连接。所有走线均需兼顾电磁兼容性、机械运动空间与后期维护便利性,实现整洁、可靠、抗干扰的布线布局。

1.2 协调整车结构

在机械组进行整车结构设计过程中,硬件组全程参与协作。我们根据电气布局需求,提出走线通道、元器件安装位置、接口布局等建议,并反馈可能影响布线或电气性能的结构问题。在整车装配阶段,硬件组负责确认电气与机械的配合精度,确保线缆不受挤压、弯折半径合理,提升整体集成度与可靠性。

1.3 分电板设计

由于机器人内部有许多电源线和信号线接口,我们需要设计一块电路板将电源线和信号线上挂载的设备联系起来,这块电路板就叫分电板。

图 1 步兵英雄通用分电板

1.4 USB_TO_CAN && IMU && 集线器设计

由于所有电机的主控——电脑用的是 USB 接口,电机的通讯接口是 CAN 总线,两者用的通信协议不同。故我们需要 “USB_TO_CAN” 设备,将一种协议变成另一种协议,以便电脑理解和控制。IMU(惯性测量单元)是一种用于测量物体运动状态的微型传感器,通常由三轴加速度计和三轴陀螺仪组成,它可以为电脑实时提供云台当前的角度位置,以供电脑完成闭环控制。集线器需要汇集整理 CAN 线和 24V 电源线。此块电路板需要集成上面说的三种功能。

图 2 USB_TO_CAN && IMU && 集线器

1.5 超级电容开发

在 RM 比赛当中,每个机器人会有一定的功率上限,如果超过功率上限就会扣除机器人的血量。因此在设计机器人时我们需要一个超级电容模块管理功率,做到在整车低功率时,储存电源流出来的多余的电能,在需要高功率的场景下,把之前储存的电能释放出来。

图 3 超级电容器模块(上下板)
图 4 超级电容器模块(整体)

二、需要掌握的技能

2.1 基础要求

  1. 掌握 C 语言。至少知道变量、函数、结构体这些基本概念,能看懂简单的代码。
  2. 熟悉 STM32 平台开发,能使用 STM32CubeMX 配置外设,掌握 HAL 库进行 GPIO、UART、CAN、I2C、SPI、ADC 等常用外设开发。
  3. 掌握各种电子元件(电容电阻不说了,三极管、MOS 管、运算放大器的使用)。
  4. 熟悉各种经典电路,比如滤波电路、运算放大器电路等等,并了解它们在信号处理当中的作用。
  5. 嘉立创 EDA 绘制 PCB(学会绘制原理图和 PCB,并掌握一定的布局布线技巧)。
  6. 熟练掌握焊接技术。能焊接电线,电路板贴片和片上飞线。

2.2 进阶

  1. 关于数控开关电源基础知识。
  2. 电源拓扑结构:Buck / Boost / Buck-Boost。
  3. 功率器件使用:MOS 管,栅极驱动,栅极电阻,死区控制。
  4. 能用示波器、万用表等工具查电路故障。
  5. 进阶 PCB 设计……

三、推荐教程

在此推荐一些硬件组相关教程,也可以在网上自行搜索教程进行学习。

3.1 学习 HAL 库开发

  • [STM32 HAL 库] 课程介绍,最佳教程,没有之一 —— b23.tv/4K7FhqY
  • 【小蜜蜂笔记】基于 STM32CubeMX 的嵌入式开发基础教程 —— bilibili

3.2 学习外设原理

  • 【STM32 入门教程 - 2023 版 细致讲解 中文字幕】 —— b23.tv/dur3hUb

3.3 学习用嘉立创绘制原理图和 PCB

  • 【教程】零基础入门 PCB 设计 - 国一学长带你学嘉立创 EDA 专业版 全程保姆级教学(大师篇已更新)—— b23.tv/mmfdRJC
  • 【教程】大师篇 - 零基础入门 PCB 设计 - 国一学长带你学嘉立创 EDA 专业版(已完结)—— b23.tv/krnfsWH

四、学习路线

硬件组的学习大致按下面的顺序推进:先把单片机用起来,再逐步过渡到自己画板、自己焊、自己调,最后进入电源、嵌入式系统这些更专门的方向。

4.1 入门 STM32 单片机

在开始学习之前,先了解 RM 的比赛方式和大致规则,知道为了参加比赛需要做些什么,并简单了解底盘、云台、悬挂、摩擦轮等机器人部分。

  • 了解单片机开发流程、常见名词和 STM32 的各类型号。
  • 根据教程学习环境配置、编程基础、单片机简单知识,以及原理图和 PCB 设计。

4.2 熟悉 STM32 开发

在了解单片机、外设、UART、中断、IO、原理图、引脚、编译和调试后,尝试只使用开发板、传感器和通信模块完成简单项目。

  • 使用 DHT11 进行温湿度采集。
  • 使用单片机内置 DSP 库实现矩阵乘法、求逆等操作。
  • 完成矩阵按键及其输入信号处理。

4.3 原理图、PCB 与焊接

不能一直满足于使用购买的模块和开发板,需要自己设计一块开发板,并在上面运行自己编写的程序。

  • 准备焊台、烙铁头、高温棉、焊锡丝、助焊油、镊子、万用表和直流电源。
  • 了解贴片与插件、焊盘、过孔、针脚、SMT、钢网等基本名词。
  • 具备焊接 0603 电阻电容和小封装芯片的基础能力。

4.4 控制理论与 PID

对 PID 的理解不能局限在比例加速响应、积分消除累计误差、微分缓解震荡。需要了解 Kp、Ki、Kd 如何整定,学会使用上位软件查看波形,并对串级控制的内环和外环有初步认识。

4.5 进阶嵌入式开发

学习路径会出现分叉:数字电源与功率拓扑、FPGA、Linux 操作系统与嵌入式、运动控制算法与信号处理。

  • 数字电源:MOS 管、三极管、运算放大器、DCDC、逆变器与 PCB 设计。
  • FPGA:数字信号处理、雷达信号、网络和 IC 验证。
  • Linux 嵌入式:在香橙派、树莓派、Jetson 等平台上运行更复杂的算法。
  • 运动控制与信号处理:运动学建模、PID、串级 PID、低通滤波和卡尔曼滤波。

4.6 高级开发与超级电容

进一步学习自动控制原理、现代控制理论、LQR、MPC、物理模型和 C++,并在运行 Linux 的设备上部署算法。超级电容作为相对独立的硬件模块,可参考 GKD 超级电容仓库。

五、各阶段的产出建议

建议按顺序推进,每一阶段都留下板卡、实验记录或测量数据,方便后续考核和面试时展示。

5.1 电路基础与读图

先补齐电压、电流、功率、模拟和数字信号、保护器件以及常见接口的基础知识。拿到一块现有板卡时,能沿着电源和信号路径读图,知道每个芯片的作用、输入输出范围和可能的故障点。

5.2 原理图与 PCB

学习器件选型、封装核对、布局布线、地平面、去耦和 DRC。建议从一个小型板卡开始,完成原理图、PCB、物料清单和打样检查,并在提交加工前自己复核连接器方向、安装孔和关键网络。

5.3 电源与通信

围绕机器人实际工况理解电池管理、电压转换和功率分配,估算启动、持续运行和堵转时的电流余量。同步掌握 CAN、串口等通信链路的终端、电平和布线要求,知道电源问题为什么会表现成通信或控制故障。

5.4 打样、焊接与调试

从焊接、万用表和示波器开始建立调试流程:上电前检查短路,上电后分级测量,再连接负载。出现故障时记录现象、复现条件和测量值,最后通过负载、振动和长时间运行测试验证修改确实有效。