07/04/2011, 11:12:56
C'est exactement comme ça que je voyais la chose mais je ne savait pas
comment le faire (je ne connais pas LUA...) mais je me voyais avec mes "if
then else" ... ><
Je vais essayer de mettre ça en place avec l'exemple que tu m'a donné je te
tiens au courant.
Ça m'ouvre de nouvelle perspective pour ma supervision, je vais regarder le
LUA d'un peut plus prêt (tu sait ou je peut trouver pour me documenter ?)
Merci encore !!
Stephane
Le 7 avril 2011 11:51, Anthony PENHARD <a.penhard@gmail.com> a écrit :
> j'essaye de bien comprendre
> tu as donc :
>
> 4 modes:
> M1
> M2
> M3
> M4
>
> 6 sorties :
> S1 à S6
>
> BP1 = on ou off (entrée 1 des 2 BP de la pièce)
> BP2 = on ou off (entrée 2 des 2 BP de la pièce)
>
> donc un truc du genre :
>
> Si M1 = on
> si BP1 = on => les 6 sorties dans un certain état
> si BP2 = on => les 6 sorties dans un certain état
>
> Si M2 = on
> si BP1 = on => les 6 sorties dans un certain état
> si BP2 = on => les 6 sorties dans un certain état
>
> ... et idem pour M3 et M4
>
> pour moi le plus "simple" c'est de faire 1 "rule" avec un script lua
> parce que sinon tu vas avoir plusieurs "rule" super longues et "chiante" a
> écrire pour gérer toutes les combinaisons
> un truc du genre :
>
> <rule id="commut_mode">
> <condition type="or">
> <condition type="object" id="BP1" value="on" trigger="true"/>
> <condition type="object" id="BP2" value="on" trigger="true"/>
> </condition>
> <actionlist>
> <action type="script">
> BP1 = obj("BP1");
> BP2 = obj("BP2");
> M1 = obj("M1");
> M2 = obj("M2");
> M3 = obj("M3");
> M4 = obj("M4");
> if M1 = "on"
> if BP1 = "on"
> set("S1", "on");
> set("S2", "off");
> ...
> end;
> if BP2 = "on"
> set("S1", "off");
> set("S2", "on");
> ...
> end;
> end;
> if M2 = "on"
> if BP1 = "on"
> set("S1", "off");
> set("S2", "off");
> ...
> end;
> if BP2 = "on"
> set("S1", "on");
> set("S2", "on");
> set("S2_val_ecl", 50);
> ...
> end;
> end;
> ...
> </action>
> </actionlist>
> </rule>
>
>
> > En fait j'ai un commutateur 4 positions (branché sur un module 4 entrées)
> > qui vas définir l'occupation:
> >
> > Soirée,
> > Projection de film,
> > Repas,
> > Normal.
> >
> > ET j'ai 2x2 BP (à différent endroit de la pièce) qui doivent agir de la
> > même
> > manière (pour les deux entrée 1 des deux BP et les 2 entrée 2 des deux
> BP)
> > en fonction de l'activation d'un des 4 modes (donc le on de l'entrée 1 ou
> > 2
> > ou 3 ou 4).
> >
> > Donc c'est bien le principe que tu a retranscrit mais j'ai 6 sorties a
> > commander (pour faire varier "l'intensité" lumineuse de la pièce en
> > allumant
> > plus ou moins de lampes et plus ou moins fort car j'ai un groupes de
> > lampes
> > en variation).
> >
> > Mais le principe c'est surtout que je ne veut pas une usine a gaz avec 40
> > BP
> > pour choisir quelle lampe allumer et le définir en fonction de mon
> > commutateur.
> >
> > Alors la question est est-ce que je suis obligé de faire comme j'ai
> > présenté
> > sur mon premier post ou si il y a une solution plus rapide et plus
> > efficace.
> >
> > En tout cas, merci pour ta réponse.
> >
> > Stephane
> >
> > Le 7 avril 2011 10:47, Anthony PENHARD <a.penhard@gmail.com> a écrit :
> >
> >> bonjour,
> >>
> >> si je comprends bien tu as 2 BP et pour 1 des deux l'action est
> >> différente
> >> en fonction de l'état du premier
> >>
> >> états des BP :
> >> BP1 = on ou off
> >> BP2 = on ou off
> >>
> >> donc un truc du genre :
> >>
> >> Si BP1 = on
> >> si BP2 = on => lampe1 = on
> >> si BP2 = off => lampe1 = off
> >> sinon
> >> si BP2 = on => lampe2 = on
> >> si BP2 = off => lampe2 = off
> >>
> >> est-ce bien ça ?
> >>
> >> qu'entends tu par 4 modes et 4 inter ?
> >>
> >> sinon oui tu peux envoyer une valeur d'éclairement ce n'est pas en hexa
> >> mais soit 0-255 ou 0-100 (%) en fonction de la définition de l'object de
> >> commande valeur d'éclairement respectivement 5.xxx ou 5.001
> >>
> >> exemple :
> >> <action type="set-value" id="Set_valeur_eclairement_lampe1" value="50"/>
> >>
> >> @+
> >> Anthony.
> >>
> >>
> >> > Bonjour,
> >> >
> >> > je me permet de poster a la suite de ton sujet car mon problème ce
> >> situe
> >> > aussi dans la rédaction de rules linknx.
> >> >
> >> > En fait, j'aimerai définir l'action d'un bouton a partir d'un autre
> >> > bouton.
> >> > Je m'explique:
> >> >
> >> > Si le bouton A est on, alors lors de l'appui sur le bouton 1 vas
> >> allumer
> >> > une
> >> > certaine lumière, mais si le bouton B est on, alors je voudrais que le
> >> > bouton 1 allume une autre lumière.
> >> >
> >> > Plus clairement j'aimerai définir l'action d'un bouton en fonction du
> >> > contexte dans lequel ce situ une pièce de ma maison (salle de
> >> projection
> >> > mais aussi de réception) que je définit en tournant un commutateur...
> >> >
> >> > La seule manière de faire que j'ai trouvé:
> >> >
> >> > <rule id="alarme">
> >> > <condition type="and">
> >> > <condition type="object" id="commut1"
> >> value="on"
> >> > trigger="true"/>
> >> > <condition type="object" id="interrupteur 1"
> >> > value="on" trigger="true"/>
> >> > </condition>
> >> > <actionlist>
> >> > <action type="set-value" id="lampe1"
> >> > value="on"/>
> >> > </actionlist>
> >> > </rule>
> >> >
> >> > <rule id="alarme">
> >> > <condition type="and">
> >> > <condition type="object" id="commut2"
> >> value="on"
> >> > trigger="true"/>
> >> > <condition type="object" id="interrupteur 1"
> >> > value="on" trigger="true"/>
> >> > </condition>
> >> > <actionlist>
> >> > <action type="set-value" id="lampe1"
> >> > value="off"/>
> >> > </actionlist>
> >> > </rule>
> >> >
> >> > mais il y a peut être plus simple et moins lourd, car j'ai 4 modes et
> >> 4
> >> > interrupteurs avec a chaque fois des ambiances différentes...
> >> >
> >> > Autre question, est-ce que je peut envoyer une valeur d'éclairement (a
> >> ce
> >> > moment la en hexa)?
> >> >
> >> > Merci
> >> >
> >> > Si je doit refaire une nouvelle discutions dites le moi.
> >> >
> >> > Le 5 avril 2011 13:49, Casi <yannick@magikdo.com> a écrit :
> >> >
> >> >> Super, effectivement ça fonctionne! Merci je n'avait pas du tout
> >> >> pensé a cette syntaxe.
> >> >>
> >> >> On 5 avr, 13:45, Anthony PENHARD <a.penh...@gmail.com> wrote:
> >> >> > Bonjour,
> >> >> >
> >> >> > comme ça c'est mieux je pense :
> >> >> >
> >> >> > <rule id="escalier_Auto">
> >> >> > <condition type="and">
> >> >> > <condition type="or">
> >> >> > <condition type="object" id="a" value="on" trigger="true"/>
> >> >> > <condition type="object" id="b" value="on" trigger="true"/>
> >> >> > <condition type="object" id="c" value="on" trigger="true"/>
> >> >> > </condition>
> >> >> > <condition type="object" id="d" value="on" trigger="true" />
> >> >> > </condition>
> >> >> > <actionlist>
> >> >> > <action type="set-value" id="xxx" value="on" flags="f"/>
> >> >> > </actionlist>
> >> >> > </rule>
> >> >> >
> >> >> > @+
> >> >> > Anthony.
> >> >> >
> >> >> > Le 5 avril 2011 13:39, Casi <yann...@magikdo.com> a écrit :
> >> >> >
> >> >> >
> >> >> >
> >> >> >
> >> >> >
> >> >> >
> >> >> >
> >> >> > > Bonjour je cherche la syntax pour faire ceci :
> >> >> >
> >> >> > > Si a=on ou b=on ou c=on ET d=on Alors xxx=on
> >> >> >
> >> >> > > Je l'ai traduit comme ça mais ça ne fonctione pas :
> >> >> >
> >> >> > > <rule id="escalier_Auto">
> >> >> > > <condition type="or">
> >> >> > > <condition type="object" id="a"
> >> >> value="on"
> >> >> > > trigger="true"/>
> >> >> > > <condition type="object" id="b"
> >> >> value="on"
> >> >> > > trigger="true"/>
> >> >> > > <condition type="object" id="c"
> >> >> value="on"
> >> >> > > trigger="true"/>
> >> >> > > </condition>
> >> >> > > <condition type="and">
> >> >> > > <condition type="object" id="d"
> >> >> value="on"
> >> >> > > trigger="true" />
> >> >> > > </condition>
> >> >> > > <actionlist>
> >> >> > > <action type="set-value" id="xxx"
> >> >> value="on"
> >> >> > > flags="f"/>
> >> >> > > </actionlist>
> >> >> > > </rule>
> >> >>
> >> >
> >>
> >>
> >>
> >
>
>
>
comment le faire (je ne connais pas LUA...) mais je me voyais avec mes "if
then else" ... ><
Je vais essayer de mettre ça en place avec l'exemple que tu m'a donné je te
tiens au courant.
Ça m'ouvre de nouvelle perspective pour ma supervision, je vais regarder le
LUA d'un peut plus prêt (tu sait ou je peut trouver pour me documenter ?)
Merci encore !!
Stephane
Le 7 avril 2011 11:51, Anthony PENHARD <a.penhard@gmail.com> a écrit :
> j'essaye de bien comprendre
> tu as donc :
>
> 4 modes:
> M1
> M2
> M3
> M4
>
> 6 sorties :
> S1 à S6
>
> BP1 = on ou off (entrée 1 des 2 BP de la pièce)
> BP2 = on ou off (entrée 2 des 2 BP de la pièce)
>
> donc un truc du genre :
>
> Si M1 = on
> si BP1 = on => les 6 sorties dans un certain état
> si BP2 = on => les 6 sorties dans un certain état
>
> Si M2 = on
> si BP1 = on => les 6 sorties dans un certain état
> si BP2 = on => les 6 sorties dans un certain état
>
> ... et idem pour M3 et M4
>
> pour moi le plus "simple" c'est de faire 1 "rule" avec un script lua
> parce que sinon tu vas avoir plusieurs "rule" super longues et "chiante" a
> écrire pour gérer toutes les combinaisons
> un truc du genre :
>
> <rule id="commut_mode">
> <condition type="or">
> <condition type="object" id="BP1" value="on" trigger="true"/>
> <condition type="object" id="BP2" value="on" trigger="true"/>
> </condition>
> <actionlist>
> <action type="script">
> BP1 = obj("BP1");
> BP2 = obj("BP2");
> M1 = obj("M1");
> M2 = obj("M2");
> M3 = obj("M3");
> M4 = obj("M4");
> if M1 = "on"
> if BP1 = "on"
> set("S1", "on");
> set("S2", "off");
> ...
> end;
> if BP2 = "on"
> set("S1", "off");
> set("S2", "on");
> ...
> end;
> end;
> if M2 = "on"
> if BP1 = "on"
> set("S1", "off");
> set("S2", "off");
> ...
> end;
> if BP2 = "on"
> set("S1", "on");
> set("S2", "on");
> set("S2_val_ecl", 50);
> ...
> end;
> end;
> ...
> </action>
> </actionlist>
> </rule>
>
>
> > En fait j'ai un commutateur 4 positions (branché sur un module 4 entrées)
> > qui vas définir l'occupation:
> >
> > Soirée,
> > Projection de film,
> > Repas,
> > Normal.
> >
> > ET j'ai 2x2 BP (à différent endroit de la pièce) qui doivent agir de la
> > même
> > manière (pour les deux entrée 1 des deux BP et les 2 entrée 2 des deux
> BP)
> > en fonction de l'activation d'un des 4 modes (donc le on de l'entrée 1 ou
> > 2
> > ou 3 ou 4).
> >
> > Donc c'est bien le principe que tu a retranscrit mais j'ai 6 sorties a
> > commander (pour faire varier "l'intensité" lumineuse de la pièce en
> > allumant
> > plus ou moins de lampes et plus ou moins fort car j'ai un groupes de
> > lampes
> > en variation).
> >
> > Mais le principe c'est surtout que je ne veut pas une usine a gaz avec 40
> > BP
> > pour choisir quelle lampe allumer et le définir en fonction de mon
> > commutateur.
> >
> > Alors la question est est-ce que je suis obligé de faire comme j'ai
> > présenté
> > sur mon premier post ou si il y a une solution plus rapide et plus
> > efficace.
> >
> > En tout cas, merci pour ta réponse.
> >
> > Stephane
> >
> > Le 7 avril 2011 10:47, Anthony PENHARD <a.penhard@gmail.com> a écrit :
> >
> >> bonjour,
> >>
> >> si je comprends bien tu as 2 BP et pour 1 des deux l'action est
> >> différente
> >> en fonction de l'état du premier
> >>
> >> états des BP :
> >> BP1 = on ou off
> >> BP2 = on ou off
> >>
> >> donc un truc du genre :
> >>
> >> Si BP1 = on
> >> si BP2 = on => lampe1 = on
> >> si BP2 = off => lampe1 = off
> >> sinon
> >> si BP2 = on => lampe2 = on
> >> si BP2 = off => lampe2 = off
> >>
> >> est-ce bien ça ?
> >>
> >> qu'entends tu par 4 modes et 4 inter ?
> >>
> >> sinon oui tu peux envoyer une valeur d'éclairement ce n'est pas en hexa
> >> mais soit 0-255 ou 0-100 (%) en fonction de la définition de l'object de
> >> commande valeur d'éclairement respectivement 5.xxx ou 5.001
> >>
> >> exemple :
> >> <action type="set-value" id="Set_valeur_eclairement_lampe1" value="50"/>
> >>
> >> @+
> >> Anthony.
> >>
> >>
> >> > Bonjour,
> >> >
> >> > je me permet de poster a la suite de ton sujet car mon problème ce
> >> situe
> >> > aussi dans la rédaction de rules linknx.
> >> >
> >> > En fait, j'aimerai définir l'action d'un bouton a partir d'un autre
> >> > bouton.
> >> > Je m'explique:
> >> >
> >> > Si le bouton A est on, alors lors de l'appui sur le bouton 1 vas
> >> allumer
> >> > une
> >> > certaine lumière, mais si le bouton B est on, alors je voudrais que le
> >> > bouton 1 allume une autre lumière.
> >> >
> >> > Plus clairement j'aimerai définir l'action d'un bouton en fonction du
> >> > contexte dans lequel ce situ une pièce de ma maison (salle de
> >> projection
> >> > mais aussi de réception) que je définit en tournant un commutateur...
> >> >
> >> > La seule manière de faire que j'ai trouvé:
> >> >
> >> > <rule id="alarme">
> >> > <condition type="and">
> >> > <condition type="object" id="commut1"
> >> value="on"
> >> > trigger="true"/>
> >> > <condition type="object" id="interrupteur 1"
> >> > value="on" trigger="true"/>
> >> > </condition>
> >> > <actionlist>
> >> > <action type="set-value" id="lampe1"
> >> > value="on"/>
> >> > </actionlist>
> >> > </rule>
> >> >
> >> > <rule id="alarme">
> >> > <condition type="and">
> >> > <condition type="object" id="commut2"
> >> value="on"
> >> > trigger="true"/>
> >> > <condition type="object" id="interrupteur 1"
> >> > value="on" trigger="true"/>
> >> > </condition>
> >> > <actionlist>
> >> > <action type="set-value" id="lampe1"
> >> > value="off"/>
> >> > </actionlist>
> >> > </rule>
> >> >
> >> > mais il y a peut être plus simple et moins lourd, car j'ai 4 modes et
> >> 4
> >> > interrupteurs avec a chaque fois des ambiances différentes...
> >> >
> >> > Autre question, est-ce que je peut envoyer une valeur d'éclairement (a
> >> ce
> >> > moment la en hexa)?
> >> >
> >> > Merci
> >> >
> >> > Si je doit refaire une nouvelle discutions dites le moi.
> >> >
> >> > Le 5 avril 2011 13:49, Casi <yannick@magikdo.com> a écrit :
> >> >
> >> >> Super, effectivement ça fonctionne! Merci je n'avait pas du tout
> >> >> pensé a cette syntaxe.
> >> >>
> >> >> On 5 avr, 13:45, Anthony PENHARD <a.penh...@gmail.com> wrote:
> >> >> > Bonjour,
> >> >> >
> >> >> > comme ça c'est mieux je pense :
> >> >> >
> >> >> > <rule id="escalier_Auto">
> >> >> > <condition type="and">
> >> >> > <condition type="or">
> >> >> > <condition type="object" id="a" value="on" trigger="true"/>
> >> >> > <condition type="object" id="b" value="on" trigger="true"/>
> >> >> > <condition type="object" id="c" value="on" trigger="true"/>
> >> >> > </condition>
> >> >> > <condition type="object" id="d" value="on" trigger="true" />
> >> >> > </condition>
> >> >> > <actionlist>
> >> >> > <action type="set-value" id="xxx" value="on" flags="f"/>
> >> >> > </actionlist>
> >> >> > </rule>
> >> >> >
> >> >> > @+
> >> >> > Anthony.
> >> >> >
> >> >> > Le 5 avril 2011 13:39, Casi <yann...@magikdo.com> a écrit :
> >> >> >
> >> >> >
> >> >> >
> >> >> >
> >> >> >
> >> >> >
> >> >> >
> >> >> > > Bonjour je cherche la syntax pour faire ceci :
> >> >> >
> >> >> > > Si a=on ou b=on ou c=on ET d=on Alors xxx=on
> >> >> >
> >> >> > > Je l'ai traduit comme ça mais ça ne fonctione pas :
> >> >> >
> >> >> > > <rule id="escalier_Auto">
> >> >> > > <condition type="or">
> >> >> > > <condition type="object" id="a"
> >> >> value="on"
> >> >> > > trigger="true"/>
> >> >> > > <condition type="object" id="b"
> >> >> value="on"
> >> >> > > trigger="true"/>
> >> >> > > <condition type="object" id="c"
> >> >> value="on"
> >> >> > > trigger="true"/>
> >> >> > > </condition>
> >> >> > > <condition type="and">
> >> >> > > <condition type="object" id="d"
> >> >> value="on"
> >> >> > > trigger="true" />
> >> >> > > </condition>
> >> >> > > <actionlist>
> >> >> > > <action type="set-value" id="xxx"
> >> >> value="on"
> >> >> > > flags="f"/>
> >> >> > > </actionlist>
> >> >> > > </rule>
> >> >>
> >> >
> >>
> >>
> >>
> >
>
>
>