54 lines
1.2 KiB
Plaintext
54 lines
1.2 KiB
Plaintext
# {{PROJECT_NAME}} - Localization Template
|
|
|
|
Grid-based robot localization with sensor fusion and fault tolerance.
|
|
|
|
**Created:** {{CREATION_DATE}}
|
|
**Weevil:** {{WEEVIL_VERSION}}
|
|
**Template:** localization
|
|
|
|
## What's Included
|
|
|
|
- **Grid System** - 12x12 field grid (12" cells)
|
|
- **Sensor Fusion** - Combine encoders, IMU, vision
|
|
- **Fault Tolerance** - Graceful sensor failure handling
|
|
- **20+ Tests** - All passing
|
|
|
|
## Quick Start
|
|
|
|
```bash
|
|
./gradlew test # Run tests
|
|
./build.sh # Build
|
|
./deploy.sh # Deploy
|
|
```
|
|
|
|
## Architecture
|
|
|
|
Field divided into 144 cells (12x12 grid):
|
|
- Cell (0,0) = Red backstage
|
|
- Cell (11,11) = Blue backstage
|
|
- Cell (6,6) = Center
|
|
|
|
Sensor fusion priority:
|
|
1. Vision (AprilTags) - ±2" accuracy
|
|
2. IMU + Odometry - ±4" accuracy
|
|
3. Odometry only - ±12" accuracy
|
|
|
|
## Files
|
|
|
|
**Localization:**
|
|
- GridCell.java - Cell representation
|
|
- Pose2D.java - Position + heading
|
|
- FieldGrid.java - Coordinate system
|
|
- RobotLocalizer.java - Sensor fusion engine
|
|
|
|
**Sensors:**
|
|
- OdometryTracker.java - Dead reckoning
|
|
- ImuLocalizer.java - Heading tracking
|
|
- VisionLocalizer.java - AprilTag positioning
|
|
|
|
**Docs:**
|
|
- LOCALIZATION_GUIDE.md - How it works
|
|
- GRID_SYSTEM.md - Field coordinates
|
|
|
|
See docs/ for full documentation.
|