Communication entre M340 et DALI 4NET Basic
Posté : 01 août 2025, 11:15
Bonjour,
Pour le contexte, j'ai un M340 (CPU:P342020) adresse 192.168.10.150 et un module Dali 4NET Basic adresse 192.168.10.97. Il y a un driver relié au DALI, il a pour adresse DALI A7 et se trouve sur le bus Dali 0. Y'a un luminaire et par le M340, je veux simplement l'éteindre pour le moment. Après consultation de la doc du DALI, ce qui faut envoyer ça serait ça : 0x1201, 0x0003, 0x0000, 0x0F00, 0x0000, 0x0000 (0F étant l'adresse A7 et le 00 à côté le niveau de luminosité), et c'est en effet ce que j'envoie en le pilotant manuellement par le logiciel DALI Cockpit.
Sauf que voilà, on m'a demandé de piloter le luminaire à l'aide d'un M340 en modbus TCP/IP et je connais pas trop Unity Pro donc je galère. De ce que j'ai compris, faut utiliser le bloc Write_Var mais j'y arrive pas.
En gros je fait comme ça :
ADR : ADDM('Ethernet_1{192.168.10.97}') (Ethernet_1 étant mon réseau avec l'API)
OBJ : %MW
NUM : 0
NB : 6
EMIS : Variable Array of Int [1...6] contenant la trame que je veux lui envoyer
GEST : Une variable Array of Int [0...3] pour le retour erreur
Mon luminaire ne s'éteint pas et je trouve pas trop d'informations dessus. Quelqu'un aurait une idée de comment ça marche ? Je connaissais pas tout ce qui est DALI avant ça, donc j'ai peut-être dit n'importe quoi et je m'en excuse si c'est le cas!
Je vous remercie par avance !
Pour le contexte, j'ai un M340 (CPU:P342020) adresse 192.168.10.150 et un module Dali 4NET Basic adresse 192.168.10.97. Il y a un driver relié au DALI, il a pour adresse DALI A7 et se trouve sur le bus Dali 0. Y'a un luminaire et par le M340, je veux simplement l'éteindre pour le moment. Après consultation de la doc du DALI, ce qui faut envoyer ça serait ça : 0x1201, 0x0003, 0x0000, 0x0F00, 0x0000, 0x0000 (0F étant l'adresse A7 et le 00 à côté le niveau de luminosité), et c'est en effet ce que j'envoie en le pilotant manuellement par le logiciel DALI Cockpit.
Sauf que voilà, on m'a demandé de piloter le luminaire à l'aide d'un M340 en modbus TCP/IP et je connais pas trop Unity Pro donc je galère. De ce que j'ai compris, faut utiliser le bloc Write_Var mais j'y arrive pas.
En gros je fait comme ça :
ADR : ADDM('Ethernet_1{192.168.10.97}') (Ethernet_1 étant mon réseau avec l'API)
OBJ : %MW
NUM : 0
NB : 6
EMIS : Variable Array of Int [1...6] contenant la trame que je veux lui envoyer
GEST : Une variable Array of Int [0...3] pour le retour erreur
Mon luminaire ne s'éteint pas et je trouve pas trop d'informations dessus. Quelqu'un aurait une idée de comment ça marche ? Je connaissais pas tout ce qui est DALI avant ça, donc j'ai peut-être dit n'importe quoi et je m'en excuse si c'est le cas!
Je vous remercie par avance !