Forcer une valeur Registre

bonjour @Michel_F j’ouvre un sujet spécifique sur le fait de forcer une valeur vers un registre car je pense avoir suivi ton aide mais je n’y arrive pas

lorsque je change la valeur, cela ne semble pas remonter

voici toutes les actions et infos que j’ai dans mon équipement

et voici pour les deux premiers ce que j’ai configuré

sais tu ou est mon erreur ?

merci

Pourquoi as-tu coché inverser octet sur l’un et inverser mot sur l’autre?

Ton adresse esclave est bien 0?

As-tu essayé avec les commandes de mon template pour voir si cela fonctionnait?

Pourquoi as-tu coché inverser octet sur l’un et inverser mot sur l’autre?
bonne question je vais regarder ce point

Ton adresse esclave est bien 0?
oui tout remonte bien avec cette adresse

As-tu essayé avec les commandes de mon template pour voir si cela fonctionnait?
Oui les dernières ligne du bas son les tiennes ( celle qui commence par set )

Et mes commandes fonctionnent-elles ?

non j’ai pas l’impression non plus

image

As-tu essayé avec le bouton Tester qui est à droite de ta commande curseur?

0000|[2024-11-17 20:16:52] DEBUG  : mymodbusCmd::execute **************** execute *****: {"slider":"1500","user_login":"admin","user_id":"1"}
0001|[2024-11-17 20:16:52] DEBUG  : mymodbus::sendToDaemon * params = array (   'CMD' => 'write',   'write_cmd' =>    array (     'eqId' => '1446',     'cmdWriteValue' => 1500,     'cmdId' => '17581',   ), )

j’ai fais sur celui la

mais egalement sur un des tiens

0011|[2024-11-17 20:20:35] DEBUG  : mymodbusCmd::execute **************** execute *****: {"slider":"5","user_login":"admin","user_id":"1"}
0012|[2024-11-17 20:20:35] DEBUG  : mymodbus::sendToDaemon * params = array (   'CMD' => 'write',   'write_cmd' =>    array (     'eqId' => '1446',     'cmdWriteValue' => 5000,     'cmdId' => '17268',   ), )
0013|[2024-11-17 20:20:37] DEBUG  : jeemymodbus.php: $result *{"values":{"17293":-1503}}* type: array

Dans le 1er log que tu avais mis, on voyait que les commandes avaient fonctionné

ah, j’ai retiré trop de ligne, je vais remettre un plus complet alors

