整理季后赛仓库说明并保留本地自动路径
This commit is contained in:
@@ -0,0 +1,103 @@
|
||||
# FRC 6494 · 2026 Regional Offseason
|
||||
|
||||
FRC 6494 的 2026 季后赛机器人 Java 项目。代码包含 Phoenix 6 Swerve 底盘、PathPlanner 自动程序、Limelight 定位,以及射击、进球、输送和灯带控制。
|
||||
|
||||
## 当前版本与分支
|
||||
|
||||
- 默认工作分支:`7.4`。
|
||||
- Gitea 地址:<https://git.6494.team/admin6494/FRC6494_2026Regional-offseason>。
|
||||
- 原 GitHub 仓库:<https://github.com/HarryWang163/FRC6494_2026Regional>。
|
||||
- `main`、`1`、`季后赛季后赛季后赛` 和 `手搓` 保留为原有历史分支。当前季后赛开发以 `7.4` 为准。
|
||||
- 本次整理保留原提交历史,并纳入本地已有的 `New Auto.auto` 与 `New Path.path`。
|
||||
|
||||
## 开发环境
|
||||
|
||||
| 项目 | 配置版本 |
|
||||
| --- | --- |
|
||||
| Java 源码与目标版本 | 17 |
|
||||
| WPILib / GradleRIO | 2026.2.1 |
|
||||
| Gradle Wrapper | 8.11 |
|
||||
| CTRE Phoenix 6 | 26.1.1 |
|
||||
| PathPlannerLib | 2026.1.2 |
|
||||
| 队号 | 6494 |
|
||||
|
||||
建议使用 WPILib 2026 开发环境。第三方依赖由 `vendordeps/` 中的 JSON 定义,首次构建需要取得 Gradle 与相关依赖。队号保存在 `.wpilib/wpilib_preferences.json`。
|
||||
|
||||
## 获取与构建
|
||||
|
||||
```powershell
|
||||
git clone --branch 7.4 https://git.6494.team/admin6494/FRC6494_2026Regional-offseason.git
|
||||
cd FRC6494_2026Regional-offseason
|
||||
.\gradlew.bat build
|
||||
```
|
||||
|
||||
Linux/macOS 构建命令为 `./gradlew build`。
|
||||
|
||||
在具备桌面仿真依赖的 WPILib 环境中,可以运行:
|
||||
|
||||
```powershell
|
||||
.\gradlew.bat simulateJava
|
||||
```
|
||||
|
||||
连接队伍机器人并确认队号、网络和机构参数后,可以通过 WPILib VS Code 的部署命令部署,或手动运行 `.\gradlew.bat deploy`。仿真不能替代真实传感器、机构动作和射击参数的实机验证。
|
||||
|
||||
## 代码结构
|
||||
|
||||
| 位置 | 用途 |
|
||||
| --- | --- |
|
||||
| `src/main/java/frc/robot/Robot.java` | 机器人模式切换与周期调度 |
|
||||
| `src/main/java/frc/robot/RobotContainer.java` | 子系统组装、手柄绑定、自动程序选择 |
|
||||
| `src/main/java/frc/robot/Constants.java` | CAN ID、机构参数、场地坐标和状态机阈值 |
|
||||
| `src/main/java/frc/robot/controls/` | 驾驶控制、操作员意图和自动命令注册 |
|
||||
| `src/main/java/frc/robot/subsystems/Superstructure.java` | 协调射击、进球、输送等机构的状态机 |
|
||||
| `src/main/java/frc/robot/subsystems/` | 底盘、机构、Limelight 和 LED 子系统 |
|
||||
| `src/main/java/frc/robot/generated/TunerConstants.java` | Phoenix Tuner X 底盘配置 |
|
||||
| `src/main/java/frc/robot/tuning/` | 仪表盘调参入口 |
|
||||
| `src/main/deploy/pathplanner/` | 自动程序、路径、导航网格和机器人配置 |
|
||||
| `vendordeps/` | 第三方库版本与依赖描述 |
|
||||
| `elastic-layout*.json` | Elastic 仪表盘布局 |
|
||||
| `tuner-project.json` | Phoenix Tuner 项目配置 |
|
||||
|
||||
自动程序通过 `Auto Chooser` 选择。PathPlanner NamedCommands 在 `controls/Autocommand.java` 中注册。`New Auto` 会引用 `New Path`;它们是已有的本地自动程序资源,使用前应检查路径与起始位姿。
|
||||
|
||||
## 当前手柄绑定
|
||||
|
||||
代码使用 0 号端口的单个 Xbox 手柄。以下绑定以 `RobotContainer.java` 为准:
|
||||
|
||||
| 输入 | 动作 |
|
||||
| --- | --- |
|
||||
| 左摇杆 | 底盘平移 |
|
||||
| 右摇杆 X | 底盘旋转输入 |
|
||||
| Back | 重置场地坐标驾驶角度 |
|
||||
| 右扳机 | 请求向 Hub 射击 |
|
||||
| 右肩键 | 启用驾驶加速模式 |
|
||||
| 左扳机 | 请求传球 |
|
||||
| 左肩键 | 请求进球 |
|
||||
| B | 请求反转排球 |
|
||||
| Y / A | 手动抬起 / 放下进球机构 |
|
||||
| 十字键左 / 右 | 飞轮目标速度偏移 -1 / +1 |
|
||||
| 十字键上 / 下 | 背板目标位置偏移 +100 / -100 |
|
||||
| Start | 运行背板复位命令 |
|
||||
|
||||
主要射击和进球按钮受 Teleop 模式门控。射击准备、喂球及超时回退逻辑位于 `Superstructure.java`,相关阈值位于 `Constants.Superstructure`,应结合实机检查这些行为。
|
||||
|
||||
## 仓库维护
|
||||
|
||||
源码、自动路径、硬件配置、Gradle Wrapper 和仪表盘布局应提交到 Git。`.gitignore` 已排除 `build/`、`.gradle/`、`bin/`、`ctre_sim/` 等生成文件和缓存。
|
||||
|
||||
新克隆的仓库可以通过以下命令提交更新:
|
||||
|
||||
```powershell
|
||||
git status
|
||||
git add <需要提交的文件>
|
||||
git commit -m "说明本次修改"
|
||||
git push origin 7.4
|
||||
```
|
||||
|
||||
原本连接 GitHub 的本地副本另加了名为 `gitea` 的远程地址,上传到 Gitea 时使用 `git push gitea 7.4`。公开仓库允许匿名浏览和克隆,推送需要具有写入权限的账号或访问令牌。
|
||||
|
||||
## 验证范围与许可
|
||||
|
||||
本次仓库整理检查了文件、Git 历史和上传内容,并验证远程仓库的分支与匿名克隆;未执行编译、桌面仿真或机器人部署。构建命令是开发使用说明,不代表本次已通过构建或实机测试。
|
||||
|
||||
保留项目中的 WPILib 声明与 `WPILib-License.md`。第三方库及外部代码应遵循各自原有的许可说明。
|
||||
Reference in New Issue
Block a user