Add "UWB Follow-Me System"
parent
617520fe04
commit
8be57b11ac
63
UWB Follow-Me System.-.md
Normal file
63
UWB Follow-Me System.-.md
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
# UWB Follow-Me System
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
Precision person-following using Ultra-Wideband (UWB) two-way ranging. Enables SaltyLab to follow Tee during outdoor EUC rides at 20-30 km/h.
|
||||||
|
|
||||||
|
## Hardware
|
||||||
|
### MaUWB ESP32-S3 (DW3000)
|
||||||
|
- **Vendor:** Makerfabs
|
||||||
|
- **URL:** https://www.makerfabs.com/mauwb-esp32s3-uwb-module.html
|
||||||
|
- **Price:** $54.80 USD each
|
||||||
|
- **SKU:** MAUWBS3CA1
|
||||||
|
- **Qty needed:** 3 (1 tag + 2 anchors)
|
||||||
|
|
||||||
|
### Specs
|
||||||
|
| Parameter | Value |
|
||||||
|
|-----------|-------|
|
||||||
|
| UWB Chip | Qorvo DW3000 + PA |
|
||||||
|
| MCU | ESP32-S3 (WiFi + BLE 5.0) |
|
||||||
|
| Co-processor | STM32 (TWR scheduling firmware) |
|
||||||
|
| Range | 500m outdoor |
|
||||||
|
| Accuracy | ±10cm |
|
||||||
|
| Max anchors | 8 (auto-select nearest) |
|
||||||
|
| Max tags | 64 |
|
||||||
|
| Interface | AT commands via UART, USB |
|
||||||
|
| Display | 0.96\" OLED |
|
||||||
|
| Power | USB 5V, ~200-250mA active |
|
||||||
|
| Channels | UWB Ch5 (6.5 GHz) + Ch9 (8 GHz) |
|
||||||
|
| Apple U1 | Interoperable (per Qorvo) |
|
||||||
|
|
||||||
|
## System Layout
|
||||||
|
```
|
||||||
|
[Tag - on Tee] [Anchor A - left stem] [Anchor B - right stem]
|
||||||
|
MaUWB ESP32-S3 MaUWB ESP32-S3 MaUWB ESP32-S3
|
||||||
|
18650 battery USB → Orin Nano USB → Orin Nano
|
||||||
|
OLED shows range ~25cm apart for bearing estimation
|
||||||
|
```
|
||||||
|
|
||||||
|
## How It Works
|
||||||
|
1. **Tag** (Tee) and **Anchors** (bot) perform Two-Way Ranging (TWR) at ~10-100Hz
|
||||||
|
2. STM32 firmware handles time-slot scheduling (no signal conflicts)
|
||||||
|
3. ESP32-S3 reports range via AT commands over UART/USB
|
||||||
|
4. Two anchors spaced 25cm apart → **TDoA gives bearing angle**
|
||||||
|
5. ROS2 node publishes `/uwb/target` (distance + angle in base_link frame)
|
||||||
|
6. Fused with camera person detection for identity confirmation
|
||||||
|
|
||||||
|
## Tag Battery (12hr runtime)
|
||||||
|
- 3000mAh 18650 cell (e.g., Samsung 35E)
|
||||||
|
- TP4056 USB-C charger board
|
||||||
|
- Mini boost converter to 5V
|
||||||
|
- 3D-printed enclosure with belt clip
|
||||||
|
|
||||||
|
## Software Integration
|
||||||
|
- ROS2 package: `saltybot_uwb`
|
||||||
|
- Subscribes to anchor serial ports
|
||||||
|
- Publishes: `/uwb/target` (geometry_msgs/PoseStamped)
|
||||||
|
- Fused in `person_follower_node` as primary position source
|
||||||
|
- Camera serves as secondary (identity confirmation + obstacle avoidance)
|
||||||
|
|
||||||
|
## References
|
||||||
|
- Makerfabs GitHub: https://github.com/Makerfabs/Makerfabs-ESP32-UWB-DW3000
|
||||||
|
- MaUWB AT command docs: https://www.makerfabs.com/blog/post/mauwb-new-firmware-upgrade_v112
|
||||||
|
- Gitea issue: #57
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user