Merci, en effet, ça marche ! toutefois j’ai créé une entrée « input.number.wallbox_portal_max_charging_current » pour faire le test, car ça ne fonctionnait pas avec ma wallbox en direct qui est « number.wallbox_portal_max_charging_current » si je modifie la config de cette façon
- name: "Recharge voiture"
entity_id: "switch.wallbox_charger"
# La puissance minimale de charge est 660 W (soit 1 Amp car convert_power_divide_factor=660 aussi)
power_min: 660
# La puissance minimale de charge est 3960 W (soit 5 Amp (= 3960/600) )
power_max: 3960
# le step de 660 soit 1 Amp après division par convert_power_divide_factor
power_step: 660
# Utilisable si le mode de charge est "Solaire" et la voiture est branchée sur le chargeur et elle est chargée à moins de 90 % (donc ca s'arrête tout seul à 90% )
check_usable_template: "{{ is_state('input_boolean.solar_optimizer_test', 'on')}}"
# 1 h de charge minimum
duration_min: 60
# 15 min de stop charge minimum
duration_stop_min: 15
# L'entité qui pilote l'ampérage de charge
# power_entity_id: "input_number.wallbox_portal_max_charging_current"
power_entity_id: "number.wallbox_portal_max_charging_current"
# 5 min minimum entre 2 changements de puissance
duration_power_min: 5
# l'activation se fait par un appel de service
action_mode: "service_call"
activation_service: "switch/turn_on"
deactivation_service: "switch/turn_off"
# le changement de puissance se fait par un appel de service
#change_power_service: "input_number/set_value"
change_power_service: "number/set_value"
# le facteur permettant de convertir la puissance consigne en Ampères (number.tesla_charging_amps prend des Ampères)
convert_power_divide_factor: 660
j’ai l’erreur
Échec du rechargement de la configuration
Cannot quick reload all YAML configurations because the configuration is not valid: Invalid config for [solar_optimizer]: Entity number.wallbox_portal_max_charging_current belongs to domain number, expected ['input_number', 'sensor'] for dictionary value @ data['solar_optimizer']['devices'][1]['power_entity_id']. Got 'number.wallbox_portal_max_charging_current'. (See /config/configuration.yaml, line 13).
Je fais une erreur de syntaxe ? Je viens de Jeedom et franchement pas trop évident au début !
J’ai copié ma valeur avec un script de manière indirect , ça fonctionne en manuel mais j’ignore comment le faire à chaque changement de valeur et en plus, je ne trouve pas ça propre.
Ok, je vois le soucis. Dans power_entity_id, je n’accepte que des input_number ou des sensor. Je vais ajouter des number et ça devrait marcher. Je te dis quand c’est fait.
Intégration très intéressante que je pense tester prochainement.
En attendant, peux-tu me dire quelle intégration tu utilises pour tes graphes de bilans de consommations ?
C’est les graphes données par Enlighten (la plateforme derrière le système Enphase). Donc c’est pas une intégration Home Assistant à proprement parler.
Par contre, tu as nativement dans le dashboard Energie quasiment l’équivalent :
Bravo pour le boulot ! J’ai également un Atlantic Calypso qui dispose de cette fonction mais que je pilote via la passerelle Atlantic/overkiz du coup avec HA je cherchais à me passer du contact sec pour le piloter mais je ne vois pas d’entité qui permettrait cela. Qu’as-tu mis comme contact sec du coup ?
Pour mon Atlantic Calypso j’ai mis un SONOFF ZBMINI L2 (ZBMINI-L2 - SONOFF Official) branché sur les bornes du contact.
Je ferme le contact lorsque j’ai au moins 1000 w de puissance dispo. Ca marche bien depuis 6 mois environ.
A ma connaissance on ne peut pas le déclencher via l’intégration Overkiz (qui marche d’ailleurs assez mal en commande de l’Atlantic Calypso). On voit bien les datas mais impossible de le commander.
Pour l’instant je n’ai pas encore de contrat mais je vais revendre à EDF OA, qu’avez-vous mis en sensor ou input_number qui donne la taxe applicable sur les kwh exportée ?
Salut, comme tu le sais @Jean-Marc_Collin je débute sur ton intégration. Je fais ma prise green up. Elle demande 3,7 kW donc j’ai fais ce code si tu peux me dire si c’est bon ou non :
devices:
- name: "Prise de recharge"
# Le switch qui commande la pompe du réservoir
entity_id: "switch.sonoff_10013c3bd3_1"
# la puissance de cette prise
power_max: 3700
# Toujours utilisable
# check_usable_template: "{{ True }}"
# 5 min d'activation minimum
duration_min: 5
# On active/desactive via un appel de service
action_mode: "service_call"
# Le service permettant d'activer le switch
activation_service: "switch/turn_on"
# Le service permettant de désactiver le switch
deactivation_service: "switch/turn_off"
Par contre, j’ai un problème, l’intégration me marque « non chargé »
Ca m’a l’air très bien. J’augmenterai le 5 min car si tu coupes / allumes la prise toutes les 5 minutes ton chargeur ne va pas aimer. Met plutot 1 h ou 2 h. Quand on lance une charge c’est pour un certain temps.
Le check_usable_template permet de filtrer les cas ou on allume la prise. J’allume pas si la voiture n’est pas connectée et si elle est déjà au moins à 95%.
Ça doit venir de là, j’ai mis dans configuration.yaml :
solar_optimizer: !include solar_optimizer.yaml
Et dans solar_optimizer.yaml :
algorithm:
initial_temp: 1000
min_temp: 0.1
cooling_factor: 0.95
max_iteration_number: 1000
devices:
- name: "Prise de recharge"
# Le switch qui commande la pompe du réservoir
entity_id: "switch.sonoff"
# la puissance de cette prise
power_max: 3700
# Toujours utilisable
# check_usable_template: "{{ True }}"
# 5 min d'activation minimum
duration_min: 5
# On active/desactive via un appel de service
action_mode: "service_call"
# Le service permettant d'activer le switch
activation_service: "switch/turn_on"
# Le service permettant de désactiver le switch
deactivation_service: "switch/turn_off"
J’ai enlevé entity id car la prise est sur on. Je dois ressortir la voiture pour démonter le coffret électrique et regarder pourquoi il ne s’éteint plus du tout
Logger: homeassistant.setup
Source: setup.py:288
First occurred: 17:08:56 (1 occurrences)
Last logged: 17:08:56
Error during setup of component solar_optimizer
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/setup.py", line 288, in _async_setup_component
result = await task
^^^^^^^^^^
File "/config/custom_components/solar_optimizer/__init__.py", line 97, in async_setup
hass.data[DOMAIN]["coordinator"] = coordinator = SolarOptimizerCoordinator(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/solar_optimizer/coordinator.py", line 64, in __init__
raise err
File "/config/custom_components/solar_optimizer/coordinator.py", line 56, in __init__
for _, device in enumerate(config.get("devices")):
^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'get'
Ne me demande pas pourquoi mais après une bonne dizaine de redémarrage et de reconfiguration, sa fonctionne. Je me remets sur le code. Comment faire pour que quoi qu’il arrive, il s’enclenche entre 22h30 et 6h30 ?
Par contre, le prix d’achat électrique, on ne peut pas mettre hc et hp. J’ai donc mis hp c’est lui qui m’intéresse la journée.
J’ai regardé et il y a un également un second exemple de recharge. Moi j’ai juste 1 prise green up qui consomme 3,7 kW lorsque la voiture est branché
Est-ce que ce code est cohérent (il me manque la façon d’ajouter les heures) :
- name: "Recharge voiture"
entity_id: "switch.sonoff_10013c3bd3_2"
# La puissance minimale de charge est 660 W (soit 1 Amp car convert_power_divide_factor=660 aussi)
power_min: 3700
# La puissance minimale de charge est 3960 W (soit 5 Amp (= 3960/600) )
power_max: 6000
# le step de 660 soit 1 Amp après division par convert_power_divide_factor
check_usable_template: "{{ is_state('input_boolean.solar_optimizer_test', 'on')}}"
# 10 min de charge minimum
duration_min: 10
# 15 min de stop charge minimum
duration_stop_min: 5
action_mode: "service_call"
activation_service: "switch/turn_on"
deactivation_service: "switch/turn_off"
# le changement de puissance se fait par un appel de service
```
Alors il doit y avoir un mal-entendu, l’idée de cette intégration n’est pas de déclencher à heure fixe mais lorsque la production solaire est suffisante. Pour déclencher à heure fixe, un Scheduler ou une automatisation feront l’affaire.
Moi j’ai un input_number qui change en fonction des hc / hp. Mais c’est pas très important, l’écart de prix hp/hc joue très peu sur l’optimisation.
Tu n’as pas besoin de power_min. C’est pour faire varier la puissance de charge en fonction de la puissance produite. Regarde dans le readme a la section For variable power equipment. A priori tu ne peux pas faire varier la puissance de charge ou alors il manque plein de paramètres si tu veux faire ça.
Salut, non moi c’est bien une puissance fixe. Pour le faire j’ai besoin de 3700 w. Du coup il faut que je lui mette power_min pour que dès que j’ai 3700w minimum il enclenche la prise ?
T’as pas besoin de power_min si tu as une puissance fixe. Il n’est utilisé que dans le cas de puissance variable. Relis la doc au besoin.
En gros tu vas dire à Solar Optimizer, cette prise là, quand elle est ‹ on › elle consomme au max 3700w (donc power_max) et il va l’allumer si tu as 3700 w de disponible (produit - consommé)