dans UART : HEX (et pas ASCII), dans MyModbus : ASCII et pas RTU → Il faudrait choisir RTU,
configuration de la liaison OK
Conseils :
Avez-vous lu la documentation du plugin ? Comme j’y ai passé beaucoup de temps et qu’elle a montré ses preuves, je pense que sa lecture attentive est un premier pas.
Il faudrait la documentation complète de votre carte relais et il faudrait commencer par la lecture de l’état des relais AVANT d’essayer de les piloter.
A+
Michel
edit : l’étiquette utilisée est la mauvaise, je suis tombé sur ce fil en consultant les derniers messages, il faut utiliser le tag plugin-mymodbus si vous parlez du plugin MyModbus.
D’après le document « programming_manual_en.pdf » dont sont extraits les captures de @nikedelick, ce n’est pas du Modbus, mais un protocole propriétaire. Ce n’est donc pas dans ce document que les informations utiles au paramétrage de MyModbus se trouvent.
J’ai l’impression qu’il faut étudier le fichier texte dans le répertoire modbus pour savoir quoi faire en Modbus. Il faut étudier ça.
Peut-être qu’un autre protocole compatible avec cette carte est plus accessible ?
Il ne faudrait qu’un seul équipement MyModbus activé. Log en debug.
L’équipement doit être paramétré en RTU le reste est sans doute bon puisque qu’avec l’autre outil ça fonctionne.
J’ai utilisé l’accès que vous m’avez donné en MP pour tester des choses.
J’ai fait 2 équipements :
Relais
Entrées (qui utilise la connexion de Relais)
Je suis certain que l’équipement Relais fonctionne, je vous ai fait toutes les commandes.
Par contre je ne suis pas sûr que les entrées fonctionnent, il faudrait que vous testiez.
Pour les suivants…
Relais (sur événement pour tester, mais peut être configuré en polling ou en cyclique sans problème): Dingtian_4_sorties.json.txt (17,3 Ko)
Par contre je serai curieux de comprendre comment vous en etes venu a ces ligne de commande
ex : hexdec(‹ 0101 ›)
Et une dernière question, j’ai un deuxieme dingtian, si je mets mon bus en serie et que je veux faire pareil sur la deuxieme carte, il me suffit juste de copier les commandes et changer l’esclave ou les commandes registres ne sont pas les memes ?
Vous pouvez donc indiquer que ma réponse est la solution.
Dans le fichier zip, il y a un fichier texte qui contient peu d’informations mais on y trouve ça :
modbus-rtu ////////////////////////////////////////////////////
read channel number and status
01 03 0000 0002 C40B
01 03 04 0004 0000 BBF2
write relay(single register)
01 06 0002 0f0f 6DFE # 1~4 on
01 06 0002 0f00 2DFA # 1~4 off
01 06 0002 0909 EE5C # 1,4 on
Ce sont des trames Modbus que j’ai interprétées et traduites en MyModbus.
Pour la commande des relais, le registre de valeur est à couper en 2 octets :
le masque
la commande
bref…
Il faut en effet modifier l’adresse d’un des 2 modules et adapter l’adresse dans les commandes, le reste est identique.
Par contre, il faut brancher en parallèle.
Je pense qu’en IP (Ethernet) ça fonctionnerait aussi.