Skip to main content

Optimisation de la production

J'ai donc en production PV : 
- Une installation existante "historique" Qcells 
- Une installation Zendure SolarFlow 800 (Toit Veranda)
- Une installation Zendure SolarFlow 800 + AB2000 (Abri bois)

QCells suit la consommation de la maison via un compteur entre mon disjoncteur abonné et mon tableau.

Si ma production PV est supérieur à ce que consomme ma maison, le surplus est stocké dans sa batterie
Si ma production PV est plus faible que ce que consomme ma maison, l'onduleur QCells va chercher à compenser en déchargeant sa batterie.

Autre chose, le système QCells se charge uniquement avec ses PV !
Il n'est pas capable de se charger depuis l'EDF...

Donc pour conclure, je ne peux pas piloter l'installation QCells... mais je peux l'influencer ! Comment ?

Mes kits Zendure produisent et injectent directement dans le circuit de la maison.
L'onduleur QCells voit donc une consommation plus faible de la maison et donc il va décider d'injecter moins de courant dans la maison en provenance de ses panneaux.
Il injectera la quantité nécessaire, le reste sera stocké dans sa batterie !

OK, la première étape est fonctionnelle nativement !

C'est bien jolie ca mais si je produis plus que ce que je consomme?

Explication :
PV QCells : 1000W de production
PV Zendure Veranda : 500W de production
Consommation maison : 600W

Le courant étant très faignant il va au plus proche !

Zendure couvrira 500W des 600W de la maison et Qcells couvrira les 100W restant, le reste 900W ira dans sa batterie.
Ca c'est facile.

Maintenant ajoutons un second kit Zendure

PV QCells : 1000W de production
PV Zendure Veranda : 500W de production
PV Zendure Abri Bois : 500W de production
Consommation maison : 600W

Les PV Zendure produisent donc 1000W et couvre la consommation de la maison (600W), 400W sont donc en trop !
Les PV Qcells produisent 1000W et le besoin de la maison étant deja couvert, il stocke tout dans sa batterie.

Nous reste donc 400W en trop !

Il faut donc trouver un moyen de forcer le stockage de ce surplus dans la batterie du kit Zendure avec l'AB2000.

C'est la qu'Home Assistant rentre en jeu !

Je vais donc vérifier toutes les 30sec la consommation de la maison et ajuster l'injection dans la maison du Kit Zendure avec sa batterie.
Explication : 
Si j'injecte du courant vers EDF (surproduction) alors je baisse la valeur qu'envoie le kit Zendure de 50W.

alias: Ajustement Zendure à la baisse
description: ""
triggers:
  - trigger: time_pattern
    seconds: /30
conditions:
  - condition: state
    entity_id: sensor.linky_current_price
    state:
      - HEURE PLEINE
  - condition: numeric_state
    entity_id: sensor.qcells_consommation_reseau
    below: -90
actions:
  - data:
      value: >
        {{ [ (states('sensor.sol_bois_output_home_power') | float - 50), 0 ] |
        max }}
    action: number.set_value
    target:
      entity_id: number.sol_bois_output_limit
mode: single

Et inversement si je consomme trop d'EDF (plus de 300W), j'ajuste l'envoi du kit Zendure vers la maison :


alias: Ajustement Zendure a la hausse
description: ""
triggers:
  - trigger: time_pattern
    seconds: /30
conditions:
  - condition: or
    conditions: []
    enabled: false
  - condition: and
    conditions:
      - condition: state
        entity_id: sensor.linky_current_price
        state:
          - HEURE PLEINE
      - condition: or
        conditions:
          - condition: numeric_state
            entity_id: sensor.qcells_inverter_production_2
            above: 100
          - condition: state
            entity_id: sensor.qcells_etat
            state:
              - Standby
  - condition: and
    conditions:
      - condition: state
        entity_id: sensor.linky_current_price
        state:
          - HEURE PLEINE
      - condition: or
        conditions:
          - condition: numeric_state
            entity_id: sensor.qcells_consommation_reseau
            above: 300
          - condition: numeric_state
            entity_id: sensor.qcells_consommation_reseau
            below: 0
            enabled: false
