Skip to main content

Mode d'emploi

Affichage de la durée d'événements spécifiques sous la forme d'une étiquette distincte

Il est parfois intéressant de connaître la durée d'un événement spécifique et il est nécessaire d'afficher cette durée sous la forme d'un nouveau Tag dans le diagramme de focus.

Voici 3 façons d'afficher la durée d'un Événement sous la forme d'un nouveau Tag :

  1. Créez un Generador de etiquetas - Formule qui est égal à 0 au début de l'Événement et égal à 1 à la fin de l'Événement.

    Formule:

    if(and(a="ACTIVE", b="INACTIVE"), 0, if(and(a="INACTIVE", b="ACTIVE "), 1,  sqrt(-1))) 

    Mappage de variables :

    a = Tag discret/ string (pas de décalage) ;

    b = discret/ string tag (shift : 1s)

  2. La pente du Tag résultant de l'étape 1 est inversement proportionnelle à la durée de l'Événement. Calculer la pente de l'étiquette de la formule précédente peut être converti en minutes/heures/jours en multipliant la pente par un facteur.

    Formule [Minutes] : if((a-b)&0, (1/(a-b)/60), 0)

    Formule [Heures] : if((a-b)&0, (1/(a-b)/3600), 0)

    Formule [Jours] : if((a-b)&0, (1/(a-b)/ 86400), 0)

    1. Displaying duration of specific events as a separate tag.jpg

Dans cet exemple, l'objectif est d'afficher la durée lorsque le niveau est compris entre 10 et 30.

  1. Créez un Tag de formule qui est égal à 0 au début de l'événement et égal à 1 à la fin de l'événement.

    Formule :

    if(and(LEVEL_now>10, LEVEL_before<10), 0,  if(and(LEVEL_now>30, LEVEL_before<30), 1,  sqrt(-1))) 

    Mappage de variables :

    LEVEL_now = Tag de niveau analogique (pas de décalage) ;

    LEVEL_before = tag de niveau analogique (décalage : 1min)

  2. La pente du Tag résultant de l'étape 1 est inversement proportionnelle à la durée de l'Événement. Calculer la pente de l'étiquette de la formule précédente peut être converti en minutes/heures/jours en multipliant la pente par un facteur.

    Formule [Minutes] : if((a-b)&0, (1/(a-b)/60), 0)

    Formule [Heures] : if((a-b)&0, (1/(a-b)/3600), 0)

    Formule [Jours] : if((a-b)&0, (1/(a-b)/86400), 0)

    Cartographie variable :

    a = Tag de niveau analogique (pas de décalage) ;

    b = tag de niveau analogique (décalage : 1s)

    2. Displaying duration of specific events as a separate tag.jpg
  1. Créez un nouveau Tag Formula qui affiche la valeur 1440 (minutes par jour) si l'événement en question se produit.

    Formula: if(a="PHASE2",1440,0)-b*0

    Mappage de variables :

    a = Tag discret/ string (pas de décalage) ;

    b = tout Tag analogique (décalage : 1s)

    Nous utilisons ici l'astuce suivante :

    https://userguide.trendminer.com/en/74136-stepped-formula-tags.html

  2. Créez un Tag d'agrégation qui calcule l'intégrale sur une fenêtre mobile donnée (choisissez-la plus grande que votre durée maximale prévue).

    Opérateur : Intégral

    L'unité de marquage est "par jour" L'unité de marquage est "par jour".

    Direction : "Central".

    Agrégation par : Il est important d'identifier la fenêtre d'agrégation la plus appropriée pour cette situation. Si la méthode choisie est trop longue, elle pourrait potentiellement chevaucher une autre période au cours de laquelle l'Événement d'intérêt se produit. Veuillez tenir compte de cette considération.

    La valeur maximale des agrégations est égale à la durée de l'événement considéré.La valeur maximale des agrégations est égale à la durée de l'événement considéré.

    Astuce

    La valeur de la durée est inexacte de ±1 minute en raison de l'indexation.