Alarms

Is there a way or a piece of cicode that automatically acknowledges alarms when they are triggered or entered into the alarm server?

Parents
  • Hi  

    There isn't a built in mechanism to achieve this.

    I have done this in my test projects before, by setting up an event (period is 10 minutes) and it will run the following cicode:

    AlarmAck(2,0,"Cluster1");

    I run the "AckAllAlarms" Event on the Client process.

    See the online help for more details on the arguments:

    https://docs.aveva.com/bundle/plant-scada/page/1033445.html

    I wouldn't recommend this is done on a production system, as you want traceability for the operators acknowledging alarms and taking appropriate action.

    Kind regards

    Olivier

  • Hi Oliver,
    Since traceability is not an issue at our company I put this command into the event on the ioserver like:
    Now all alarms are automatically acknowledged every 10 second.

    I have a pagetemple from where I call the alarmpage '1_Alarm' via a button like:

    The '1_Alarm' page looks like this:

    There is a cicode object where I use these commands.

    AlarmDsp(21,24,4);
    AlarmSetInfo(-1,8,0);
    AlarmSetInfo(-1,2,1);
    AlarmSetInfo(-1,10,"{Time,0}{Tag,1}");
    AlarmSetInfo(-1,9,1);

    First is to fill the list AN21, 24 rows, 4 all alarms
    Second and third are to display only category 1 alarms.
    forth is to sort on time and Alarm tag name.

    Somehow I can not get it to sort first on time and then on tag.
    I get this:

    seems like the tag is sorted and not sorted first by time.

    I thought it could be a timing issue so I did this:

    AlarmDsp(21,24,4);
    AlarmSetInfo(-1,10,"{Time}");
    AlarmSetInfo(-1,9,0);
    AlarmSetInfo(-1,8,0);
    AlarmSetInfo(-1,2,1);
    Sleep(2);

    but the result also NOK (same output)

    Also changing '-1' to 21 (AN21) gives same result.

    So I deleted all besides AlarmDsp(21,24,4);

    then I get this alarm list structure

    The I add:
    AlarmSetInfo(-1,8,0);
    AlarmSetInfo(-1,2,1);

    because I only want category = 1 alarms and get this:

    so far so good.

    The adding:
    AlarmSetInfo(-1,10,"{Time}");
    AlarmSetInfo(-1,9,0);

    Because I want sorted on time the alarm was raised/activated.

    The I get this:

    The same list, not sorted.

    Also, every time I update the page code and restart, the times displayed are changed to the time when I updated the page.


    Any idees 

  • Hi  

    I haven't used these legacy alarm display pages or functions for quite some time. I'd recommend considering modern templates like SxW or Tab Style or Situational Awareness. Could you try moving the AlarmSetInfo function calls to Page Entry? This might help with the timing or flickering.

    I'm not sure why the times displayed change when changing the page. The page alarm display shouldn't modify the actual alarm raised time. So something seems incorrect there.

    Kind regards

    Olivier

Reply
  • Hi  

    I haven't used these legacy alarm display pages or functions for quite some time. I'd recommend considering modern templates like SxW or Tab Style or Situational Awareness. Could you try moving the AlarmSetInfo function calls to Page Entry? This might help with the timing or flickering.

    I'm not sure why the times displayed change when changing the page. The page alarm display shouldn't modify the actual alarm raised time. So something seems incorrect there.

    Kind regards

    Olivier

Children
No Data