Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Réponses multiples à GroupValueRead
#1
J'ai 2 appareils Hagger, ayant plusieurs commutateurs avec chacun un objet de communication CR-T- "ON/OFF Indication".

J'ai effectué un test pour voir si on pouvait envoyer un télégramme GroupValueRead unique pour obtenir une réponse pour chaque cannaux.

Configuration ETS :
Appareil 1, canal 1: 11/1/0, 0/1/0
Appareil 1, canal 2: 11/1/1, 0/1/0
Appareil 1, canal 3: 11/1/2, 0/1/0

Appareil 2, canal 1: 12/1/0, 0/1/0
Appareil 2, canal 2: 12/1/1, 0/1/0
Appareil 2, canal 3: 12/1/2, 0/1/0

Résultat des tests :
GroupValueRead envoyé individuellement à 11/1/0, 11/1/1, etc .. fonctionne toujours. Les 2 appareils répondent par un GroupValueResponse à la même adresse.

Envoyer un unique GroupValueRead à 0/1/0 fait que chacun des appareil renvoi un unique GroupValueResponse, pour un seul de ses cannaux.

La question que je me pose :
  - Est-ce la spécification KNX, qui fait que chaque participant ne peut répondre à GroupValueRead que par 1 seule réponse ?
  - Est-ce le produit Hagger qui fonctionne comme ça, n'ayant pas prévu cet usage ?

Merci
Répondre
#2
On touche un peu au B.A.B.A du KNX
C'est peu etre la 1ere regle que l'on apprend quand on touche au GA

Un objet ne peux envoyer une donnée que sur une seul GA.
Si un objet est lié a 2 GA ou plus , une seule des GA aura le flag "S" (Envoi , Sender)

Tu as du louper qq chose dans ton test, configurer comme tu le dis, si tu a créer 0/1/0 en dernier , aucun des canal ne va répondre. C'est peu etre quelqu'un d'autre qui repond
Si il repond c'est que 0/1/0 est déclaré avec "S" , mais du coup du doit avoir un canal qui ne repond pas.

Je sais pas si j'ai été clair.
KNX Partner Base / Avancé

Ma boite de MP est pleine, merci de créer un post si vous avez une question, cela profitera a tout le monde.
Répondre
#3
Le fait qu'on ne peut envoyer que sur une seule GA est compris et voulu.

Le but c'est que le superviseur envoie un seul télégramme GroupValueRead à 0/1/0 et que chaque objet de communication réponde un GroupValueReponse à la première GA configurée ci-dessus (car c'est celle qui a le flag S).

Indiviuellement ça marche, si j'ai que ça de configuré :
Appareil 1, canal 1: 11/1/0, 0/1/0
=> Quand je fais un GroupValueRead à 0/1/0, je reçois un GroupValueResponse sur 11/1/0 (GA avec flag S). Et c'est ce que je souhaite.

Par contre, les modules Hager que j'ai ne répondent que pour un seul des objets sensés répondre à 11/1/0.
Répondre
#4
Voulu :
  Superviseur => GroupValueRead(0/1/0)
  App 1 => GroupValueResponse(11/1/0) ET GroupValueResponse(11/1/1) ET GroupValueResponse(11/1/2) (envoyés bien sur l'un après l'autre, dans un ordre indéfini)
  App 2 => GroupValueResponse(12/1/0) ET GroupValueResponse(12/1/1) ET GroupValueResponse(12/1/2) (envoyés bien sur l'un après l'autre, dans un ordre indéfini)

Résultat du test :
  Superviseur => GroupValueRead(0/1/0)
  App 1 => GroupValueResponse(11/1/0)*
  App 2 => GroupValueResponse(12/1/2)*

*Noter que les deux appareils (identiques) répondent pour des canaux différents, sans doute aléatoirement.


Quand le superviseur veut connaitre l'état de l'ensemble des appareils de la ligne (disons 250 participants),
on peut alors diviser par 2 le nombre de télégrammes à envoyer. 1 READ + 250 RESPONSE au lieu de 250 READ + 250 RESPONSE
Répondre
#5
Intuitivement je suppose que c'est une utilisation "non standard", pas prévue par les concepteurs de KNX,

mais j'aurais aimé savoir si c'est KNX qui interdit ce qui souhaité car il y aurait écrit "Un participant DOIT répondre à un GroupValueRead, par UN GroupValueResponse" ?

Ou, si rien ne l’empêche et que c'est simplement l'implémentation de Hager qui ne répond que pour un canal ?
Répondre
#6
Il n'y a qu'un participant qui peut répondre a un message. Si qq répond le message est acquité.

Le KNX est un bus evenementiel .

Tu poses une question 0/1/0 qq va te répondre sur cette adresse et pas sur une autre.

Et puis imagine que 2 participant soit capable de répondre sur une même adresse, le 1er répond 0, le 2nd répond 1, tu gère comment du coup ?
KNX Partner Base / Avancé

Ma boite de MP est pleine, merci de créer un post si vous avez une question, cela profitera a tout le monde.
Répondre
#7
(15/07/2025, 13:28:33)filou59 a écrit : Il n'y a qu'un participant qui peut répondre a un message. Si qq répond le message est acquité.

Le KNX est un bus evenementiel .

Tu poses une question 0/1/0 qq va te répondre sur cette adresse et pas sur une autre.

Et puis imagine que 2 participant soit capable de répondre sur une même adresse, le 1er répond 0, le 2nd répond 1, tu gère comment du coup ?

De fait, si 2 participants ont la même configuration, chacun "veut" répondre.
Un participant peut éventuellement renoncer à répondre s'il voit qu'un autre l'a déjà fait (la norme lui impose t'il de surveiller les réponse des autres pour renoncer ? Je ne pense pas).

Avec le matos Hager, comme évoqué:
 - les participants répondent sur l'adresse qui a le flag S, pas sur l'adresse qui reçoit le READ
 - les 2 participants répondent, donc pas de mécanisme permettant de vérifier que le message est acquitté.

Donc en configurant une adresse propre à l'objet de groupe avec Flag S, on peut gérer les réponses multiples, chaque réponse devant être configurée avec une adresse permettant d'identifier l'envoyeur.

Question subsidiaire:
  Dans le cas d'un "objet de groupe" avec les Flags CRW-- (càd écrit une valeur soit de son propre chef, soit en réponse à un READ)
  A quoi ça servirait de pouvoir lier plusieurs GA, si une seule a le flag Envoi/S, si c'est pas pour que cette adresse réponde quand les autres reçoivent un READ ?
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)