opérateur dans une règle

Échangez ici vos astuces sur la gestion des règles eedomus

opérateur dans une règle

Messagepar thrymartin » 27 Déc 2020 09:53

Hello,

voila ce que je veux, c'est pas pressé, c'est pour cet été évidemment:

j'ai remarqué que si en été, la cave pouvait monter à plus de 15°C, la nuit en été, on a souvent moins de 10°C - donc l'idée c'était de ventiler de l'extérieur vers l'intérieur à ce moment la

J'ai donc déjà installé cette ventilation à l'envers
mais je voudrais que ça se déclenche avec un bon gradient de température et pas simplement parce qu'il fait juste 1/10 de degré en moins dehors
par exemple une règle de type :

si température extérieure devient inférieure à température cave MOINS 5°C
et que température cave est plus grand que 10°C
et que pluie des dernières 24h = 0 (pour pas aspirer de l'humidité ou des gouttes de pluie dans le conduit)

alors ventile
(et l'inverse pour arrêter)

Sauf que... MOINS 5°C, on ne peut pas mettre ça dans une règle...

Vous sautez la difficulté comment au plus simple ?
thrymartin
 
Messages : 920
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: opérateur dans une règle

Messagepar merguez07 » 27 Déc 2020 18:32

Bonsoir,

peut être en intégrant le plugin "calculateur mathematique" qui calculerait la différence de température avec une hystéresis et le mettre dans la règle avec un test <0°C
tuto 1 -->Programmation des scripts Eedomus
tuto 2 -->SmartDevice
tuto 3 -->Le déclenchement de règles
scripts -->Météo du jour | GH Thermostat | TotalWatt | Detecfire | smartbattery
Skype Eedomus -->lien vers le skype Eedomus
merguez07
 
Messages : 2346
Inscription : 15 Sep 2017
Localisation : Le Teil en Ardèche

Re: opérateur dans une règle

Messagepar thrymartin » 29 Déc 2020 08:39

OK, merci, via script donc,

Comme je récupère ici la temp. extérieure qui dépend du script de mobile alerts, j'allais me dire que rajouter une ligne dans ledit script pour avoir une entrée XML de plus pour utilisation dans un nouveau capteur serait plus simple, et puis mon tour n'a fait qu'un sang...

Je me demandais pourquoi on ne peut pas étalonner dans les capteurs, mais en fait on peut puisque dans le XPath on peut utiliser des opérandes (+-* et div et même mod etc.)... le pire c'est que c'est ce que je répondais dans ce forum quand certains voulaient changer d'unité (genre W-> kW)
avec une température //temp_2 ça devient //Temp_2 + 5
(avec un nouveau capteur évidemment).
thrymartin
 
Messages : 920
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: opérateur dans une règle

Messagepar opa95 » 29 Déc 2020 10:20

Bonjour thrymartin
Tu as tout à fait raison pour le XPATH : il fonctionne très bien; il y a juste une anomalie si on veux tester en utilisant le bouton "tester" après le XPATH, chez moi il oublie de recopier le signe"+" ou "*" mais c'est OK pour le "-" ou le "div" : "100+//uptime" devient "100 //uptime" dans le panneau de test qu'il faut donc corriger pour tester.
Bonnes fêtes
eedomus+, Zibase V1, RFP1000, RFXcom, RadioDriver CPL 630 X2D, capteurs puissance OWL, thermometres Oregon, téléinfo (USB Linky), detecteurs ouverture X2D, pilotage chauffage X2D, Ecoflow River PRO, PAC Shogun (Atlantic-Cozytouch)
opa95
 
Messages : 723
Inscription : 04 Fév 2019
Localisation : Val d'Oise

Re: opérateur dans une règle

Messagepar MRAB » 29 Déc 2020 17:23

Bonjour,

Pour éviter d'ajouter un capteur uniquement pour le décaler de 5° d'un autre capteur, voila comment je procéderai :

Créer un état virtuel appelé "temp cave moins 5" par exemple.

Ensuite créer un actionneur Http qui utilise le script math.php et fait l'opération : ?exec=math.php&idperiph=xxxxxxx&operation=soustraction&val1=[LAST_VALUE PERIPH_ID=yyyyyy]&val2=5

ou xxxxx est l'id de ton état virtuel et yyyyy celui de ta temp. cave.

Définir une fréquence de requête de 30mn par exemple.

Toutes les 30min ton état virtuel sera le reflet de ta température cave moins 5 degrés.

Utiliser ensuite ton état virtuel dans les critères de ta règle.
MRAB
 
Messages : 182
Inscription : 08 Fév 2015

Re: opérateur dans une règle

Messagepar thrymartin » 29 Déc 2020 20:12

opa95 a écrit:il oublie de recopier le signe"+"


je n'ai pas vu de bug avec l'addition avec le test, c'est d'ailleurs la première chose que j'ai faite sur un capteur dont le XPtah était //temp_2 : un test en faisant //temp_2 + 5 et j'obtiens bien dessous la valeur souhaitée, que ce soit en appelant le script ou après en utilisant le résultat xml

peut être que ça a été corrigé ?
thrymartin
 
Messages : 920
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: opérateur dans une règle

Messagepar opa95 » 30 Déc 2020 10:42

Chez moi, ce matin ça ne fonctionne toujours pas même en changeant de navigateur.
Bizarre, Bizarre...
"100+//uptime" devient "100 //uptime" dans le panneau de test.
Le principal c'est que la box comprenne bien.
eedomus+, Zibase V1, RFP1000, RFXcom, RadioDriver CPL 630 X2D, capteurs puissance OWL, thermometres Oregon, téléinfo (USB Linky), detecteurs ouverture X2D, pilotage chauffage X2D, Ecoflow River PRO, PAC Shogun (Atlantic-Cozytouch)
opa95
 
Messages : 723
Inscription : 04 Fév 2019
Localisation : Val d'Oise

Re: opérateur dans une règle

Messagepar thrymartin » 01 Jan 2021 16:55

ah bah non, pas 100+//uptime mais //uptime + 100
thrymartin
 
Messages : 920
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: opérateur dans une règle

Messagepar opa95 » 01 Jan 2021 17:59

J'ai tout essayé, avant , après, avec parenthèses, sans, avec espaces, sans ...
Une formule de ce genre fonctionne très bien si je la tape directement dans le panneau de test :
1000+//uptime+10000
mais si je l'appelle depuis le panneau du widget, elle se transforme en
1000 //uptime 10000
mais le widget fonctionne très bien (ce qui est le principal)
par contre, la formule 100-((//uptime)-1000) se recopie très bien, ainsi que 100*((//uptime)*1000).
C'est comme si le système interprète "+100" comme " 100" symbole de signe plutôt que d'opération.
C'est plus une question de principe, il suffit que je la corrige dans le panneau ou que je fasse un copier-coller depuis le widget.
eedomus+, Zibase V1, RFP1000, RFXcom, RadioDriver CPL 630 X2D, capteurs puissance OWL, thermometres Oregon, téléinfo (USB Linky), detecteurs ouverture X2D, pilotage chauffage X2D, Ecoflow River PRO, PAC Shogun (Atlantic-Cozytouch)
opa95
 
Messages : 723
Inscription : 04 Fév 2019
Localisation : Val d'Oise

Re: opérateur dans une règle

Messagepar thrymartin » 01 Jan 2021 20:16

Après, même si le système a ses règles de priorité, c'est bien de les imposer avec des parenthèses :

https://www.youtube.com/watch?v=tYf3CpbqAVo
thrymartin
 
Messages : 920
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: opérateur dans une règle

Messagepar thrymartin » 04 Jan 2021 11:11

Ah j'ai compris,
Comme je viens de faire le widget thermomètre + 4°C, effectivement, ça fonctionne
mais dans le test, le "+" effectivement disparait dans le cadre "xPath"
Sans importance puisque cela ne concerne que la page de test quand on l'appelle et qu'on peut tester en remettant ce fameux "+"

j'avais pensé à un problème de codage, mais au lieu de coder il ya plus simple, "plus", c'est "moinsmoins", alors on peut remplacer le signe plus "+" par moinsmoins "--"
dans le test ça fonctionne, dans le widget aussi : exemple, remplacer
// temp_2 + 4
par
//temp_2 -- 4

ou laisser comme ça...
thrymartin
 
Messages : 920
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: opérateur dans une règle

Messagepar opa95 » 04 Jan 2021 11:54

Pourquoi pas... , mais de toute façon ça n'affecte que le test et ce n'est pas très important : c'était juste une remarque et on pourrait corriger dans une version future.
Bonne année à tous
eedomus+, Zibase V1, RFP1000, RFXcom, RadioDriver CPL 630 X2D, capteurs puissance OWL, thermometres Oregon, téléinfo (USB Linky), detecteurs ouverture X2D, pilotage chauffage X2D, Ecoflow River PRO, PAC Shogun (Atlantic-Cozytouch)
opa95
 
Messages : 723
Inscription : 04 Fév 2019
Localisation : Val d'Oise

Re: opérateur dans une règle

Messagepar thrymartin » 08 Jan 2021 11:51

[transmission du signe "+" de "tester" - un script - dans la page de test]
Bart a réglé le problème, et ça roule
(si ça marche pas c'est à cause du cache, mais bon, perso, je n'ai pas eu à le vider)

Merci Bart
thrymartin
 
Messages : 920
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: opérateur dans une règle

Messagepar opa95 » 08 Jan 2021 12:10

Bonjour et merci à Bart et thrymartin.
c'est mieux ainsi :D
j'ai du relancer le navigateur qu'il fallait remettre à jour de toute façon.
eedomus+, Zibase V1, RFP1000, RFXcom, RadioDriver CPL 630 X2D, capteurs puissance OWL, thermometres Oregon, téléinfo (USB Linky), detecteurs ouverture X2D, pilotage chauffage X2D, Ecoflow River PRO, PAC Shogun (Atlantic-Cozytouch)
opa95
 
Messages : 723
Inscription : 04 Fév 2019
Localisation : Val d'Oise


Retour vers Règles et programmations

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 15 invité(s)