Update AGENTS.md with Qwen3-VL screen analysis procedure, add MANUEL_COMPLET.md and vision-notes.md
This commit is contained in:
67
AGENTS.md
67
AGENTS.md
@@ -63,3 +63,70 @@ Quand tu analyses le pipeline complet (plusieurs nœuds), n'extrais que les
|
||||
lignes pertinentes (grep -n "name"/"jsCode" puis sed sur la plage), jamais
|
||||
le workflow JSON entier en mémoire Python. Traite un nœud, résume, libère.
|
||||
|
||||
## Qwen3-VL — Traitement obligatoire des captures d'ecran
|
||||
|
||||
Quand le modele actif est `qwen3-vl` et que l'utilisateur fournit une ou plusieurs captures d'ecran, images d'interface, screenshots, photos d'ecran ou pieces jointes image, tu DOIS systematiquement appliquer cette procedure avant toute autre analyse.
|
||||
|
||||
### Procedure obligatoire
|
||||
|
||||
Pour chaque image recue, produire une sortie structuree avec exactement les sections suivantes :
|
||||
|
||||
1. OCR brut
|
||||
- Recopier tout le texte visible dans l'image.
|
||||
- Conserver les chemins, noms de fichiers, commandes, messages d'erreur, URLs visibles, noms de modeles, ports, statuts et valeurs numeriques.
|
||||
- Ne pas corriger silencieusement le texte : si un caractere est incertain, l'indiquer avec `[incertain]`.
|
||||
|
||||
2. Elements UI visibles
|
||||
- Decrire les boutons, menus, onglets, listes, champs, cases cochees, selection active, panneaux ouverts et zones importantes.
|
||||
- Indiquer les elements selectionnes ou mis en evidence.
|
||||
|
||||
3. Erreurs, warnings et indices techniques
|
||||
- Lister tous les messages d'erreur, warnings, traces, logs, codes HTTP, statuts Docker/vLLM/OpenCode/MCP ou signaux visuels de probleme.
|
||||
- Si aucun probleme n'est visible, ecrire : `Aucune erreur visible`.
|
||||
|
||||
4. Etat actuel deduit
|
||||
- Resumer ce que l'image montre concretement.
|
||||
- Distinguer les faits visibles des hypotheses.
|
||||
- Ne jamais inventer d'IP, URL, token, nom d'outil MCP ou valeur absente de l'image.
|
||||
|
||||
5. Actions recommandees
|
||||
- Proposer les prochaines actions sous forme courte et operationnelle.
|
||||
- Si l'image concerne n8n, Home Assistant, Victron, grid ou EVCS, respecter les regles MCP du projet : ne pas proposer de curl/wget/appel HTTP direct.
|
||||
- Si une information manque, demander a l'utilisateur au lieu de deviner.
|
||||
|
||||
### Memoire partagee avec les autres modeles
|
||||
|
||||
Apres l'analyse, si la capture contient une information utile pour la suite de la session OpenCode, tu DOIS proposer ou creer un resume exploitable en texte dans :
|
||||
|
||||
`docs/vision-notes.md`
|
||||
|
||||
Format recommande :
|
||||
|
||||
```md
|
||||
# Vision notes
|
||||
Source
|
||||
Image(s) analysee(s) : <description courte>
|
||||
|
||||
# OCR brut
|
||||
...
|
||||
|
||||
# Éléments UI
|
||||
...
|
||||
|
||||
# Erreurs visibles
|
||||
...
|
||||
|
||||
# État actuel
|
||||
...
|
||||
|
||||
# Actions recommandées
|
||||
...
|
||||
|
||||
|
||||
Objectif : permettre a un autre modele texte, par exemple `minimax-m2.5`, de reutiliser l'information extraite sans avoir acces aux pixels de l'image.
|
||||
|
||||
### Regle critique
|
||||
|
||||
Ne considere jamais que les autres modeles ont acces a l'image originale. Toute information importante vue dans la capture doit etre explicitement convertie en texte dans la reponse ou dans `docs/vision-notes.md`.
|
||||
|
||||
Cette analyse doit précéder toute modification de workflow ou configuration.
|
||||
|
||||
420
docs/MANUEL_COMPLET.md
Normal file
420
docs/MANUEL_COMPLET.md
Normal file
@@ -0,0 +1,420 @@
|
||||
# Manuel Utilisateur - Système EVCS Solaire
|
||||
|
||||
> Document généré le 17/07/2026
|
||||
> Projet: n8n / Home Assistant / EVCS Solaire sans injection réseau
|
||||
|
||||
---
|
||||
|
||||
## 1. Architecture Globale
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────────┐
|
||||
│ DGX Spark (10.10.10.8) │
|
||||
│ ┌─────────────────┐ ┌─────────────────┐ │
|
||||
│ │ Qwen3.6-35B │ │ Qwen3-VL │ │
|
||||
│ │ (texte, code) │ │ (vision) │ │
|
||||
│ └────────┬────────┘ └────────┬────────┘ │
|
||||
└───────────┼──────────────────────┼──────────────────────────────┘
|
||||
│ │
|
||||
▼ ▼
|
||||
┌───────────────────────────────────────────────────────────────────┐
|
||||
│ opencode (minimax-m2.5) │
|
||||
│ ┌─────────────────────────────────────────────────────────────┐ │
|
||||
│ │ Skills: n8n-code-javascript, n8n-expression-syntax, │ │
|
||||
│ │ n8n-mcp-tools-expert, n8n-node-configuration, │ │
|
||||
│ │ n8n-validation-expert │ │
|
||||
│ └─────────────────────────────────────────────────────────────┘ │
|
||||
└───────────┬──────────────────────┬───────────────────────────────┘
|
||||
│ │
|
||||
▼ ▼
|
||||
┌──────────────────────┐ ┌──────────────────────────────────────┐
|
||||
│ n8n (cloud) │ │ Home Assistant (10.10.10.17:8123) │
|
||||
│ https://n8n.airtria.pro │ ┌──────────────────────────────────┐ │
|
||||
│ ┌────────────────┐ │ │ │ Dashboards YAML (17 fichiers) │ │
|
||||
│ │ 40 workflows │ │ │ │ - evcs_master.yaml │ │
|
||||
│ │ 13 actifs │ │ │ │ - evcs_mobile.yaml │ │
|
||||
│ └────────┬───────┘ │ │ │ - victron_master.yaml │ │
|
||||
│ │ │ │ │ - etc. │ │
|
||||
│ ▼ │ │ └──────────────────────────────────┘ │
|
||||
│ ┌────────────────┐ │ └──────────────────────────────────────┘
|
||||
│ │ MCP Servers │ │
|
||||
│ │ (6 outils) │ │
|
||||
│ └────────┬───────┘ │
|
||||
└───────────┼─────────┘
|
||||
│
|
||||
▼
|
||||
┌───────────────────────────────────────────────────────────────────┐
|
||||
│ Équipements physiques │
|
||||
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
|
||||
│ │ EVCS HQ229 │ │ Victron ESS │ │ MultiPlus │ │
|
||||
│ │ (borne VE) │ │ (batterie) │ │ (onduleur) │ │
|
||||
│ └─────────────┘ └─────────────┘ └─────────────┘ │
|
||||
└───────────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 2. Workflows n8n Actifs
|
||||
|
||||
### 2.1 Gestion Énergie (EVCS + Grid)
|
||||
|
||||
| ID | Nom | Fréquence | Fonction |
|
||||
|---|---|---|---|
|
||||
| `ATswvGfG4KJUls0K` | HA Snapshot EVCS Surplus Controller V2.6 | 30s | Pilotage borne EVCS, décision charge solaire/réseau |
|
||||
| `7iIlu7LLTW7TZA8o` | Victron - Battery / Grid Hysteresis Fix V1 | 1 min | Hystérésis réseau EDF (ON ≤20%, OFF ≥30%) |
|
||||
| `cTeeHy4ePiVeELLh` | Victron - Auto Charge Manager V1.2 | 30s | Limites DVCC batterie (MaxChargeCurrent/Voltage) |
|
||||
|
||||
### 2.2 Gestion Charges
|
||||
|
||||
| ID | Nom | Fréquence | Fonction |
|
||||
|---|---|---|---|
|
||||
| `2NhrfxuGm4pTUNs9` | SDB Climate & Surplus Manager V2.2 | 1 min | Pilotage chauffage SDB selon surplus |
|
||||
| `FtPVF7byhtu4o6Oh` | Victron - Garage Thermal Surplus Manager V2.2 | 1 min | Gestion garage thermique |
|
||||
| `A11aOb50cGtpJmvn` | Water Heater Advisor V2.3 | 10 min | Advisor ballon ECS |
|
||||
| `yX2j8m04e3pxaoQq` | Water Heater Advisor ECS 6 Nodes + Build + Execute | 10 min | Pilotage ballon ECS |
|
||||
| `YjiNCpEoVhPT8JMw` | Victron - Flexible Load Advisor V1 | 5 min | Charge flexible |
|
||||
|
||||
### 2.3 Advisor / Monitoring
|
||||
|
||||
| ID | Nom | Fréquence | Fonction |
|
||||
|---|---|---|---|
|
||||
| `U0nRmdS9Pa0qzpWm` | Victron - PV Surplus Advisor V1 | 15 min | Advisor surplus PV |
|
||||
|
||||
### 2.4 MCP (Machine Communication Protocol)
|
||||
|
||||
| ID | Nom | Fonction |
|
||||
|---|---|---|
|
||||
| `76hHlVYIgt1lEHyR` | MCP - ha.get_state | Lecture états HA |
|
||||
| `eeDmEICJ3ArjwpCt` | MCP - ha.set_helper | Écriture helpers HA |
|
||||
| `uGZAOJjKegRuRNyb` | MCP - grid-set-state | Pilotage ON/OFF réseau EDF |
|
||||
| `a92quWH4pokpIqdn` | MCP - victron-set-charge-limits | Limites courant/tension batterie |
|
||||
| `RVTMdsvR4i8wSc18` | MCP - pv.get_forecast | Prévisions Forecast.Solar |
|
||||
|
||||
---
|
||||
|
||||
## 3. Skills opencode
|
||||
|
||||
| Skill | Chemin | Fonction |
|
||||
|---|---|---|
|
||||
| n8n-code-javascript | `.opencode/skills/n8n-code-javascript/SKILL.md` | Analyse/patch code JS dans nodes n8n |
|
||||
| n8n-expression-syntax | `.opencode/skills/n8n-expression-syntax/SKILL.md` | Validation syntaxe {{ }} |
|
||||
| n8n-mcp-tools-expert | `.opencode/skills/n8n-mcp-tools-expert/SKILL.md` | Utilisation outils MCP |
|
||||
| n8n-node-configuration | `.opencode/skills/n8n-node-configuration/SKILL.md` | Configuration nœuds n8n |
|
||||
| n8n-validation-expert | `.opencode/skills/n8n-validation-expert/SKILL.md` | Interprétation erreurs validation |
|
||||
|
||||
---
|
||||
|
||||
## 4. MCP - Outils disponibles
|
||||
|
||||
### 4.1 Lecture
|
||||
|
||||
- **ha-get-state** : Lire un état Home Assistant
|
||||
- Input: `entity_id` (ex: `sensor.victron_battery_soc`)
|
||||
- Output: état + attributs
|
||||
|
||||
- **pv-get-forecast** : Prévisions solaires
|
||||
- Input: aucun
|
||||
- Output: `today_remaining_kwh`, `tomorrow_kwh`, `tomorrow_peak_time`
|
||||
|
||||
### 4.2 Écriture
|
||||
|
||||
- **ha-set-helper** : Écrire un helper HA
|
||||
- Input: `entity_id`, `value`
|
||||
|
||||
- **grid-set-state** : Piloter le réseau EDF
|
||||
- Input: `state` ('on' ou 'off')
|
||||
|
||||
- **victron-set-charge-limits** : Limites de charge
|
||||
- Input: `max_charge_current_a`, `max_charge_voltage_v`
|
||||
|
||||
### 4.3 Workflows n8n
|
||||
|
||||
- **n8n-mcp** : CRUD workflows
|
||||
- List workflows, get workflow, update workflow, activate/deactivate
|
||||
|
||||
---
|
||||
|
||||
## 5. Dashboards Home Assistant
|
||||
|
||||
### 5.1 Principaux
|
||||
|
||||
| Fichier | Titre | Description |
|
||||
|---|---|---|
|
||||
| `evcs_master.yaml` | EVCS Master | Dashboard principal borne VE |
|
||||
| `evcs_mobile.yaml` | EVCS Mobile | Version mobile |
|
||||
| `victron_master.yaml` | Victron Master | Dashboard principal système Victron |
|
||||
| `victron_mobile.yaml` | Victron Mobile | Version mobile |
|
||||
|
||||
### 5.2 Debug
|
||||
|
||||
| Fichier | Titre | Description |
|
||||
|---|---|---|
|
||||
| `big_victron_debug.yaml` | Victron Debug (complet) | Debug étendu |
|
||||
| `victron_debug.yaml` | Victron Debug | Debug standard |
|
||||
| `EVCS_SOLAR.yaml` | EVCS Solar | Vue solaire EVCS |
|
||||
|
||||
### 5.3 Pilotage
|
||||
|
||||
| Fichier | Titre | Description |
|
||||
|---|---|---|
|
||||
| `ECS_PILOTAGE.yaml` | ECS Pilotage | Pilotage ECS |
|
||||
| `ECS_PILOTAGE_PREMIUM.yaml` | ECS Pilotage Premium | Pilotage ECS avancé |
|
||||
| `GARAGE_PREMIUM_PILOTAGE.yaml` | Garage Premium Pilotage | Pilotage garage |
|
||||
| `SDB_PREMIUM_PILOTAGE.yaml` | SDB Premium Pilotage | Pilotage SDB |
|
||||
|
||||
### 5.4 Debug Premium
|
||||
|
||||
| Fichier | Titre | Description |
|
||||
|---|---|---|
|
||||
| `ECS_DEBUG_REGLAGES.yaml` | ECS Debug Réglages | Debug ECS |
|
||||
| `ECS_DEBUG_REGLAGES_PREMIUM.yaml` | ECS Debug Réglages Premium | Debug ECS avancé |
|
||||
| `GARAGE_DEBUG_PREMIUM.yaml` | Garage Debug Premium | Debug garage |
|
||||
| `SDB_DEBUG_PREMIUM.yaml` | SDB Debug Premium | Debug SDB |
|
||||
|
||||
---
|
||||
|
||||
## 6. Helpers Home Assistant (principaux)
|
||||
|
||||
### 6.1 Configuration EVCS
|
||||
|
||||
| Entity ID | Type | Description |
|
||||
|---|---|---|
|
||||
| `input_select.victron_evcs_strategy` | select | Stratégie (auto_solar_plus, force_grid_now, etc.) |
|
||||
| `input_number.victron_evcs_required_energy_kwh` | number | Énergie demandée (kWh) |
|
||||
| `input_boolean.victron_evcs_departure_priority_enabled` | boolean | Priorité départ |
|
||||
| `input_datetime.victron_evcs_departure_time` | datetime | Heure de départ |
|
||||
| `input_boolean.victron_evcs_allow_grid_hc_night` | boolean | Réseau HC nuit |
|
||||
| `input_boolean.victron_evcs_allow_grid_hc_midday` | boolean | Réseau HC midi |
|
||||
| `input_boolean.victron_evcs_surplus_auto_enabled` | boolean | Contrôleur surplus actif |
|
||||
|
||||
### 6.2 État système
|
||||
|
||||
| Entity ID | Type | Description |
|
||||
|---|---|---|
|
||||
| `input_text.victron_evcs_operating_mode` | text | Profil actif |
|
||||
| `input_text.victron_evcs_surplus_state` | text | État interne |
|
||||
| `input_text.victron_evcs_surplus_current_decision` | text | Décision logique |
|
||||
| `input_text.victron_evcs_source_mode` | text | Source autorisée (Solaire/Réseau) |
|
||||
| `input_text.victron_evcs_surplus_reason` | text | Raison courte |
|
||||
| `input_text.victron_evcs_last_block_reason` | text | Dernier blocage |
|
||||
|
||||
### 6.3 Paramètres seuils
|
||||
|
||||
| Entity ID | Type | Description | Valeur actuelle |
|
||||
|---|---|---|---|
|
||||
| `input_number.victron_evcs_soc_start_min` | number | Seuil SOC démarrage | 80% |
|
||||
| `input_number.victron_evcs_soc_stop_min` | number | Seuil SOC arrêt | 70% |
|
||||
| `input_number.victron_evcs_midday_soc_min` | number | Seuil SOC midi | 75% |
|
||||
| `input_number.victron_evcs_night_target_soc` | number | Cible SOC nuit | 70% |
|
||||
| `input_number.evcs_plafond_courant_edf_on` | number | Plafond EDF ON | 20A |
|
||||
| `input_number.victron_evcs_current_max_auto_a` | number | Plafond modes auto | 22A |
|
||||
|
||||
### 6.4 Hystérésis réseau
|
||||
|
||||
| Entity ID | Type | Description |
|
||||
|---|---|---|
|
||||
| `input_boolean.victron_grid_hysteresis_latch` | boolean | Latch hystérésis |
|
||||
| `input_boolean.victron_evcs_night_session_active` | boolean | Session nuit active |
|
||||
| `input_boolean.victron_evcs_night_grid_takeover_needed` | boolean | Takeover réseau nuit |
|
||||
|
||||
---
|
||||
|
||||
## 7. Capteurs clés (lecture seule)
|
||||
|
||||
| Entity ID | Description |
|
||||
|---|---|
|
||||
| `sensor.victron_battery_soc` | SOC batterie (%) |
|
||||
| `sensor.victron_battery_current` | Courant batterie (A) |
|
||||
| `sensor.victron_pv_power_system` | Puissance PV totale (W) |
|
||||
| `sensor.victron_consumption_power_l1` | Consommation maison (W) |
|
||||
| `sensor.victron_grid_power_l1` | Puissance réseau (W) |
|
||||
| `sensor.victron_evcs_current` | Courant EVCS réel (A) |
|
||||
| `sensor.victron_evcs_set_current` | Consigne lue borne (A) |
|
||||
| `sensor.victron_evcs_ac_power` | Puissance EVCS (W) |
|
||||
| `sensor.victron_evcs_charging_time` | Durée de charge |
|
||||
| `sensor.victron_evcs_statut_fr` | Statut FR borne |
|
||||
| `sensor.victron_evcs_mode_fr` | Mode FR borne |
|
||||
| `switch.edf_general_ok_switch` | Interrupteur réseau EDF |
|
||||
| `binary_sensor.victron_evcs_vehicle_connected` | Véhicule connecté |
|
||||
| `binary_sensor.victron_evcs_device_connected` | Borne détectée |
|
||||
|
||||
---
|
||||
|
||||
## 8. Scripts HA
|
||||
|
||||
| Script | Fonction |
|
||||
|---|---|
|
||||
| `script.evcs_boost_edf` | BOOST EDF 28A (plafonds 28A + force_grid_now) |
|
||||
| `script.evcs_boost_off` | Retour normal (plafonds 20/22 + auto_solar_plus) |
|
||||
| `script.edf_urgence_off` | EDF Urgence OFF (hystérésis OFF + latch OFF + stratégie stop) |
|
||||
| `script.edf_force_on` | EDF forcé ON |
|
||||
| `script.edf_rendre_la_main` | Rendre la main au système auto |
|
||||
|
||||
---
|
||||
|
||||
## 9. Stratégies de charge
|
||||
|
||||
| Stratégie | Description | SourceMode | Conditions |
|
||||
|---|---|---|---|---|
|
||||
| `auto_solar_plus` | Solaire uniquement + assistance batterie haute | solar_only / solar_potential | SOC ≥ 90% + dette nuageuse faible |
|
||||
| `auto_solar` | Solaire classique | solar_only | - |
|
||||
| `force_grid_now` | Préservation batterie (remonter à seuil) | grid_forced / grid_hc_allowed | Si SOC < 22% → remonter à 35% été / 50% mi-saison / 75% hiver |
|
||||
| `force_charge_now` | Charge immédiate (solution de secours manuelle) | solar_only si possible, grid_forced si SOC < 35% | À la discrétion du conducteur qui doit prendre sa voiture |
|
||||
| `stop` | Arrêt complet | - | - |
|
||||
|
||||
---
|
||||
|
||||
## 10. Profils temporels
|
||||
|
||||
| Profil | Horaire | Description |
|
||||
|---|---|---|
|
||||
| `morning_solar` | 07:30 - 11:00 | Fenêtre solaire matin |
|
||||
| `midday_hc_or_solar` | 12:24 - 14:24 | HC midi ou solaire |
|
||||
| `evening_high_soc` | 17:00 - 20:30 | Soir haute priorité SOC |
|
||||
| `night_hc` | 01:24 - 07:24 | Heures creuses nuit |
|
||||
| `outside_window` | Autres | Hors fenêtres → Mode probe (sonde) pour relancer le PV si besoin |
|
||||
|
||||
---
|
||||
|
||||
## 11. Logique de décision (DECISION_ENGINEV2)
|
||||
|
||||
### 11.1 Garde-fous (Safety)
|
||||
|
||||
- **commonSafetyStartOk** : Vérifications sécurité au démarrage
|
||||
- **commonSafetyHoldOk** : Vérifications sécurité au maintien
|
||||
- **mustStopHard** : Arrêt d'urgence (batterie basse, surcharge)
|
||||
|
||||
### 11.2 Conditions de démarrage
|
||||
|
||||
| Condition | Seuil | Description |
|
||||
|---|---|---|
|
||||
| `solarStartOk` | SOC ≥ profil + PV ≥ 1000W | Démarrage solaire |
|
||||
| `gridStartOk` | SOC ≤ 35% + réseau dispo | Démarrage réseau |
|
||||
| `batteryAssistSolarStartOk` | SOC ≥ 90% + dette nuageuse faible | Assistance batterie solaire |
|
||||
| `probeStartOk` | Mode probe actif | Sonde PV |
|
||||
|
||||
### 11.3 Step-up / Step-down
|
||||
|
||||
- **Step-up** : Augmente le courant si PV suffisant ou batterie en charge
|
||||
- **Step-down** : Diminue si batterie décharge trop ou dette nuageuse
|
||||
|
||||
### 11.4 Cloud Debt (Dette Nuageuse) & Probe
|
||||
|
||||
#### Problème
|
||||
Quand les batteries sont pleines (SOC > 90%) et que la maison consomme peu (< 1200W), le MPPT de l'onduleur Victron se bride à la consommation maison uniquement. Le PV visible reste bas tant que l'EVCS ne démarre pas.
|
||||
|
||||
#### Dette Nuageuse
|
||||
- **Définition** : La batterie se décharge pour alimenter la maison + VE sans production PV suffisante
|
||||
- **Seuil max** : 1.5 kWh
|
||||
- **Durée max** : 30 min
|
||||
- Cette dette doit être "remboursée" par du surplus PV ultérieur
|
||||
|
||||
#### Mode Probe (Sonde)
|
||||
- **Principe** : Lancer la borne à 10A pour "provoquer" une production PV qui va s'adapter en quelques secondes
|
||||
- **Courant probe** : 10A (augmenté de 6A à 10A)
|
||||
- **Durée probe** : 3 minutes
|
||||
- **Retry** : 45 minutes si échec
|
||||
- **Activation** : En dehors des fenêtres définies (`outside_window`) ou lors de passages nuageux
|
||||
|
||||
#### Bypass outside_window
|
||||
En mode `auto_solar_plus` ou `force_charge_now`, le profil `outside_window` ne bloque plus la charge solaire locale si :
|
||||
- SOC batterie ≥ 90%
|
||||
- Forecast solaire fort
|
||||
- Maison consommation faible
|
||||
|
||||
### 11.5 Logique Heure de départ (Night EVCS)
|
||||
|
||||
#### Objectif
|
||||
S'assurer que le véhicule est chargé avant l'heure de départ prévue.
|
||||
|
||||
#### Comportement
|
||||
|
||||
| Scénario | Action |
|
||||
|---|---|
|
||||
| Heure départ proche + batteries suffisantes | Charge solaire prioritaire |
|
||||
| Heure départ proche + batteries insuffisantes | grid_forced (HC) si disponible |
|
||||
| Heure départ proche + pas de HC | grid_forced (plein tarif) |
|
||||
|
||||
#### Paramètres
|
||||
- **batteryHardFloorPct** : Plancher dur batterie (ex: 22%)
|
||||
- **batteryMorningTargetPct** : Objectif SOC matin selon forecast
|
||||
- Forecast fort (> 15 kWh) : 40%
|
||||
- Forecast moyen (8-15 kWh) : 50%
|
||||
- Forecast faible (< 8 kWh) : 75%
|
||||
- **gridTakeoverTriggerPct** : Seuil de basculement réseau
|
||||
- **batteryRecoveryUrgent** : Si temps restant < temps de charge nécessaire
|
||||
|
||||
---
|
||||
|
||||
## 12. Configuration opencode.json
|
||||
|
||||
```json
|
||||
{
|
||||
"provider": {
|
||||
"openrama": {
|
||||
"models": {
|
||||
"minimax-m2.5": { "name": "minimax-m2.5" }
|
||||
}
|
||||
},
|
||||
"qwen-dgx-vl": {
|
||||
"models": {
|
||||
"qwen3-vl": { "attachment": true, "modalities": {"input": ["text","image"]} },
|
||||
"qwen3.6-35b": { "options": { "temperature": 0.15, "reasoningEffort": "none" } }
|
||||
}
|
||||
}
|
||||
},
|
||||
"mcp": {
|
||||
"n8n-mcp": { "type": "local", "command": ["npx", "-y", "n8n-mcp-server"] },
|
||||
"ha-get-state": { "type": "remote", "url": "https://n8n.airtria.pro/mcp/..." },
|
||||
"ha-set-helper": { "type": "remote", "url": "https://n8n.airtria.pro/mcp/..." },
|
||||
"grid-set-state": { "type": "remote", "url": "https://n8n.airtria.pro/mcp/grid-set-state/sse" },
|
||||
"victron-set-charge-limits": { "type": "remote", "url": "https://n8n.airtria.pro/mcp/..." },
|
||||
"pv-get-forecast": { "type": "remote", "url": "https://n8n.airtria.pro/mcp/..." }
|
||||
},
|
||||
"permission": {
|
||||
"bash": { "curl *": "deny", "wget *": "deny", "*": "ask" }
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 13. Méthode de travail
|
||||
|
||||
### 13.1 Lecture d'un workflow n8n
|
||||
|
||||
1. Utiliser `n8n-mcp_get_workflow` avec l'ID
|
||||
2. Le fichier est écrit dans `~/.local/share/opencode/tool-output/tool_*`
|
||||
3. **Attention** : Le fichier commence par "Retrieved workflow: <nom>" AVANT le JSON
|
||||
4. Extraction par nœud :
|
||||
```bash
|
||||
grep -n '"name": "NOM_DU_NOEUD"' <fichier>
|
||||
sed -n 'DEBUT,FINp' <fichier>
|
||||
```
|
||||
|
||||
### 13.2 Modification
|
||||
|
||||
1. **TOUJOURS** backup avant modification
|
||||
2. Une seule modification à la fois
|
||||
3. Vérifier avec dry-run
|
||||
4. Valider en production
|
||||
|
||||
### 13.3 Interdiction
|
||||
|
||||
- **JAMAIS** de curl/wget direct vers HA/n8n/Victron
|
||||
- **JAMAIS** d'IP/URL/token inventés
|
||||
- Utiliser les MCP uniquement
|
||||
|
||||
---
|
||||
|
||||
## 14. À compléter par l'utilisateur
|
||||
|
||||
- [ ] Tableau détaillé des fonctionnalités (entrées/sorties/conditions)
|
||||
- [ ] Documentation EDF Urgence (créé par FABLE)
|
||||
- [ ] Liste des incidents récurrents
|
||||
- [ ] Procédures de dépannage
|
||||
- [ ] Glossaire des termes techniques
|
||||
|
||||
---
|
||||
|
||||
*Document généré automatiquement le 17/07/2026*
|
||||
172
docs/vision-notes.md
Normal file
172
docs/vision-notes.md
Normal file
@@ -0,0 +1,172 @@
|
||||
# OCR brut
|
||||
|
||||
[Image 1]
|
||||
AIRTRIA / MR TALLAGRAND 3,1KW (2X5RECOM) LANNION
|
||||
Dernière mise à jour: OK 20:14
|
||||
Temps réel
|
||||
Temps: 24°C
|
||||
Charges CA 3615 W
|
||||
L1 3615 W 49.9 Hz
|
||||
Charguer VE 1256 W
|
||||
Statut charge
|
||||
Véhicule: Guest EV
|
||||
Temps de charge: 1h, 53m, 43s
|
||||
Mode: Manual
|
||||
Courant de charge: 6.0 A
|
||||
Énergie chargée: 4 kWh
|
||||
Énergie totale: 3266 kWh
|
||||
Décharge en cours: 78.0%
|
||||
Tension: 49.75 V
|
||||
Courant: -19.9 A
|
||||
Température: 25°C
|
||||
Chargeur PV: 2421 W
|
||||
AIRTRIA MPPT1 164 V 0.9 A 141 W
|
||||
V1 57.77 V 3.7 A 215 W
|
||||
V2 - - -
|
||||
MPPT 450/200 HQ2449YR9PT-Solar 1 257 V 1.6 A 409 W
|
||||
MPPT 450/200 HQ2449YR9PT-Solar 2 281 V 1.6 A 447 W
|
||||
MPPT 450/200 HQ2449YR9PT-Solar 3 331 V 1.4 A 456 W
|
||||
MPPT 450/200 HQ2449YR9PT-Solar 4 68.62 V 5.5 A 375 W
|
||||
AIRTRIA MP2 78.0% 49.60 V -77.1 A -3605 W Discharging
|
||||
|
||||
[Image 2]
|
||||
EVCS Master
|
||||
Vue borne / session / stratégie / énergie
|
||||
Charge EVCS active
|
||||
État borne
|
||||
Statut global
|
||||
EVCS: unavailable - Mode Manuell - 6.0 A
|
||||
Statut FR: Indisponible
|
||||
Mode FR: Manuell
|
||||
Statut brut: 2
|
||||
Mode brut: 0
|
||||
EVCS détecté: Connecté
|
||||
Branché
|
||||
Durée charge: 1h 54m
|
||||
Contrôleur surplus actif
|
||||
Session
|
||||
Courant / puissance / énergie
|
||||
Courant EVCS: 6.0 A
|
||||
Session en cours: 1234 W - 6.0 A - Consigne 6.0 A - 1h 54m
|
||||
Puissance EVCS: 1234 W
|
||||
Courant réel: 6.0 A
|
||||
Consigne lue: 6 A
|
||||
Durée charge: 1h 54m
|
||||
Énergie session: Inconnu
|
||||
Stratégie & décision
|
||||
Mode utilisateur: auto_solar_plus - Profil: evening_high_soc - Décision: hold - Source: Solaire
|
||||
Paramètres utilisateur
|
||||
Véhicule cible: Jeep
|
||||
Énergie demandée: 10.5 kWh
|
||||
Priorité départ: On
|
||||
Heure départ: 8:50
|
||||
|
||||
[Image 3]
|
||||
EVCS Master
|
||||
Énergie demandée: 10,5 kWh
|
||||
Priorité départ: On
|
||||
Heure départ: 8:50
|
||||
Stratégie EVCS: auto_solar_plus
|
||||
Réseau HC nuit: On
|
||||
Réseau HC midi: On
|
||||
Contrôleur surplus actif: On
|
||||
Décision contrôleur
|
||||
Profil actif: evening_high_soc
|
||||
État interne: hold_min_run
|
||||
Décision logique: hold
|
||||
Source autorisée: Solaire
|
||||
Raison courte: Maintien jusqu'au temps mini ON | VehicleDemandFilter déliv
|
||||
Dernier blocage: none
|
||||
Blocqué jusqu'à: 17/07/2026
|
||||
Contexte énergie
|
||||
Batterie / PV / réseau
|
||||
Contexte instantané: SOC 78.0% - PV 2758 W - Maison 3645 W - Grid 0 W
|
||||
SOC batterie: 78.0%
|
||||
Courant batterie: -22.70 A
|
||||
Puissance PV: 2758 W
|
||||
Charges maison: 3645 W
|
||||
Puissance réseau: 0 W
|
||||
Réseau EDF: Off
|
||||
Actions rapides
|
||||
Contrôle direct EVCS
|
||||
Charge: On
|
||||
Contrôleur surplus: Activé
|
||||
|
||||
[Image 4]
|
||||
EVCS Master
|
||||
ON
|
||||
Activé
|
||||
Véhicule: Branché
|
||||
Courant demandé: 6 A
|
||||
Commandes manuelles
|
||||
Start / Stop charge: On
|
||||
Courant demandé: 6 A
|
||||
Permission charge: On
|
||||
Latch contrôle: On
|
||||
Auto Start borne (diagnostic): Off
|
||||
BOOST EDF 28A
|
||||
Retour normal
|
||||
Plafonds courant EVCS
|
||||
Plafond EDF ON tous modes: 28 A
|
||||
Plafond modes auto: 28 A
|
||||
Diagnostic
|
||||
Identité / version / brut
|
||||
Produit: EV Charging Station
|
||||
Nom borne: EVCS-HQ229DNT7P
|
||||
Numéro de série: HQ229DNT7P
|
||||
Firmware: 13375
|
||||
Statut brut: 2
|
||||
Mode brut: 0
|
||||
Auto Start borne: Off
|
||||
Dernier start: 17/07/2026 19:54
|
||||
Dernier stop: 17/07/2026 19:30
|
||||
Dernier changement courant: 17/07/2026 19:54
|
||||
Début probe: 31/03/2026 0:00
|
||||
Début cloud deb: 16/07/2026 19:41
|
||||
Cloud deb: 0.49 kWh
|
||||
Signature: hold_min_runprofile=evening_high_socsource=solar_onlych
|
||||
|
||||
# Éléments UI
|
||||
- Charge EVCS active
|
||||
- Mode: Manual (mais stratégie configurée: auto_solar_plus)
|
||||
- Courant EVCS: 6.0 A
|
||||
- SOC batterie: 78.0%
|
||||
- Puissance PV: 2758 W
|
||||
- Réseau EDF: Off (autoconsommation sans injection)
|
||||
- Stratégie: auto_solar_plus
|
||||
- Profil actif: evening_high_soc
|
||||
- Contrôleur surplus: Activé
|
||||
|
||||
# Erreurs visibles
|
||||
- Mode Manual actif alors que stratégie auto_solar_plus est configurée
|
||||
- Statut FR: Indisponible (mode français non disponible)
|
||||
- EVCS: unavailable (même si charge active)
|
||||
- Grid 0 W - pas d'injection réseau (configuration recherchée)
|
||||
- Tension batterie 49.60V - proche de la tension de Floating
|
||||
|
||||
# État actuel
|
||||
- Session de charge en cours (1h 54m)
|
||||
- Courant de charge: 6.0 A (mode manuel)
|
||||
- SOC batterie: 78.0% (en décharge: -22.70A)
|
||||
- Puissance PV: 2758 W
|
||||
- Grid: 0 W (autoconsommation pure, pas d'injection)
|
||||
- Maison: 3645 W de consommation
|
||||
- Contrôleur surplus actif
|
||||
- Décision: hold (maintien du courant minimum)
|
||||
- Profil: evening_high_soc
|
||||
|
||||
# Actions recommandées
|
||||
- Vérifier si le passage en mode auto_solar_plus est souhaité (actuellement en Manual)
|
||||
- Le système est en autoconsommation sans injection - comportement normal avec Grid 0W
|
||||
- La batterie se décharge (-22.70A) pour alimenter la maison + VE
|
||||
- PV 2758W couvre partiellement la consommation maison (3645W) + charge VE (1234W)
|
||||
- Le courant de charge pourrait être augmenté si plus de PV disponible
|
||||
- Surveiller le SOC pour ne pas descendre sous le seuil critique
|
||||
|
||||
# Contexte HANDOFF.md
|
||||
Suite à la session de débogage du 17/07/2026:
|
||||
- 4 bugs critiques corrigés (typo DECISION_ENGINEV2, artefacts WINDOWS_SOURCEV2, session nuit stuck, EDF rebranché en journée)
|
||||
- Configuration actuelle: soc_start_min=80%, night_target_soc=70%, battery_discharge_soft_a=0A
|
||||
- Mode sonde activé (probe_enabled: ON)
|
||||
- Système fonctionnel avec delivery 99.9%
|
||||
- EDF OFF la journée, uniquement la nuit
|
||||
Reference in New Issue
Block a user