0000|[2024-11-17 20:23:32] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Ampérage Onduleur' -> new value: '0.216'
0001|[2024-11-17 20:23:32] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Frequence Onduleur' -> new value: '50.01'
0002|[2024-11-17 20:23:32] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Température Onduleur' -> new value: '23.3'
0003|[2024-11-17 20:23:36] DEBUG  : jeemymodbus.php: $result *{"values":{"17271":9,"17272":4248}}* type: array
0004|[2024-11-17 20:23:36] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Energy storage unit 1 Charge and discharge power' -> new value: '0.009'
0005|[2024-11-17 20:23:36] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Energy storage unit 1 Bus voltage' -> new value: '424.8'
0006|[2024-11-17 20:23:37] DEBUG  : jeemymodbus.php: $result *{"values":{"17293":-1378,"17252":20691}}* type: array
0007|[2024-11-17 20:23:37] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Grid_Power' -> new value: '-1.378'
0008|[2024-11-17 20:23:37] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Reverse Active Power' -> new value: '206.91'
0009|[2024-11-17 20:23:38] DEBUG  : jeemymodbus.php: $result *{"values":{"cycle_time":{"value":17.64631518080132,"eqId":"1446"}}}* type: array
0010|[2024-11-17 20:23:38] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Temps de rafraîchissement' -> new value: '17.646'
0011|[2024-11-17 20:23:44] DEBUG  : mymodbusCmd::execute **************** execute *****: {"slider":"1500","user_login":"admin","user_id":"1"}
0012|[2024-11-17 20:23:44] DEBUG  : mymodbus::sendToDaemon * params = array (   'CMD' => 'write',   'write_cmd' =>    array (     'eqId' => '1446',     'cmdWriteValue' => 1500,     'cmdId' => '17581',   ), )
0013|[2024-11-17 20:23:49] DEBUG  : jeemymodbus.php: $result *{"values":{"17292":2301,"17243":209,"17291":5002}}* type: array
0014|[2024-11-17 20:23:49] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Voltage Onduleur' -> new value: '230.1'
0015|[2024-11-17 20:23:49] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Ampérage Onduleur' -> new value: '0.209'
0016|[2024-11-17 20:23:49] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Frequence Onduleur' -> new value: '50.02'
0017|[2024-11-17 20:23:54] DEBUG  : jeemymodbus.php: $result *{"values":{"17272":4247}}* type: array
0018|[2024-11-17 20:23:54] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Energy storage unit 1 Bus voltage' -> new value: '424.7'
0019|[2024-11-17 20:23:54] DEBUG  : jeemymodbus.php: $result *{"values":{"17293":-1497}}* type: array
0020|[2024-11-17 20:23:54] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Grid_Power' -> new value: '-1.497'
0021|[2024-11-17 20:24:07] DEBUG  : jeemymodbus.php: $result *{"values":{"17234":-1,"17292":2300,"17243":213,"17291":5003,"17232":234}}* type: array
0022|[2024-11-17 20:24:07] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Puissance réactive' -> new value: '-0.001'
0023|[2024-11-17 20:24:07] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Voltage Onduleur' -> new value: '230'
0024|[2024-11-17 20:24:07] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Ampérage Onduleur' -> new value: '0.213'
0025|[2024-11-17 20:24:08] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Frequence Onduleur' -> new value: '50.03'
0026|[2024-11-17 20:24:08] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Température Onduleur' -> new value: '23.4'
0027|[2024-11-17 20:24:11] DEBUG  : jeemymodbus.php: $result *{"values":{"17272":4248}}* type: array
0028|[2024-11-17 20:24:11] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Energy storage unit 1 Bus voltage' -> new value: '424.8'
0029|[2024-11-17 20:24:12] DEBUG  : jeemymodbus.php: $result *{"values":{"17293":-1518,"17252":20692}}* type: array
0030|[2024-11-17 20:24:12] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Grid_Power' -> new value: '-1.518'
0031|[2024-11-17 20:24:12] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Reverse Active Power' -> new value: '206.92'

Là il me semble que c’est une commande de MAJ avec ton slider

Essaie de faire cela:
Etat avant test:
image
Fonction tester:
image
Résultat:
image

