Aller au contenu

Messages recommandés

  • 4 semaines après...
Posté(e)

Bonjour àtous

J ai besoin un ti coup de main

Je cherche àréaliser dans un module virtuel un code LUA permetant d'enregistrer la valeur du spider dans une variable (varspider)

Ex: si je déplace mon spider á 25, automatiquement ma variable (varspider) passe a 25

Posté(e)

Bon sans rire c'est tout bête. Si il s'agit bien d'un slider dans un module virtuel, tu peux envoyer la valeur àta variable àchaque fois que tu changes sa position.

Indique ca en LUA dans la case du slider:

fibaro:setGlobal("varslider", _sliderValue_)
Posté(e) (modifié)

Merci bien

 

Désolé mais je suis le champion des fautes d’orthographe   :(

Modifié par Krikroff
Posté(e)

par contre mon slider â€‹par défaut fonctionne de 0 à  100.

 

comment pourrai-je le faire fonctionnaire de 0 à  1500 ?

Posté(e)

Je ne pense pas que ce soit possible de changer l'échelle par défaut du slider...

Par contre si ce qui t’intéresse est d'avoir la valeur entre 0 et 1500 dans ta variable globale, tu peux mettre un coefficient dans le code que je t'ai donné. Mais tu auras des valeurs qui seront uniquement des multiples de 15.

fibaro:setGlobal("varslider", _sliderValue_) * 15

 

Tu peux du coup avoir en dessous de ton slider la valeur récupérée de ta variable globale, pour voir en direct le changement quand tu bouges le slider.

Ajoute un Label (ou étiquette maintenant que c'est traduit en français) et dans le main loop colle ce code

local Value = fibaro:getGlobalValue("varslider")
fibaro:call(<ID du module>, 'setProperty', 'ui.Label1.value', Value)

Indique le numéro de ton module et si tu n'as pas d'autres étiquettes dans ton module virtuel ne change rien d'autre, sinon change Label1 par l'ID de ton nouveau label.

Posté(e)

Tu peux essayer ceci pour appliquer le coef. aussi sur la variable globale

fibaro:setGlobal("varslider", tonumber(_sliderValue_)*15)
Posté(e)

Oui mais pour combien de temps, je suis prudent maintenant ils font trop le yoyo un coup le type est passe partout un coup c'est sensible au type :P

Posté(e)

merci a vous deux, pour la multiplication de la valeur ça fonctionne 

 

Mai pour le retour de la valeur sa fonction pas 

ID du module c'est:    ID du slider ou ID du module virtuel ? 

label c'est quoi exactement ?

local Value = fibaro:getGlobalValue("varslider")
fibaro:call(<ID du module>, 'setProperty', 'ui.Label1.value', Value)
  • 1 mois après...
Posté(e)

bonsoir

 

J’ai créé un code qui me permet d'activer trois lampes au choix, à  partir de l'interrupteur sur le cordon d'alimentation d'une lampe de chevet.

Comment ça fonctionne:

1-  j'allume ma lampe variable passe à  1 et allume lampe 1

ou

2-  j'allume ma lampe 2fois (allume, éteint, allume), la variable passe à  2 et allume lampe 2

ou

3-  j'allume ma lampe 3 fois (allume, éteint, allume, éteint, allume), la variable passe à  3 et allume lampe 3

ou

4- j'allume ma lampe 4 fois (allume, éteint, allume, éteint, allume, éteint, allume),la variable passe à  0 (remise à  zéro de la variable)

 

j'ai deux probleme,

1- si je souhaite sélectionner la lampe N°3 comment éviter d'activer les lampes  1 et 2

 

2- j'ai pas encore trouver comment faire code pour la remise a zero.

--[[
%% properties
221 power
%% globals
var23
--]]



local val = fibaro:getValue(221, "value");

if (tonumber(val) >= 1) then
local var = fibaro:setGlobal('var23', fibaro:getGlobalValue('var23') + 1); 
  
 end

---si la variable = 1 alors on lampe bar N°1---
local value = fibaro:getGlobalValue('var23')
if (value == '1') 
  then  
fibaro:call(60, 'turnOn'); 
  
  end

---si la variable = 2 alors on lampe SB AMELIA N°2---
local value = fibaro:getGlobalValue('var23')
if (value == '2') 
  then  
fibaro:call(169, 'turnOn');  
  
  end

---si la variable = 3 alors on lampe CH CHAMBRE N°3 ---
local value = fibaro:getGlobalValue('var23')
if (value == '3') 
  then  
fibaro:call(167, 'turnOn');
  
  end

j'ai deux probleme,

1- si je souhaite sélectionner la lampe N°3 comment éviter d'activer les lampes  1 et 2

 

2- j'ai pas encore trouver comment faire code pour la remise a zero.

  • 1 an après...
Posté(e)

Bonjour a tous

 

je cherche un moyen de modifier la valeur des paramètre d'un FGRM-222  (Protection de commande)

 

"RFProtectionState": "1",  la passé à   = 0

et 

 

"localProtectionState": "2" la passer a = 5

 

 

Moyen choisi pour modifier les paramètres:

 

si variable securitée_1 =ON alors     "localProtectionState": = 0

et pour l'autre

si variable sécurité_2 =ON alors      "localProtectionState" = 5

 

pour info les paramètre correspond à  ça:

post-112-0-26091000-1458264928_thumb.jpg

 

merci d'avance pour votre aide.

  • 9 mois après...
Posté(e)

salut

 

je recherche de l'aide pour faire clignoté une lampe avec un code lUA

 

j'ai deja essayer plusieur truc mai je n'y arrive pas .

 

 

merci d'avance 

 

Posté(e)

Bonjour

@ 971jmd

Voir si le FGS 223 peut répondre à ton besoin, il a a un mode intégré flash voir paramètre 13 , non testé.

13. First channel - pulse time for flashing mode
This parameter allows to set time of switching to opposite state in
flashing mode.
Available settings: 1-32000 (0.1-3200.0s, 0.1s step) - time parameter
Default setting: 5 (0.5s) Parameter size: 2 [bytes]

  • 4 mois après...
Posté(e)

Bonjour,

Je suis épaté d'une telle connaissance des fonctionnalités de Fibaro.

J'ai une question, et pardonnez-moi si elle n'est pas dans la bonne rubrique:

- Lorsque l'on crée un Module Virtuel, y-a t'il moyen de lui donner un type (par exemple, thermomètre, ou mesure de consommation, ...) afin de le voir comme si c'était un "vrai" module Fibaro ?

Merci pour vos lumières !

 

Yves

  • 8 mois après...
Posté(e)

@Javier Carelli

Tu n'as pas l'air d'aimer le LUA ;-) Je serais toi, j'essaierais GEA

 

avec une syntaxe pus simple, tu pourrais faire tout ce que tu souhaites.

Exemple pour ta batterie : tu recevras un message avec le nom du module qui aura un niveau de batterie < 30

 

GEA.add({"Batteries", 30}, 30, " Batterie faible : {Name}")

 

×
×
  • Créer...