Test sur un état pouvant être une combinaison
Test sur un état pouvant être une combinaison
Bonjour à tous,
Je m'explique car le titre n'est pas forcément très clair. J'ai des détecteurs de mouvement X2D (Myxyty/Delta Dore) qui renvoient via RFPlayer un état, j'ai pu déterminé les valeurs suivantes :
0 : rien à signaler
1 : boîtier ouvert (effraction)
2 : mouvement détecté
4 : piles faibles
8 : veille
Mais cet état peut être une combinaison, par exemple 6 (mouvement détecté + piles faibles) ou encore 5 (boîtier ouvert + piles faibles), comment écrire le test dans Jeedom si je souhaite déclenché lors d'un mouvement détecté même s'il y a un autre état que le 2 dans la combinaison.
Merci
Je m'explique car le titre n'est pas forcément très clair. J'ai des détecteurs de mouvement X2D (Myxyty/Delta Dore) qui renvoient via RFPlayer un état, j'ai pu déterminé les valeurs suivantes :
0 : rien à signaler
1 : boîtier ouvert (effraction)
2 : mouvement détecté
4 : piles faibles
8 : veille
Mais cet état peut être une combinaison, par exemple 6 (mouvement détecté + piles faibles) ou encore 5 (boîtier ouvert + piles faibles), comment écrire le test dans Jeedom si je souhaite déclenché lors d'un mouvement détecté même s'il y a un autre état que le 2 dans la combinaison.
Merci
Re: Test sur un état pouvant être une combinaison
Bonjour,
Tu peux tester dans le Testeur d'expression
Code : Tout sélectionner
(#[ton][equipement]# & 2) == 2
Il y a 10 catégories de personnes, celles qui connaissent le binaire et les autres
.
.
Re: Test sur un état pouvant être une combinaison
Merci tomdom ! c'est exactement ce qu'il me fallait, j'ai fait quelques tests dans le testeur d'expression, ça fonctionne parfaitement.
Re: Test sur un état pouvant être une combinaison
Bonjour,tomdom a écrit : ↑03 déc. 2017, 06:05Bonjour,
Tu peux tester dans le Testeur d'expressionCode : Tout sélectionner
(#[ton][equipement]# & 2) == 2
Tu peux expliquer je ne comprends pas ce test ni comment il peut interpréter selon la valeur 0 1 2 4 8 ?
Re: Test sur un état pouvant être une combinaison
Bonjour,
c'est un "et" binaire. Si le bit qui vaut 2 est positionné alors & 2 retourne 2
c'est un "et" binaire. Si le bit qui vaut 2 est positionné alors & 2 retourne 2
Il y a 10 catégories de personnes, celles qui connaissent le binaire et les autres
.
.
Re: Test sur un état pouvant être une combinaison
Bonjour,
Merci pour cette réponse... hélàs je ne vois pas du coup comment tester pour 0 1 4 et 8...
Je ne comprends pas la logique de ce truc et pourtant cela me parait puissant surtout dans le cas présent ou on peut avoir plusieurs états combiné et obtenir 6 par exemple.
Quelle est la logique en fait ?
Merci pour cette réponse... hélàs je ne vois pas du coup comment tester pour 0 1 4 et 8...
Je ne comprends pas la logique de ce truc et pourtant cela me parait puissant surtout dans le cas présent ou on peut avoir plusieurs états combiné et obtenir 6 par exemple.
Quelle est la logique en fait ?
Re: Test sur un état pouvant être une combinaison
Bonjour,
C'est juste du binaire.
Exemple :
La valeur 15 en binaire vaut 1111. Les bits se lisent de droite à gauche et sont des puissances de 2. Donc le bit le plus à droite de mon exemple vaut 1 (2^0) et celui le plus à gauche vaut 8 (2^3).
Pour savoir si un bit est à 1, il suffit de faire un "et binaire" avec la valeur du bit que l'on veut tester. Un "et binaire" est comme un "et logique" : 1 & 1 = 1, 1 & 0=0, 0 & 0=0
15=1111
4=100
15 & 4=1111 & 0100=0100 (donc 4 en décimal)(le bit de valeur 4 est bien présent)
13=1101
2=10
13 & 2=1101 & 0010=0 (le bit de valeur 2 est absent)
En espérant avoir été assez clair
C'est juste du binaire.
Exemple :
La valeur 15 en binaire vaut 1111. Les bits se lisent de droite à gauche et sont des puissances de 2. Donc le bit le plus à droite de mon exemple vaut 1 (2^0) et celui le plus à gauche vaut 8 (2^3).
Pour savoir si un bit est à 1, il suffit de faire un "et binaire" avec la valeur du bit que l'on veut tester. Un "et binaire" est comme un "et logique" : 1 & 1 = 1, 1 & 0=0, 0 & 0=0
15=1111
4=100
15 & 4=1111 & 0100=0100 (donc 4 en décimal)(le bit de valeur 4 est bien présent)
13=1101
2=10
13 & 2=1101 & 0010=0 (le bit de valeur 2 est absent)
En espérant avoir été assez clair
Il y a 10 catégories de personnes, celles qui connaissent le binaire et les autres
.
.
Re: Test sur un état pouvant être une combinaison
merci c'est plus clair !
Re: Test sur un état pouvant être une combinaison
Hello,
ok mais où indiquez vous ces tests et comment récupérer vous l'info sur le dashboard?
Vous faîtes un scénario pour faire les tests + un virtuel pour l'affichage sur le dashboard?
C'est lourd...j'ai la flemme de m'y mettre car je ne suis pas super logique.
ok mais où indiquez vous ces tests et comment récupérer vous l'info sur le dashboard?
Vous faîtes un scénario pour faire les tests + un virtuel pour l'affichage sur le dashboard?
C'est lourd...j'ai la flemme de m'y mettre car je ne suis pas super logique.
Re: Test sur un état pouvant être une combinaison
Bonjour,
Tu peux le faire directement dans le champ info d'un virtuel
Tu peux le faire directement dans le champ info d'un virtuel
Il y a 10 catégories de personnes, celles qui connaissent le binaire et les autres
.
.
Re: Test sur un état pouvant être une combinaison
Bonjour, petit UP pour ce post !
Je possède également des détecteurs de mouvement (IR) en X2D de chez anciennement MYXYTY, le détecteur me renvoie les mêmes valeurs que toi.
Mais comment arrives tu a à l'intégrer dans le plugin ALARME en passant évidemment par la création d'un VIRTUEL.
Car le VIRTUEL est binaire, je n'arrives pas à interpréter les valeurs de retour de mon champ "Qualifier"
Qualifier :
0 = N/A
1 = sabotage appareil
2 = mouvement détecté
4 = batterie faible
5 = sabotage appareil + batterie faible
7 = sabotage appareil + batterie faible + mouvement détecté
8 = veille
Par contre si je crée un scénario, alors je peux récupérer directement les infos du champ Label :
Label :
Tamper = sabotage appareil
Alarm = mouvement détecté
LowBatt = batterie faible
Supervisor/Alive = veille
PS : si tu as également d'autres appareils en X2D (détecteur de fumée, ouverture de porte.... je suis preneur des infos de retour que tu trouves dans Lable !
Merci de votre aide
Je possède également des détecteurs de mouvement (IR) en X2D de chez anciennement MYXYTY, le détecteur me renvoie les mêmes valeurs que toi.
Mais comment arrives tu a à l'intégrer dans le plugin ALARME en passant évidemment par la création d'un VIRTUEL.
Car le VIRTUEL est binaire, je n'arrives pas à interpréter les valeurs de retour de mon champ "Qualifier"
Qualifier :
0 = N/A
1 = sabotage appareil
2 = mouvement détecté
4 = batterie faible
5 = sabotage appareil + batterie faible
7 = sabotage appareil + batterie faible + mouvement détecté
8 = veille
Par contre si je crée un scénario, alors je peux récupérer directement les infos du champ Label :
Label :
Tamper = sabotage appareil
Alarm = mouvement détecté
LowBatt = batterie faible
Supervisor/Alive = veille
PS : si tu as également d'autres appareils en X2D (détecteur de fumée, ouverture de porte.... je suis preneur des infos de retour que tu trouves dans Lable !
Merci de votre aide
Re: Test sur un état pouvant être une combinaison
Petit test lors de la création du VIRTUEL =
Je dois récupérer la valeur de QUALIFIER (numérique par défaut qui peut-être soit 0,1, 2, 3, 4, 5 ou 7) que je passe en binaire (soit 0, soit 1), comment dire au plugin Alarme qui ne reçois que du binaire, qu'en réalité le 1 binaire peut être soit 1, 2, 3, 4, 5 ou 7 du qualifier de mon détecteur ?
Du coup si la batterie et faible et/ou il y a sabotage et/ou il y a détection de mouvement et/ou il y a mise en vieille du détecteur, l'alarme s'active !!!
Merci de votre aide
Je dois récupérer la valeur de QUALIFIER (numérique par défaut qui peut-être soit 0,1, 2, 3, 4, 5 ou 7) que je passe en binaire (soit 0, soit 1), comment dire au plugin Alarme qui ne reçois que du binaire, qu'en réalité le 1 binaire peut être soit 1, 2, 3, 4, 5 ou 7 du qualifier de mon détecteur ?
Du coup si la batterie et faible et/ou il y a sabotage et/ou il y a détection de mouvement et/ou il y a mise en vieille du détecteur, l'alarme s'active !!!
Merci de votre aide
Re: Test sur un état pouvant être une combinaison
Bonjour,
Dans l'info de ton virtuel tu mets :
Ça retournera 1 pour toutes valeurs différentes de 0
Dans l'info de ton virtuel tu mets :
Code : Tout sélectionner
quantifier!=0
Il y a 10 catégories de personnes, celles qui connaissent le binaire et les autres
.
.
Re: Test sur un état pouvant être une combinaison
Ok pour cela, mais le plugin alarme va sonner pour les batteries faibles, le sabotage et le mouvement tout confondus !
Re: Test sur un état pouvant être une combinaison
Bonjour,
Alors tu fais ça :
Alors tu fais ça :
Code : Tout sélectionner
quantifier==1 || quantifier==2 || quantifier == 3 || quantifier == 4 || quantifier == 5 || quantifier ==7
Il y a 10 catégories de personnes, celles qui connaissent le binaire et les autres
.
.
Re: Test sur un état pouvant être une combinaison
Merci !
Ou est ce que je rentre ces infos là dans le Plugin ««virtuel »
Ou est ce que je rentre ces infos là dans le Plugin ««virtuel »
Re: Test sur un état pouvant être une combinaison
Bonjour,
Tu crées une info binaire et tu rentres ça dans le champ à droite
Tu crées une info binaire et tu rentres ça dans le champ à droite
Il y a 10 catégories de personnes, celles qui connaissent le binaire et les autres
.
.
Re: Test sur un état pouvant être une combinaison
Merci , j'ai trouvé ! SUPER
Re: Test sur un état pouvant être une combinaison
Bonjour,
Pouvez vous éclairer mes lumières pour tester le 1/, 2/ et /3 =
1/ 1000 = (#[ton][equipement]# & ?) == ? (test du quatrième chiffre qui est à 1) lecture de droite à gauche
2/ ok 0100 = (#[ton][equipement]# & ?) == ? (test du troisième chiffre qui est à 1) lecture de droite à gauche
3/ 0010 = (#[ton][equipement]# & 2) == 2 (test du deuxième chiffre qui est à 1) lecture de droite à gauche
4/ 0001 = (#[ton][equipement]# & ?) == ? (test du premier chiffre qui est à 1) lecture de droite à gauche
Afin de savoir si c'est 0 ou 1 !
Pouvez vous éclairer mes lumières pour tester le 1/, 2/ et /3 =
1/ 1000 = (#[ton][equipement]# & ?) == ? (test du quatrième chiffre qui est à 1) lecture de droite à gauche
2/ ok 0100 = (#[ton][equipement]# & ?) == ? (test du troisième chiffre qui est à 1) lecture de droite à gauche
3/ 0010 = (#[ton][equipement]# & 2) == 2 (test du deuxième chiffre qui est à 1) lecture de droite à gauche
4/ 0001 = (#[ton][equipement]# & ?) == ? (test du premier chiffre qui est à 1) lecture de droite à gauche
Afin de savoir si c'est 0 ou 1 !
Re: Test sur un état pouvant être une combinaison
Bonjour,
1) equipement & 8 == 8
2) equipement & 4 == 4
4) equipement & 1 == 1
Ce sont des puissances de 2. 2⁰ à droite juqu'à 2n à gauche
On peut aussi faire :
(equipement >> n) & 1 == 1
où n représente la puissance de 2 à tester (de 0 à droite à n à gauche)
1) equipement & 8 == 8
2) equipement & 4 == 4
4) equipement & 1 == 1
Ce sont des puissances de 2. 2⁰ à droite juqu'à 2n à gauche
On peut aussi faire :
(equipement >> n) & 1 == 1
où n représente la puissance de 2 à tester (de 0 à droite à n à gauche)
Il y a 10 catégories de personnes, celles qui connaissent le binaire et les autres
.
.
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 9 invités