WPILib 项目 allwpilib

竞赛 1/5 🧩 软硬件结合 已发布
wpilibsuite 1280 Stars NOASSERTION BOM 完整度: 0/5 教程完整度: 0/5

项目简介

WPILibJ和WPILibC的官方仓库。


WPILib(全称WPILib项目)是FIRST机器人竞赛(FRC)和FIRST科技挑战赛(FTC)官方指定的核心软件开发库,由WPILib联盟维护。该项目旨在解决一个根本性问题:让参赛团队能够专注于编写比赛策略相关的上层应用代码,而无需深入处理底层硬件细节。它通过提供一套统一的、跨语言的编程接口,将机器人控制系统中复杂的硬件抽象层(HAL)、摄像头服务器(CameraServer)、命令框架(Commands v2/v3)、网络表格(NTCore)、数学库(WPIMath)等核心组件封装成易于使用的库。

标签

项目特点

提供硬件抽象层 (HAL),简化与机器人控制器的交互
支持 Java、C++ 和 Python 三种编程语言
包含命令框架 (Commands v2 和 v3),方便编写机器人控制逻辑
提供丰富的数学库 (WPIMath) 用于机器人运动学和控制
支持网络通信 (NTCore) 和摄像头服务器 (CameraServer)
开源项目,采用 BSD 3-clause 许可证
提供模拟器支持,可在桌面环境测试代码

技术规格

编程语言 Java, C++, Python
构建系统 Gradle (主要), CMake, Bazel
最低 JDK 版本 JDK 25
C++ 编译器 GCC 11+ (Linux), Visual Studio 2022 (Windows), Xcode 14+ (macOS)
目标平台 Systemcore (FRC 控制器), 桌面模拟
许可证 BSD 3-clause
文档 C++/Java/Python 在线文档

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
JDK 25 1 必需
C++ 编译器 1 根据平台选择
Gradle 1 自动通过 gradlew 使用
Systemcore 工具链 1 用于 Systemcore 开发
Raspberry Pi 工具链 1 可选

能力画像

⚪ 记忆与知识检索: 2/5
🔵 逻辑推演: 4/5
⚪ 表达与交流: 2/5
⚪ 感知与观察: 2/5
⚪ 数理与计算: 4/5
⚪ 动手与操作: 3/5
⚪ 狂热与坚持: 3/5
⚪ 创造与创新: 4/5

所需技能

🔧 **动手能力**:需要配置开发环境、安装工具链、处理跨平台编译问题 💻 **编程能力**:需要掌握 Java 或 C++ 编程,理解 Gradle 构建系统,熟悉机器人控制编程 ⚡ **电子电路**:需要了解 FRC 机器人硬件架构,理解 HAL 层与硬件的交互

适用场景

参加 FIRST Robotics Competition (FRC) 的团队开发机器人控制程序
参加 FIRST Tech Challenge (FTC) 的团队开发机器人控制程序
学习机器人编程和控制系统设计的教学场景
研究机器人硬件抽象层和实时控制系统的开发人员