Ayant peur de faire une connerie, je préfère poser la question avant de risquer des problèmes. J’aimerais pouvoir écrire dans les registres de mon onduleur SUN2000.
Voici un exemple de registre dans lequel je souhaite écrire:
Il faut déjà être sûr que le registre puisse être écrit. Certains registres sont effectivement en lecture seule.
Il faut créer une commande action avec la même adresse et le même format en définissant la commande info avec l’ID 3514 comme commande liée. Dans le champs Valeur, vous pouvez écrire la valeur que vous souhaitez. Cette valeur sera écrite lors du test de la commande.
Si vous souhaitez le faire via un scénario avec une valeur calculée, vous trouverez suffisamment d’info dans la doc Jeedom et ce community.
Ce qu’il faut savoir c’est que pour une commande action #value# est la valeur que tu vas saisir. Comme la commande info divise la valeur lue par 1000 pour afficher des kW (valeur du registre en Watt, a priori) il faut multiplier la valeur à écrire en kW par 1000 pour écrire des Watt dans le registre. #value# * 1000 donc dans le champ option de la commande action.
edit: j’ai aussi un onduleur SUN2000, mais ne trouve pas dans la doc le registre 47416. Tu peux me dire où tu as trouvé cette info ? C’est peut-être lié à la référence, j’ai un SUN2000-6KTL-L1
Pour la lecture sur mon onduleur, j’ai réglé les paramètres de l’équipement comme cela. Est-ce une bonne idée, que changeriez-vous par rapport à ma configuration?
En utilisant CURSEUR dans le type, j’obtiens un message d’erreur dans le log:
0000|[2024-09-25 21:56:50] ERROR : [Consommations][SUN2000-12KTL (LAN) by Luis][Set Max Feed Grid Power KW] :<br>Le champ valeur ne contient pas '#slider#'.
0001|[2024-09-25 21:57:48] ERROR : [Consommations][SUN2000-12KTL (LAN) by Luis][Set Max Feed Grid Power KW] :<br>Le champ valeur ne contient pas '#slider#'.
0002|[2024-09-25 21:57:57] ERROR : [Consommations][SUN2000-12KTL (LAN) by Luis][Set Max Feed Grid Power KW] :<br>Le champ valeur ne contient pas '#slider#'.
0003|[2024-09-25 21:58:50] ERROR : [Consommations][SUN2000-12KTL (LAN) by Luis][Set Max Feed Grid Power KW] :<br>Le champ valeur ne contient pas '#slider#'.
0004|[2024-09-25 21:58:53] ERROR : [Consommations][SUN2000-12KTL (LAN) by Luis][Set Max Feed Grid Power KW] :<br>Le champ valeur ne contient pas '#slider#'.
0005|[2024-09-25 22:01:06] ERROR : [Consommations][SUN2000-12KTL (LAN) by Luis][Set Max Feed Grid Power KW] :<br>Le champ valeur ne contient pas '#slider#'.
0006|[2024-09-25 22:03:13] ERROR : [Consommations][SUN2000-12KTL (LAN) by Luis][Set Max Feed Grid Power KW] :<br>Le champ valeur ne contient pas '#slider#'.
Quand je teste la commande, j’obtiens un SUCCES mais cela n’écrit pas dans les registres:
Dans mon dashboard, il me reprend bien le slider malgré le message d’erreur et la valeur de la commande info liée est bien rapatriée.
Je suis dans la dernière version beta (49) mais je pense que tu le sais
Une idée de ce que j’aurais pu rater sur ce coup-là?
En effet, il faut remplacer #valeur# * 1000 par #slider# * 1000 dans la commande action. Je n’avais plus ce détail en tête. C’est aussi fait comme ça chez moi.
Voilà, l’objectif final est atteint avec ces commandes d’écriture. Je pourrai changer le comportement de mon onduleur plus facilement. J’aurai d’autres valeurs que je souhaiterais pouvoir modifier mais cela viendra dans un second temps. En attendant, pour ceux qui souhaiteraient pouvoir agir sur le mode de fonctionnement de l’injection réseau, voici le résultat de ce que j’ai fait (simplement dans le dashboard) avec l’équipement ModBus et le scenario qui me fait apparaître/disparaître les commandes en fonction du mode de fonctionnement choisi.
- Nom du scénario : Huawei
- Objet parent : Consommations
- Mode du scénario : provoke
- Evènement : #[Consommations][SUN2000-12KTL (LAN) by Luis][Active Power Control Mode]#
comment
SI #[Consommations][SUN2000-12KTL (LAN) by Luis][Active Power Control Mode]# === 6 || #[Consommations][SUN2000-12KTL (LAN) by Luis][Active Power Control Mode]# === 7
ALORS
SI #[Consommations][SUN2000-12KTL (LAN) by Luis][Active Power Control Mode]# === 6
ALORS
CODE
(code) cmd::byId(6374)->setIsVisible(1)->save();
cmd::byId(6378)->setIsVisible(0)->save();
SINON
CODE
(code) cmd::byId(6378)->setIsVisible(1)->save();
cmd::byId(6374)->setIsVisible(0)->save();
SINON
CODE
(code) cmd::byId(6374)->setIsVisible(0)->save();
cmd::byId(6378)->setIsVisible(0)->save();
Merci à cette communauté qui permet de faire avancer les choses et, tout particulièrement, à @Michel_F pour son implication sur MyModBus et son intervention express sur mon installation mais aussi à mon professeur @lperenna à qui je dois beaucoup
Je suis en ZERO Injection (installation PV réalisée moi-même). Parfois, pour savoir si j’ai la possibilité d’envoyer un gros consommateur par rapport à la production que je pourrais avoir, je libère l’injection et je regarde si je suis en mesure de démarrer mon gros consommateur.
Il y aura aussi, à terme, d’autres paramètres sur lesquels je voudrais pouvoir intervenir pour pouvoir faire des tests d’optimisation. Je trouve parfois l’application (WEB ou téléphone) FusionSolar un peu brouillon pour agir sur la configuration.
Si je réunis tous les paramètres pour lesquels je souhaite faire des tests sur un seul design, j’aurai quelque chose qui visuellement me conviendra mieux.
Voilà, j’espère que ma réponse te permettra de comprendre ma logique (qui n’est peut-être pas la meilleure).
C’est juste une idée comme ça…
Oui solcast passe par internet pour récupérer les prévisions de production (qui sont assez fiables par ailleurs). Ca se fait une fois pour la journée. Ensuite il y a des traitements qui mettent a jour ces prévisions en fonction de l’évolution de la météo.
Ces prévisions de production par tranche horaire te permettraient de savoir si oui ou non tu pourrais changer le mode de fonctionnement de ton onduleur pour déclencher tes gros consommateurs.
Mais bon c’est juste une idée comme ça, c’est ton install, pas la mienne ^^