RC上位机基础篇:从零到视觉抓取定位闭环
936 字
5 分钟
RC上位机基础篇:从零到视觉抓取定位闭环
写在前面
笔者写了RC上位机开发相关文档之后发现一个问题,此前的文章并不是零基础。所以对读者还是有一定门槛。因此我回过头来开始编写了这部从0开始的上位机教程。
这个基础篇的目标非常简单直接:
用最快的方式填补大一零基础到竞赛开发之间的鸿沟,带你亲手写出一个能用摄像头识别比赛道具、解算出三维空间坐标、并通过串口发给电控单片机用于机械臂抓取的完整定位Demo。
顺带一提,RC历年的题目基本上都可以抽象为抓物放物,所以我也是根据这个来写。
当你跑通这个Demo后,你就会真正推开机器人上位机的大门,并顺理成章地进入后续的 RC 上位机进阶架构篇。
学习路线全景
flowchart TD
subgraph Tool ["🛠️ 工具链与工作流"]
Ch1["Ch1 最重要的一课:Git 版本控制"] --> Ch2["Ch2 终端开荒:Linux 基础与 VSCode"]
end
subgraph Lang ["💻 编程内功基础"]
Ch3["Ch3 C 语言填坑:指针与内存模型"] --> Ch4["Ch4 现代 C++ 武装:引用/类/高频 STL"]
Ch4 --> Ch5["Ch5 工程构建:CMake 模板与断点调试"]
end
subgraph Vision ["👁️ 视觉与空间解算"]
Ch6["Ch6 见图识物:OpenCV 矩阵与 HSV 调参"] --> Ch7["Ch7 几何特征:形态学与外接矩形"]
Ch7 --> Ch8["Ch8 空间解算:相机标定与 solvePnP"]
end
subgraph Hardware ["🔌 软硬件串联"]
Ch9["Ch9 工业相机:SDK 取流与多线程防积压"] --> Ch10["Ch10 软硬件握手:Linux 串口通信与封包"]
Ch10 --> Ch11["Ch11 【结业实战】跑通你的第一个道具抓取定位 Demo"]
end
Ch2 --> Ch3
Ch5 --> Ch6
Ch8 --> Ch9
Ch11 ==>|"触发架构痛点\n晋升主力队员"| Advance["🚀 RC 上位机架构进阶篇 (rc)"]
style Ch1 fill:#2d6a4f,stroke:#40916c,color:white
style Ch2 fill:#2d6a4f,stroke:#40916c,color:white
style Ch3 fill:#1d3557,stroke:#457b9d,color:white
style Ch4 fill:#1d3557,stroke:#457b9d,color:white
style Ch5 fill:#1d3557,stroke:#457b9d,color:white
style Ch6 fill:#d00000,stroke:#e85d04,color:white
style Ch7 fill:#d00000,stroke:#e85d04,color:white
style Ch8 fill:#d00000,stroke:#e85d04,color:white
style Ch9 fill:#e85d04,stroke:#f48c06,color:white
style Ch10 fill:#e85d04,stroke:#f48c06,color:white
style Ch11 fill:#7209b7,stroke:#b5179e,color:white
style Advance fill:#3a0ca3,stroke:#4361ee,color:white
章节索引
第一阶段:工具链与开发环境
第二阶段:语言武装(从 C 到现代 C++)
第三阶段:OpenCV 视觉与空间几何解算
第四阶段:软硬件打通与综合考核
- Ch9 工业相机接入:驱动 SDK 封装与 std::thread 双缓冲防积压
- Ch10 软硬件握手:Linux 串口通信、结构体内存打包与校验
- Ch11 【结业考核】组装你的第一个道具抓取定位 Demo 与进阶之路
赛前装备与心态建议
- 比赛是团队性质的:一定要和你的队友多交流,不要这不知道不问瞎写那也不知道也瞎写。
- 看报错是程序员的第一本能:编译器报红不要直接闭眼问学长,复制红字最后一行去搜,或者直接喂给AI,99%的问题都在那一行提示里。
- 一定要动手跑代码:每一章末尾都有配套的小作业,必须自己亲自敲一遍跑通,光看文档是学不会写代码的。
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
RC上位机基础篇:从零到视觉抓取定位闭环
https://firefly-7a0.pages.dev/posts/rc_basic/ 相关文章 智能推荐
1
C 语言从头速通:从变量到指针与结构体
RC上位机入门 为零基础队员量身定制的 C 语言实战速通:数据类型与机器人常用整型、格式化输出调试、控制流与循环、函数封装、数组与二维像素直觉、指针门牌号模型与步长秘密、堆栈生命周期陷阱、结构体与串口通信字节对齐巨坑。
2
终端开荒:Ubuntu 基础操作与 VSCode 远程开发
RC上位机入门 专为 Windows 用户设计的 Linux 破冰指南:双系统与 WSL2 抉择、国内换源、高频终端命令、免密 SSH 与 VSCode Remote 远程丝滑编码。
3
从 2D 像素到 3D 现实:小孔成像模型、张氏标定与 solvePnP 解算
RC上位机入门 机器视觉核心分水岭:四大坐标系转换推导、小孔成像数学模型、内参矩阵与畸变系数物理意义、张氏棋盘格标定实操、多边形拟合获取透视角点、鲁棒极角排序法、相机坐标系欧拉角推导与 solvePnP 解算。
4
告别 C 语言:现代 C++ 引用、RAII 思想与高频 STL
RC上位机入门 从 C 语言平滑过渡到现代 C++:引用取代指针传参、类与 RAII 自动释放资源、vector/string/queue/pair 等视觉高频 STL 容器、auto 类型推导、范围 for 循环、Lambda 匿名函数与智能指针入门。
5
工程化构建:现代 CMakeLists 编写与 VSCode 单步断点调试
RC上位机入门 从手敲 g++ 到现代 CMake 模块化构建:CMakeLists.txt 基础语法、头文件与源文件分离、第三方库链接与查找、VS Code 一键编译与 GDB 单步断点调试。
随机文章 随机推荐