actions:
  - data:
      value: >
        {{ [ (states('sensor.sol_bois_output_home_power') | float + 50), 0 ] |
        max }}
    action: number.set_value
    target:
      entity_id: number.sol_bois_output_limit
mode: single

Alors pourquoi ce seuil de 300W sur l'ajustement à la hausse ?

QCells étant directement réglé sur la consommation EDF via son compteur, il va s'adapter tout seul pour compenser la demande.
Si cela ne suffit pas, Zendure prendra le relais avec Home Assistant.

Maintenant, comme j'ai prevu de charger ma batterie en Heure Creuse, je vais bloqué la décharge de la batterie Zendure lors que je vais passer des Heures Pleines aux Heures Creuses.

Et oui, si la batterie Zendure est à 50%, il serait dommage de continuer de la decharger en heures creuses pour la recharger ensuite...

Pour cela on fait l'automatisation suivante quand on passe des HP au HC !

alias: Zendure - Arret décharge en Heure Creuse
description: ""
triggers:
  - trigger: state
    entity_id:
      - sensor.linky_current_price
    from:
      - HEURE PLEINE
      - HEURE CREUSE
conditions:
  - type: is_battery_level
    condition: device
    device_id: 418e6ac1bef4a12c0d749944774359f1
    entity_id: 541529170ee1baaf8d9c14d5ea8269dc
    domain: sensor
    above: 10
actions:
  - device_id: 70a4513924f81e4d371fa317f91a2c54
    domain: number
    entity_id: d7663f5b3008dc8ca9a9734a89016bd8
    type: set_value
    value: 0
mode: single

Enfin on va également faire en sorte de charger la batterie Zendure en heure creuse pour restituer en heure pleine !

Ici dans le Vaucluse (Villelaure) les HC sont de 21h50 à 4h50.

alias: Zendure - Activer Charge si HCreuse et Qcells vide
description: >
  Change le mode de l'onduleur en 'Input mode' uniquement si tarif HC et Qcells
  en Standby
triggers:
  - trigger: time_pattern
    minutes: /5
conditions:
  - condition: and
    conditions:
      - condition: time
        after: "00:00:00"
        before: "04:45:00"
      - condition: state
        entity_id: sensor.linky_current_price
        state: HEURE CREUSE
      - condition: state
        entity_id: sensor.qcells_etat
        state: Standby
actions:
  - data:
      option: input
    action: select.select_option
    target:
      entity_id: select.sol_bois_ac_mode
  - device_id: 418e6ac1bef4a12c0d749944774359f1
    domain: number
    entity_id: 202a1b0adf36466ceca985036295d359
    type: set_value
    value: 0
  - device_id: 418e6ac1bef4a12c0d749944774359f1
    domain: number
    entity_id: 4cdc3d29b80f3ddd84c330bfd8805f51
    type: set_value
    value: 600
mode: single

Donc avec Zendure, je viens fixer la charge à 600W entre 00h et 04h45.
Cela permet de passer la batterie de 10% à 100% sans probleme.

Et puis quand on repasse en HP, on active la décharge

alias: Zendure - Passer en Output Mode quand HEURE PLEINE
description: >
  Si le tarif Linky devient HEURE PLEINE, passer l'onduleur en Output Mode avec
  les limites définies (input = 0, output = 350).
triggers:
  - entity_id: sensor.linky_current_price
    to: HEURE PLEINE
    trigger: state
conditions: []
actions:
  - data:
      option: output
    action: select.select_option
    target:
      entity_id: select.sol_bois_ac_mode
  - data:
      value: "0"
    action: number.set_value
    target:
      entity_id: number.sol_bois_input_limit
  - data:
      value: "600"
    action: number.set_value
    target:
      entity_id: number.sol_bois_output_limit
mode: single

Voici ce que cela donne sur une journée un peu ensoleillée :

image.png