Enable and disable alarms on a workstation based on which user is logged in

One of my customers has a setup where they currently have all alarms assigned to all workstations.  Now they are adding a new plant area (call it NEW_UTILITIES) and only want that area assigned to one workstation (called OPST1) and not the others.  The trick is that when a certain operator account is signed in to that workstation they only want to see the new plant area's alarms and not any others but when a different user account logs in they can see all alarms including the new area.

I'm looking for an easy way to do this.  They are currently on Operate but will be transitioning to Live hopefully later this year.

Thank you

9 Replies

  • Alarms and control is handled by both the workstation area(s) and the operator area(s), ie both keys need to be present for the alarm to annunciate at that workstation.

    You can assign NEW_UTILITIES (and other areas if needed) to OPST1, and assign only NEW_UTILITES (and AREA_A) to the certain operator. This will allow the certain operator to see the alarms for just NEW_UTILITIES even though there are other areas assigned to the workstation.

    When another operator signs in, they will get the alarms for all areas that are assigned to them and to the workstation. If they have all areas assigned, then the will get all alarms, including NEW_UTILITES. If you don't want this operator to have NEW_UTILITIES alarms, then unassign this area from their profile.

    Hope this helps!
  • In reply to KeithStThomas:

    Thanks for the response. I tried that but alarms from other areas are still visible even when the limited operator is logged in. I even tried logging out completely and then logging in but I still get the same thing.
  • In reply to TPatterson:

    Are they visible in the Alarm Banner/Alarm list, or visible on displays? The Displays show status of alarms based on the alarm parameter. The Alarm Banner and alarm list show alarm status in the Alarm system of the workstation and through this system you get the filtered content based on user and workstation plant area assignments.

    Also, your Operator will be unable to acknowledge any alarms in plant areas he is not assigned. IF you log off DeltaV, the banner and alarm list should clear.

    Andre Dicaire

  • Hello,

    There is a way to achieve this, but it depends on what is important in this case. For this case on that single workstation, is it that they want to segregate the control or just filter the alarms out?

    If the answer is to only filter the alarms out, you can create some scripting that will detect a user log on and then based on the user name, automatically adjust the area filtering. I have done something similar at a facility where all workstations have all areas assigned, but they desired to automatically segregate the alarm filtering based on the workstation name. So, anytime a user logs into the workstation, the alarm filtering is automatically applied.

    If the answer is that they truly want to segregate the control and the alarms, then I would suggest converting that workstation into a terminal server with two sessions. Configure each session with the correct area assignment settings, then restrict the sessions to the specific users. Thus, when they log in, they will be limited in what sessions they can access.
  • In reply to dave_marshall:

    Thanks Dave! The first scenario is exactly what I need. Do you have a sample of the script you used? If not, no problem. Thanks again.
  • In reply to dave_marshall:

    Thanks Dave! The first scenario is exactly what I need. Do you have a sample of the script you used? If not, no problem. Thanks again.
  • In reply to TPatterson:

    Here is sample code for manipulating area filters with a button click for a starting point.

    Private Sub CommandButton1_Click()

    On Error GoTo ErrorHandler 'Area 2

       frswritevalue "1", "dvsys.THISUSER/AREAFILT[28].F_CV"  'CRUDE

       frswritevalue "1", "dvsys.THISUSER/AREAFILT[22].F_CV"  'NHT

       frswritevalue "1", "dvsys.THISUSER/AREAFILT[23].F_CV"  'offsites

       frswritevalue "1", "dvsys.THISUSER/AREAFILT[21].F_CV"  'Plat

       frswritevalue "1", "dvsys.THISUSER/AREAFILT[31].F_CV"  'Plat Regen

       frswritevalue "1", "dvsys.THISUSER/AREAFILT[17].F_CV"  'ROSE

       frswritevalue "1", "dvsys.THISUSER/AREAFILT[53].F_CV"  'Safety

       frswritevalue "1", "dvsys.THISUSER/AREAFILT[29].F_CV"  'Vac

       frswritevalue "1", "dvsys.THISUSER/AREAFILT[24].F_CV"  'Wireless

     Exit Sub



    End Sub

  • In reply to MPHymel:

    This code will only work if the logged-on user has rights to enable/disable area alarm filters, which operators don't have. Writing a "1" will enable the filter, "0" to disable. If the operator were to have rights to turn on/off area alarm filtering for this code to work, then they can do so anytime from the Area Alarm Filtering graphic which can lead to situations where the operator manually disables area alarms then they won't get alarms when they should.

    I highly recommend the multiple user approach for alarm segregation. Each user can have different areas assigned to them so they only get alarms in the alarm banner for areas they can control.
  • In reply to TPatterson:

    Hello, sorry for the delay. I have a document that describes what I've done. Basically, I have a master manager control module and a class-based control module for each workstation. This workstation module contains all of the filter settings for that workstation. When a user logs in, the logic will acquire the filter settings for that workstation and then apply them.

    Please DM me and I can discuss this with you.