🤖 电控组新人成长指南¶
各位新队员,欢迎加入Robocon机器人战队电控组!这里将是你从代码萌新蜕变为调车高手的起点。下面这份「生存手册」会帮你快速上手,记得收藏常看~
🔌 什么是电控组?¶
我们是机器人的"造魂师"
电控组位于机械组、硬件组、视觉组的交汇点,是团队的技术枢纽:
我们赋予机器人"灵魂":通过电机气缸等控制系统赋予机械结构运动的能力
我们是跨组协作核心枢纽:
- 与机械组沟通机构实现方案(很重要!很重要!很重要!)
- 与硬件组协同电路调试 (至少万用表得会用吧) - 为视觉组提供控制接口(如果可以的话帮视觉调试代码更好)
简言之:我们让钢铁拥有智慧,让代码产生力量
🔍 你能在这里学到什么?¶
-
STM32核心技能 串口通信、TIM定时器、DMA传输等外设开发(入门中的入门,包教包会,学不会来找我)
-
传感器驾驭术 编码器、陀螺仪、激光测距等传感器应用实战应用
-
动力系统掌控 无刷电机驱动与精准控制
-
控制算法精髓 PID调参技巧 + 滤波算法实战(告别玄学调车)
-
智能导航体系 底盘运动分解、定位系统与路径规划
-
隐藏科技树 机器视觉/ROS等进阶方向等你探索
📅 任务路线图¶
阶段 | 使命担当 |
---|---|
备战前期 | 与机械组协同优化测试机构,参与方案迭代, 沟通沟通沟通!正常来说没有哪个天才机械( |
培训后期 | 接手往届战车调试,积累"踩坑"经验(前辈的代码,你懂的)同时开始成为今年新车调试的核心骨干,这一过程你们会享受到让机构一点点活过来的快感 |
决战时刻 | 比赛大后期阶段,此时机械方案已基本定型,你将主导新车控制系统调试,成为团队技术骨干,此时我们追求的目标就是如何让机构更快更稳定(其实机构稳定性远比极限的性能更重要,太多太多遗憾证明了这一点)的工作起来 |
特别挑战 | 前沿技术研发项目(适合喜欢深夜撸代码的硬核玩家),今年势必将是变革的一年,电控组将首次尝试接入主机ROS控制,欢迎技术大佬加入我们 |
注:调试车的痛苦程度≈拆乐高时找不到最后一块积木,但成功后的快乐翻倍!
以上仅是一个老登的无聊碎碎念接下来开始正儿八经的教学环节
1.💻 编程筑基指南¶
编程语言主要是C语言,没有学习过C语言的同学可以参考后面列出的C语言学习视频或自己找一些相关的资 料或网课进行学习,学习过c语言的同学可以参照我下面提到的内容进行回顾。如有C语言编程方面相关问 题也欢迎大家在招新群中向老队员们询问。请想要加入电控组的各位务必保证开始正式培训前拥有一定的 C语言编程能力,能基本使用以下提及的内容,以便各位能够更好地跟上培训内容。面试时会对于各位的C 语言编程水平进行一定的了解。 必点技能树:C语言
重要提醒:培训前请掌握基础C编程能力,否则可能体验"听天书"的快乐
1.1重点攻克区¶
结构体与指针:STM32库的基石 在stm32编程所用到的库中,结构体和指针被大量使用,熟练地掌握结构体与指针的相关内容能帮助你更快 地学习和了解stm32的库开发,如果你觉得自己在这方面有欠缺,可以去博客园或者CSDN或者bilibili等网站 查找相关的资料进行学习。
1.2额外补充内容¶
下面的东西也是常用的一些内容,比较简单。大家如果不熟悉或者感到陌生可以自己在博客园或者CSDN或 者bilibili等网站查找相关的资料进行学习
- 宏 - union与enum - 弱定义 - 简单位操作 - 指针函数与函数指针 - 静态变量 - 关键字volatile - 条件编译
1.3学习锦囊¶
C语言学习视频: [黑马程序员C语言教程]https://www.bilibili.com/video/BV1Xa4y1k7LU (P149前基础篇)
随查随用的语法字典: [菜鸟教程]https://www.runoob.com
2.⚙️ 开发环境搭建手册¶
首先大家需要了解,电控组的基本任务是通过单片机来编写控制代码,本战队的开发环境主要还是采用keil+CubeMX的方法,所以强烈建议大家在开始培训之前完成软件的安装,所有需要的软件均放在电控组新手大礼包里面了,大家不需要另行下载
2.1. STM32CubeMX 安装指南¶
版本要求:6.15.0(旧版本无法打开新工程~虽然有歪门邪道,但还是建议大家使用同一版本~)
安装步骤:¶
首先大家需了解CubeMX的运行需要Java环境,所以需要提前安装Java环境。这两款软件的安装包均放在电控组新手大礼包\软件安装包\STM32CubeMX文件夹下。
1. Java环境部署
- 64位系统:安装群文件 jre-8u311-windows-x64.exe
- CubeMX本体安装
- 运行群文件
SetupSTM32CubeMX-6.15.0-Win.exe
关键规则:安装路径必须全英文!
参考教程 [STM32CubeMX 下载及安装教程]https://blog.csdn.net/Brendon_Tan/article/details/107685563
2.2 Keil MDK 安装指南¶
版本要求:keil版本要求5.38及以上(太老的用不了无线烧录器)
keil的安装包放在电控组新手大礼包\软件安装包\Keil文件夹下。注意keil的安装过程较为复杂,请大家严格安装步骤,避免出现问题。
关键规则:安装路径必须全英文!
安装教程:
[keil保姆级安装教程]https://blog.csdn.net/qq_45784265/article/details/142603732 本教程所需要下载的东西都已经放在了电控组新手大礼包里面了,大家不需要重复下载.这百度网盘硬控了我6个小时
2.3. 其它¶
工具 | 用途 式 |
---|---|
串口助手 | 读取串口数据 |
Jlink驱动 | 识别Jlink烧录器必要的驱动 |
STLink驱动 | 识别STLink烧录器必要的驱动 |
这些装起来比较简单,大家点一点就ok啦
📚 3.进阶学习路径¶
在我们的正式培训开始之前,如果你有兴趣自己开始学习,可以参考下面的两个视频教程,也可自己寻找资 料进行学习。
推荐视频教程¶
[STM32 HAL库实战]https://www.bilibili.com/video/BV12v4y1y7uV/?spm_id_from=333.788&vd_source=6d854628fbff23f51d86952fbd58ece0
注意,第二个教学视频使用的软件是cubeide,与我们使用的keil+CubeMX有些许不同,但代码部分是一模一样的,大家可放心学习。
除此之外,大家还可以在B站上找一些其它学校电控组的教学视频提前学习