Salut a tous,
Je viens de passer sur une association d autoconsommation collective (afin de partager une part de mon surplus avec mon père) via l’association 3ERL !
Le souci est que parfois l’injection de surplus devient payant :
En cas de forte production (soleil / vent) par rapport à la consommation (jours fériés / week-end), le PRE+ sera faible. Il arrive même parfois que le PRE+ soit négatif, c’est à dire qu’il faut payer pour injecter sur le réseau ! Ceci s’explique par le fait qu’à ces périodes, RTE doit payer certains producteurs en contrat avec eux pour NE PAS injecter sur le réseau
Donc il me faudrait bloquer l’injection de mon onduleur sofar 6 ktlm sur zéro injection!
Ma question est de savoir si il est possible récupérer la commande dans le plugin SOLARMAN pour forcer l’injection a zéro quand le rachat du surplus devient négatif via leur API ?
J’ai déja une API afin récupérer les informations du json 3ERL
https://3erl.fr/conseils/
Est il possible de récupérer cette commande car pour le moment; j’ ai uniquement des commandes infos sur l’onduleur !
En vous remerciant par avance pour vos conseils et bonne soirée
D’après la documentation de ton onduleur que j’ai mise avec le plugin il y a la possibilité d’y écrire des données mais les registres pour le faire ne sont pas mentionnés. Le mieux serait d’écrire à sofar directement pour leur demander la liste des registres utilisés par cet onduleur en espérant qu’ils ne te renvoient pas la même
Salut Noyax, je viens de recevoir le mail de chez Sofar :
SOFAR 1-70KTL G1-G2 Modbus Protocol EN 2021-01-27.pdf (525,7 Ko)
Salut, c’est le même document qu’on avait déjà. Par contre je viens de voir un truc sur lequel j’étais passé à côté:
Donc si tu veux moduler le « output power » alors c’est avec ça que tu peux jouer. Tu envoie une commande avec le code fonction 0x06 (= write holding register) sur le registre 0x90 0x00 et avec la valleur comprise entre 0x00 0x00 et 0x00 0x64 (entre 0 et 100%)
Donc lancer :
nice -n 19 /var/www/html/plugins/solarman/resources/venv/bin/python3 /var/www/html/plugins/solarman/ressources/commandes.py --ipclewifi "ipclewifi" --portclewifi "portclewifi" --serialclewifi "serialclewifi" --mbslaveid "ID onduleur" --modbus 6 --registre 36864 --unique "valeur à envoyer"
En mettant bien sûr les infos propres à ton onduleur (IP, port, serial, id)
il y a juste --registre 36864 où j’hésite car cela pourrait aussi être 144 (0x00 0x90 ou alors 0x90 0x00)
Merci pour ton retour
Entre temps; SOFAR m a également répondu a ma question de savoir si cela était possible de limiter l’injection de mon onduleur 6KLM via modBus et ils me l ont confirmé par ce mail :
ok mais là c’est avec un code fonction de 0x58 qui n’est pas possible avec ce qui est à notre disposition
Mais avec ta ligne de commande ; cela pourrait fonctionner ?
nice -n 19 /var/www/html/plugins/solarman/resources/venv/bin/python3 /var/www/html/plugins/solarman/ressources/commandes.py --ipclewifi "ipclewifi" --portclewifi "portclewifi" --serialclewifi "serialclewifi" --mbslaveid "ID onduleur" --modbus 6 --registre 36864 --unique "valeur à envoyer"
Je remplace les valeurs entre " " par les données de mon matériel !Et pour la "valeur a envoyer" ; j’indique la valeur que je souhaite limité pour mon injection?
Cette ligne de commande est a envoyer via le plugin script ?
En te remerciant par avance pour ton aide
tu vas dans réglages/système/configuration puis onglet OS/DB puis administration systeme et tu colles ta ligne à l’endroit prévu.
Attention j’ai fait une erreur dans la ligne, prends plutôt celle ci:
nice -n 19 /var/www/html/plugins/solarman/resources/venv/bin/python3 /var/www/html/plugins/solarman/resources/commandes.py --ipclewifi "ipclewifi" --portclewifi "portclewifi" --serialclewifi "serialclewifi" --mbslaveid "ID onduleur" --modbus 6 --registre 36864 --unique "valeur à envoyer"
si ça marche tu pourras créer un scénario avec un bloc code où tu colleras ça:
$cmd = '/var/www/html/plugins/solarman/resources/venv/bin/python3 /var/www/html/plugins/solarman/resources/commandes.py --ipclewifi "ipclewifi" --portclewifi "portclewifi" --serialclewifi "serialclewifi" --mbslaveid "ID onduleur" --modbus 6 --registre 36864 --unique "valeur à envoyer"';
$result = exec('nohup ' . $cmd . ' >> ' . log::getPathToLog('solarman_commandes') . ' 2>&1 &');
Je t’ai envoyé une demande pour accéder à ce fichier
Je viens d accepter!
Désole j étais dans les travaux !
Pas grave c’est normal 
C’est apparemment idem dans ce fichier. Tu as essayé ce que je t’ai proposé ?
Je vais tester ta solution mais ne voulant par faire d erreur, je vérifie bien le process ! LOL
nice -n 19 /var/www/html/plugins/solarman/resources/venv/bin/python3 /var/www/html/plugins/solarman/resources/commandes.py --ipclewifi "ipclewifi" --portclewifi "portclewifi" --serialclewifi "serialclewifi" --mbslaveid "ID onduleur" --modbus 6 --registre 36864 --unique "valeur à envoyer"
Je remplace les valeurs entre " " par les données de mon matériel !Et pour la "valeur a envoyer" ; j’indique la valeur que je souhaite limité pour mon injection?
A quel endroit dois je la coller ?
Enfin as tu une idée comment récupérer les informations de l API.json 3ERL via le plugin script afin de savoir si je peux ou non injecter dans le réseau ?
https://3erl.fr/api.json
En te remerciant par avance
Bonne soirée
À gauche du bouton jaune « ok »
Non aucune idée
Merci pour ton retour !
nice -n 19 /var/www/html/plugins/solarman/resources/venv/bin/python3 /var/www/html/plugins/solarman/resources/commandes.py --ipclewifi "ipclewifi" --portclewifi "portclewifi" --serialclewifi "serialclewifi" --mbslaveid "ID onduleur" --modbus 6 --registre 36864 --unique "valeur à envoyer"
Je remplace les valeurs entre " " par les données de mon matériel !Et pour la « valeur a envoyer » ; j’indique la valeur que je souhaite limité pour mon injection?
Oui et en supprimant les guillemets aussi
Ok et comment vérifier que cela fonctionne bien et que l onduleur prend bien l info ?
Soit en constatant que les registres ont bien changés soit en allant voir sur l’écran de ton onduleur
Comment peut on consulter les registres ?
En te remerciant par avance
Bon dimanche
Ils sont en lecture / écriture donc tu peux faire un fichier yaml spécial avec uniquement ces registres que tu utiliseras dans un « nouvel » onduleur (il y a un fichier pour le sofar hyd es par exemple). Comme ça tu ne mets à jour que par une action volontaire pour vérifier que ta commande est bien passée