Class MinMaxThresholdTFJava


public class MinMaxThresholdTFJava extends JavaTransferExecutor<Alarm>
The TF implementing a Min/Max threshold TF (there is also a scala implementation for comparison). The alarm is activated when the alarm is higher then the max threshold or when it is lower then the low threshold. We could call this alarm a "Non-nominal temperature" because it is equally set if the temperature is too low or is too high but cannot distinguish between the 2 cases. If we want to distinguish between the 2 cases, we need 2 ASCE having the same input, one checking for the high value and the other checking for the low value. To be generic, the value of the properties and that of the IASIO are converted in double. The value of the Min and Max thresholds are passed as properties:
  • HighON: the (high) alarm is activated when the value of the IASIO is greater then HighON
  • HighOFF: if the (high) alarm is active and the value of the IASIO goes below HighOFF, then the alarm is deactivated
  • LowOFF: if the (low) alarm is active and the value of the IASIO becomes greater then LowOFF, then the alarm is deactivated
  • LowON: the (low) alarm is activated when the value of the IASIO is lower then LowON
Author:
acaproni
  • Field Details

    • highOnPropName

      public static final String highOnPropName
      The name of the HighOn property
      See Also:
    • highOffPropName

      public static final String highOffPropName
      The name of the HighOff property
      See Also:
    • lowOnPropName

      public static final String lowOnPropName
      The name of the lowOn property
      See Also:
    • lowOffPropName

      public static final String lowOffPropName
      The name of the lowOff property
      See Also:
    • alarmPriorityPropName

      public static final String alarmPriorityPropName
      The name of the property to set the priority of the alarm
      See Also:
    • highOn

      public final double highOn
      The (high) alarm is activated when the value of the HIO is greater then HighON
    • highOff

      public final double highOff
      if the (high) alarm is active and the value of the HIO goes below HighOFF, then the alarm is deactivated
    • lowOn

      public final double lowOn
      the (low) alarm is activated when the value of the HIO is lower then LowON
    • lowOff

      public final double lowOff
      if the (low) alarm is active and the value of the HIO becomes greater then LowOFF, then the alarm is deactivated
    • alarmPriority

      public final Priority alarmPriority
    • additionalProperties

      public final Map<String,String> additionalProperties
      Additional properties
  • Constructor Details

    • MinMaxThresholdTFJava

      public MinMaxThresholdTFJava(String cEleId, String cEleRunningId, long validityTimeFrame, Properties props)
      Constructor
      Parameters:
      cEleId - : the ID of the ASCE
      cEleRunningId - : the runningID of the ASCE
      validityTimeFrame - : The time frame (msec) to invalidate monitor points
      props - : the user defined properties
  • Method Details

    • initialize

      public void initialize(Set<org.eso.ias.asce.transfer.IasioInfo> inputsInfo, org.eso.ias.asce.transfer.IasioInfo outputInfo) throws Exception
      Initialize the TF by getting the four properties (being the properties lazy, they will be initialized here. This method merely checks if the values of the properties are coherent with the definitions given above.
      Specified by:
      initialize in class JavaTransferExecutor<Alarm>
      Parameters:
      inputsInfo - The IDs and types of the inputs
      outputInfo - The Id and type of thr output
      Throws:
      Exception - in case of errors
    • shutdown

      public void shutdown()
      Description copied from class: TransferExecutor
      Shuts down the BehaviorRunner when the IAS does not need it anymore. This life cycle method is called last, to clean up the resources. It is supposed to return quickly, even if not mandatory.
      Specified by:
      shutdown in class TransferExecutor
      See Also:
    • eval

      public IasIOJ<Alarm> eval(Map<String,IasIOJ<?>> compInputs, IasIOJ<Alarm> actualOutput) throws Exception
      See JavaTransferExecutor#eval(Map, IASValue)
      Specified by:
      eval in class JavaTransferExecutor<Alarm>
      Parameters:
      compInputs - : the inputs to the ASCE
      actualOutput - : the actual output of the ASCE
      Returns:
      the computed value to set as output of the ASCE
      Throws:
      Exception - in case of error