Files
robotmower_ha_v2/README.md
T
2026-04-15 06:39:57 +00:00

231 lines
4.2 KiB
Markdown

# Robot Mower HA V2
Komplet pakke til:
- **Robot**: ESP32-C6-DevKitC-1 + NEO-M8N + GY-521 (MPU6050) + GY-91 (MMC5883MA + BMP180)
- **Ladeboks**: ESP8266 + INA226 + 20x4 I2C LCD
- **Home Assistant**: REST-baserede entities + templates + Lovelace dashboard
## Indhold
- `robot_v2_esp32c6/robot_v2_esp32c6.ino`
- `dock_v2_esp8266/dock_v2_esp8266.ino`
- `home_assistant/home_assistant_package.yaml`
- `.gitignore`
---
## Funktioner
### Robotten
Sender til Home Assistant via REST:
- GPS latitude / longitude
- satellites
- hdop
- speed
- GPS fix
- motion detect
- heading fra kompas
- temperatur / tryk
- alder på sidste gode position
### Ladeboksen
Måler med INA226:
- spænding
- strøm
- effekt
Viser på 20x4:
- dato / tid
- spænding / strøm
- effekt / GPS-status
- HOME/AWAY + CHG/IDLE + RUN/STOP
Henter samtidig status fra Home Assistant:
- GPS status
- motion status
- home status
- charging status
---
## Hardware
### Robot
- ESP32-C6-DevKitC-1
- NEO-M8N GPS
- GY-521 MPU6050
- GY-91 med MMC5883MA + BMP180
- buck converter hvis robotspænding er højere end 5V/3.3V
### Ladeboks
- ESP8266 LoLin / D1 mini type
- INA226
- 0.01Ω 1% shunt, 2W eller 3W
- 20x4 I2C LCD
- buck converter 29V -> 5V
---
## Wiring
### Robot (ESP32-C6)
#### I2C
- GPIO6 -> SDA på MPU6050
- GPIO6 -> SDA på GY-91
- GPIO7 -> SCL på MPU6050
- GPIO7 -> SCL på GY-91
- 3V3 -> VCC på begge sensormoduler
- GND -> GND på begge sensormoduler
#### GPS UART
- GPIO17 (RX) <- GPS TX
- GPIO16 (TX) -> GPS RX
- 3V3/VCC -> GPS VCC (afhængig af modul)
- GND -> GPS GND
### Ladeboks (ESP8266)
#### I2C
- D2 / GPIO4 -> SDA på INA226
- D2 / GPIO4 -> SDA på 20x4 LCD
- D1 / GPIO5 -> SCL på INA226
- D1 / GPIO5 -> SCL på 20x4 LCD
#### Shunt / high-side måling
- PSU +29V -> SHUNT -> ud til basestation +
- PSU GND -> ud til basestation GND
#### INA226
- VIN+ -> før shunt
- VIN- -> efter shunt
- VCC -> 3.3V
- GND -> GND
#### Forsyning
- 29V -> buck input
- buck 5V -> ESP8266 5V/VIN
- buck GND -> ESP8266 GND
---
## Arduino biblioteker
### Robot
Installer:
- TinyGPSPlus
- Adafruit BMP085 Library
- MPU6050_tockn
### Ladeboks
Installer:
- LiquidCrystal_I2C
---
## Konfiguration der SKAL ændres
### I begge `.ino` filer
Søg efter disse linjer og ret dem:
```cpp
const char* WIFI_SSID = "DIT_WIFI";
const char* WIFI_PASSWORD = "DIT_PASS";
const char* HA_HOST = "192.168.2.10";
const uint16_t HA_PORT = 8123;
const char* HA_TOKEN = "DIN_LONG_LIVED_ACCESS_TOKEN";
```
### I Home Assistant YAML
Sæt **dine rigtige dock-koordinater** her:
```yaml
lat2 = 56.194000
lon2 = 10.682000
```
---
## Home Assistant opsætning
Kopiér `home_assistant/home_assistant_package.yaml` ind i din HA packages mappe
eller merge ind i din eksisterende config.
Eksempel:
```yaml
homeassistant:
packages: !include_dir_named packages
```
Læg så filen i:
```text
/config/packages/robot_mower_v2.yaml
```
Genstart Home Assistant.
---
## Første opstart
### 1. Start robotten
Tjek at disse dukker op i HA:
- `sensor.robot_gps_latitude`
- `sensor.robot_gps_longitude`
- `sensor.robot_gps_speed_kmh`
- `sensor.robot_gps_satellites`
- `sensor.robot_gps_hdop`
- `sensor.robot_heading_deg`
- `sensor.robot_temperature`
- `sensor.robot_pressure`
- `sensor.robot_gps_fix_raw`
- `sensor.robot_motion_raw`
### 2. Start ladeboksen
Tjek:
- `sensor.robot_dock_voltage`
- `sensor.robot_dock_current`
- `sensor.robot_dock_power`
- `binary_sensor.robot_dock_online`
### 3. Tjek templates
- `sensor.robot_gps_status`
- `sensor.robot_motion_status`
- `sensor.robot_home_status`
- `sensor.robot_charge_status`
- `sensor.robot_distance_to_dock`
---
## Bemærkninger
- Kompasmåling på robotter med motorer og strømførende ledninger kan være støjet.
- Hvis motion er for følsom, hæv `MOTION_THRESHOLD` i robot-koden.
- Hvis GPS fix er for stram, justér sat/hdop grænserne i robot-koden.
- LCD I2C-adressen er sat til `0x27`. Nogle displays bruger `0x3F`.
---
## Git forslag
```bash
git init
git add .
git commit -m "Initial robot mower HA V2 package"
```
---
## Filer
Denne pakke er lavet som en god **V2 startpakke**, men der kan stadig være behov for
små justeringer af:
- I2C adresser
- GPS baudrate
- MPU6050 følsomhed
- kompas-kalibrering
- LCD adresse