gxdn

Limiter

Limiter object can be used to set actions that are executed if target object crosses the threshold value for at least minimal duration time. .

Properties

  • 1. Logical Name
    Logical name of the object.
  • 2. Monitored value
    Defines monitored object and attribute index.
  • 3. Threshold active
    Provides the active threshold value to compare.
  • 4. Threshold normal
    Provides the normal threshold value to compare.
  • 5. Threshold emergency
    Provides the emergency threshold value to compare.
  • 6. Min over threshold duration
    Minimal over threshold duration in seconds required to execute the over threshold action.
  • 7. Min under threshold duration
    Minimal under threshold duration in seconds required to execute the under threshold action.
  • 8. Emergency profile
    Defined by emergency profile ID, activation time and emergency duration.
  • 9. Emergency profile group ID list
    Array of group id of the emergency profile.
  • 10. Emergency profile active
    Is emergency profile active.
  • 11. Actions
    Collection of scripts to execute if value goes up or down of the threshold.

Actions

There are no actions available for this object type.

Access data from ANSI C

//How to access limiter data.
if (object->monitoredValue != NULL)
{
  hlp_printLogicalName("Name: %s\r\n", object->monitoredValue->logicalName);
  bb_addString(&ba, ": ");
  printf("%d\r\n", object->selectedAttributeIndex);
}
var_print(&object->thresholdActive);
var_print(&object->thresholdNormal);
var_print(&object->thresholdEmergency);
printf("%d\r\n", object->minOverThresholdDuration);
printf("%d\r\n", object->minUnderThresholdDuration);
printf("%d\r\n", object->emergencyProfile.id);
time_print(&object->emergencyProfile.activationTime);
printf("%d\r\n", object->emergencyProfile.duration);
va_print(&object->emergencyProfileGroupIDs)
printf("%d\r\n", object->emergencyProfileActive);
hlp_printLogicalName("Name: %s\r\n", object->actionOverThreshold.logicalName);
printf(" %d\r\n", object->actionOverThreshold.scriptSelector);
hlp_printLogicalName("Name: %s\r\n", object->actionUnderThreshold.logicalName);
printf("%d\r\n", object->actionUnderThreshold.scriptSelector);