0000|[2024-11-17 20:31:53] DEBUG  : jeemymodbus.php: $result *{"values":{"17234":1,"17292":2304,"17243":215,"17232":233}}* type: array
0001|[2024-11-17 20:31:53] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Puissance réactive' -> new value: '0.001'
0002|[2024-11-17 20:31:53] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Voltage Onduleur' -> new value: '230.4'
0003|[2024-11-17 20:31:53] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Ampérage Onduleur' -> new value: '0.215'
0004|[2024-11-17 20:31:53] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Température Onduleur' -> new value: '23.3'
0005|[2024-11-17 20:31:57] DEBUG  : jeemymodbus.php: $result *{"values":{"17271":8,"17272":4247}}* type: array
0006|[2024-11-17 20:31:57] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Energy storage unit 1 Charge and discharge power' -> new value: '0.008'
0007|[2024-11-17 20:31:57] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Energy storage unit 1 Bus voltage' -> new value: '424.7'
0008|[2024-11-17 20:31:58] DEBUG  : jeemymodbus.php: $result *{"values":{"17293":-1578,"17252":20713}}* type: array
0009|[2024-11-17 20:31:58] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Grid_Power' -> new value: '-1.578'
0010|[2024-11-17 20:31:58] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Reverse Active Power' -> new value: '207.13'
0011|[2024-11-17 20:32:02] DEBUG  : mymodbusCmd::execute **************** execute *****: {"slider":"16.3","user_login":"admin","user_id":"1"}
0012|[2024-11-17 20:32:02] DEBUG  : mymodbus::sendToDaemon * params = array (   'CMD' => 'write',   'write_cmd' =>    array (     'eqId' => '1446',     'cmdWriteValue' => 163.0,     'cmdId' => '17269',   ), )
0013|[2024-11-17 20:32:11] DEBUG  : jeemymodbus.php: $result *{"values":{"17292":2307,"17243":213,"17291":4999,"17232":234}}* type: array
0014|[2024-11-17 20:32:11] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Voltage Onduleur' -> new value: '230.7'
0015|[2024-11-17 20:32:11] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Ampérage Onduleur' -> new value: '0.213'
0016|[2024-11-17 20:32:12] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Frequence Onduleur' -> new value: '49.99'
0017|[2024-11-17 20:32:12] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Température Onduleur' -> new value: '23.4'
0018|[2024-11-17 20:32:15] DEBUG  : jeemymodbus.php: $result *{"values":{"17271":9}}* type: array
0019|[2024-11-17 20:32:15] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Energy storage unit 1 Charge and discharge power' -> new value: '0.009'
0020|[2024-11-17 20:32:17] DEBUG  : jeemymodbus.php: $result *{"values":{"17293":-1575}}* type: array
0021|[2024-11-17 20:32:17] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Grid_Power' -> new value: '-1.575'

Je relirai ton post demain matin car je suis fatigué (et malade). Peut-être que je trouverai.

Pour Michel_F, si je me souviens bien, il ne fait pas d’écriture dans les registres. Laisse-moi passer une bonne nuit de repos et j’essaie de comprendre ce qu’il se passe.

A tout hasard, pourrais-tu quand même essayer en mettant l’adresse esclave sur 1?

Pour ecrire dans les registre il faut une autorisation de plus que pour lire, ou alors si j’arrive a lire je devrais pouvoir y ecrire aussi

Je n’ai rien défini en plus. Si le ModBus est actif sur l’onduleur, tu dois pouvoir lire et écrire.

2 « J'aime »

j’ai inscrit 1.63 pour faire 16.3%, mais pas mieux

j’ai modifie par 1 pour l’action et aussi sur la plage

0000|[2024-11-17 20:51:05] DEBUG  : mymodbusCmd::execute **************** execute *****: {"slider":"1.63","user_login":"admin","user_id":"1"}
0001|[2024-11-17 20:51:05] DEBUG  : mymodbus::sendToDaemon * params = array (   'CMD' => 'write',   'write_cmd' =>    array (     'eqId' => '1446',     'cmdWriteValue' => 16.299999999999997,     'cmdId' => '17269',   ), )
0002|[2024-11-17 20:51:29] DEBUG  : jeemymodbus.php: $result *{"values":{"17292":2300,"17291":5001,"17232":233}}* type: array
0003|[2024-11-17 20:51:29] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Voltage Onduleur' -> new value: '230'
0004|[2024-11-17 20:51:29] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Frequence Onduleur' -> new value: '50.01'
0005|[2024-11-17 20:51:29] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Température Onduleur' -> new value: '23.3'
0006|[2024-11-17 20:51:36] DEBUG  : jeemymodbus.php: $result *{"values":{"17293":-1708,"17252":20767}}* type: array
0007|[2024-11-17 20:51:36] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Grid_Power' -> new value: '-1.708'
0008|[2024-11-17 20:51:36] DEBUG  : jeemymodbus.php: Mise à jour cmd 'Reverse Active Power' -> new value: '207.67'

je suppose qu’il est actf vue que je récupères tout un tas de valeur

oui, effectivement.

ce que je vois comme différence, c’est que chez moi, j’ai le read avant le write

je vais me loguer demain sur mon onduleur en mode installateur pour voir si j’ai pas quelques chose a activer dessus en plus afin de pouvoir y écrire

as-tu essayé d’inverser les 2 commandes read & write?