Escolar Documentos
Profissional Documentos
Cultura Documentos
Citect Pty. Limited makes no representations or warranties with respect to this manual and, to the
maximum extent permitted by law, expressly limits its liability for breach of any warranty that may be
implied to the replacement of this manual with another. Further, Citect Pty. Limited reserves the
right to revise this publication at any time without incurring an obligation to notify any person of the
revision.
COPYRIGHT
TRADEMARKS
Citect Pty Limited has made every effort to supply trademark information about company names,
products and services mentioned in this manual. Trademarks shown below were derived from
various sources.
IBM, IBM PC and IBM PC AT are registered trademerks of Internatrional Business Machine
Corporation.
MS-DOS, Windows, Windows 98, Windows 2000, Windows XP and Excel are trademarks of
Microsoft Corporation.
General Notice:
Some product names used in this manual are used for identification purposes only and may be
trademarks of their respective companies.
Protection of valuable plant equipment is a central feature of your CitectHMI/SCADA system. The
CitectHMI/SCADA alarm facility constantly monitors equipment data and alerts operators of any
equipment fault or alarm condition.
You can process each alarm individually, or assign each of your alarms to separate categories,
where they can be prioritised. You can then display, acknowledge, reset, and log all alarms in a
particular category.
You can also customise the order in which alarms will be displayed on the alarm summary page
using the SummarySort and SummarySortMode parameters. (This order will override the alarm
category priority order.)
To help operators with alarms, you can create graphics pages that contain information about the
alarms (such as the action an operator must perform to correct the situation). You can display these
pages automatically when the alarm occurs, or only when an operator uses the Alarm Help
keyboard command.
Alarm properties can also be used anywhere a normal variable tag can be used. For example the
status of an alarm could be used to change the colour of a symbol on a graphics page.
Multi-Digital Alarms use the output from three digital variables (for example: Tags A, B, and C) to
define eight states. The states represent all possible combinations of true/false values the variables
can have.
The tag values in each state are represented in the order Tag C, Tag B, Tag A. A true value is
represented by the tag letter, and 0 (zero) represents false.
When configuring the Multi-Digital Alarm Properties, you can set which states should trigger an
alarm, and specify Cicode functions to be called when alarms become active and inactive.
Examples
In the following example, Tag C is left blank, and the variables BIT_12 and BIT_1 are specified for
Tags A and B. With State 0BA specified to activate an alarm, when Tags A and B change to ON (1)
the alarm will activate.
Var Tag C
In this example, variables are specified for all three tags. If state CBA is specified to activate an
alarm, when all three variables change to ON (1) the alarm will activate.
The Alarm Delay property enables you to configure Digital, Analog, and Advanced Alarms so that
they do not activate unless their triggering conditions remain true for a specified period.
For Analog Alarms, this means the analog variable must fall within a specified range for the duration
of the Alarm Delay period before an alarm will activate. In the case of Digital and Advanced Alarms,
the triggering condition of the digital variable or Cicode expression must remain true for the delay
period.
An example of where Alarm Delay could be useful is in monitoring temperature. By setting a delay
period, you can filter out momentary alarms caused by the temperature moving in and out of
different ranges.
Each alarm in your system can be assigned to a category, and each category can be processed as
a group. For each category, you can set alarm display details (font and page type), logging details
(printer or data file), and the action to be taken when an alarm in the category is triggered (e.g.
activating an audible alarm).
Each category can have an associated priority. The alarm priorities can be used to order alarm
displays, providing useful filtering for the operator.
You can also customise the order in which alarms will be displayed on the alarm summary page
using the SummarySort and SummarySortMode parameters. (This order will override the alarm
category priority order.)
You can configure up to 16376 alarm categories. If you do not specify a category for an alarm, the
alarm has the same attributes as Alarm Category 0. If you do not define an Alarm Category 0,
CitectHMI/SCADA uses a default for the category.
Alarm ON STOP_PROCESS = 1;
Action
The digital variable STOP_PROCESS is set to ON when an alarm in this category is triggered.
NOTE: Do not put a blocking function in this field.
A special case of this command occurs when the Alarm ON Action is self-referring, with a form
such as TAG1 = TAG1 + 1 . This command will not work properly since CitectHMI/SCADA
does not reread the tags before processing the Alarm On action (for performance reasons).
This particular command will therefore initially set the value of TAG1 to 1 rather than
incrementing it.
To correctly run a command of this type in the Alarm ON Action, use TaskNew() to run your
own Cicode function to perform the tag command:
Alarm ON TaskNew("MyFunc","Data",5);
Action
You can change the default Summary Display Format for all alarms by setting the [Alarm]
DefSumFmt parameter.
NOTE: When the alarm is logged to a summary device (i.e. printed or written to a file or
database), the format specified for the logging device overrides the display format.
The Alarm Tag, Alarm Name, and Alarm Desc are three separate strings that you can associate
with the alarm. These are optional properties. CitectHMI/SCADA only uses them when details of
the alarm are displayed on the screen or logged to a device. You could use these properties to
define the alarm name, physical device, and description of the alarm.
NOTE: The following fields are implemented with extended forms (press F2).
The Alarm Tag, Alarm Name, and Alarm Desc are three separate strings that you can associate
with the alarm. These are optional properties. CitectHMI/SCADA only uses them when details of
the alarm are displayed on the screen or logged to a device. You could use these properties to
define the alarm name, physical device, and description of the alarm.
For each state, there are two fields on the Multi-Digital Alarms dialog. In the first field you can
enter a description (e.g. Healthy or Stopped), with a maximum of eight characters.
In the second field, you indicate whether the state should trigger an alarm. A value of 1
indicates an alarm state, 0 indicates no alarm will be triggered.
ON Function STOP_PROCESS = 1;
The digital variable STOP_PROCESS is set to ON when the alarm is triggered.
NOTE: Do not put a blocking function in this field.
A special case of this command occurs when the Alarm ON Function is self-referring, with a
form such as TAG1 = TAG1 + 1 . This command will not work properly since
CitectHMI/SCADA does not reread the tags before processing the Alarm On function (for
performance reasons). This particular command will therefore initially set the value of TAG1 to
1 rather than incrementing it.
To correctly run a command of this type in the Alarm ON Function, use TaskNew() to run your
own Cicode function to perform the tag command:
ON Function TaskNew("MyFunc","Data",5);
Suppression (Integer)
The number of the Suppression Group to which the alarm belongs. This is an integer (whole
number) value between 0 and 65535. Alarms in the same group display the same value in this
field.
This property is used in conjunction with Suppression Level (see below).
NOTE The value in the Suppression field MUST be an integer. If you wish to use assign a name
to a Suppression Group, you need to define the name as a label with an integer value.
The Alarm Tag, Alarm Name, and Alarm Desc are three separate strings that you can associate
with the alarm. These are optional properties. CitectHMI/SCADA only uses them when details of
the alarm are displayed on the screen or logged to a device. You could use these properties to
define the alarm name, physical device, and description of the alarm.
2nd Minutes 00 - 60
3rd Seconds 00 - 60
NOTE: The following fields are implemented with extended forms (press F2).
The Alarm Tag and Alarm Name are two separate strings that you can associate with the alarm.
These are optional properties. CitectHMI/SCADA only uses them when details of the alarm are
displayed on the screen or logged to a device. You could use these properties to define the alarm
name and the physical device, or the alarm name and description of the alarm.
NOTES: 1) When a tag value increases from High to High High within the High Delay Period,
the delay timer is reset. The High High Alarm is only activated if the value remains in
the High High range for the delay period.
2) When the value increases from High to High High after the High Delay period has
expired, a High Alarm is activated and then the delay period for the High High Alarm
begins.
3) If the tag value exceeds the High High value and then falls below it before the High
High Delay period expires, at the time it falls, the High Alarm is triggered immediately.
It has an ON time of when the tag value exceeded the High High value.
These points also apply to tag values travelling between Low and Low Low ranges.
Because a Low Alarm must precede a Low Low Alarm, when the Low Low Alarm is triggered it
replaces the Low Alarm. If you want an analog alarm to display more than one state on the
alarm page at the same time, configure a separate alarm for each state. (Each alarm would
monitor the same tag.)
Deviation Delay
The delay period for Deviation Alarms. The alarm will only activate if its triggering condition is
met for the duration of this period.
This property is optional. If you do not set a value, the Deviation Alarm is activated as soon as
the Variable Tag falls outside the deviation range.
NOTE: The delay period must be entered in the format HH:MM:SS (Hours:Minutes:Seconds).
The value must be between 0 seconds (00:00:00) and 24 hours (24:00:00).
NOTE: The following fields are implemented with extended forms (press F2).
The Alarm Tag, Alarm Name, and Alarm Desc are three separate strings that you can associate
with the alarm. These are optional properties. CitectHMI/SCADA only uses them when details of
the alarm are displayed on the screen or logged to a device. You could use these properties to
define the alarm name, physical device, and description of the alarm.
Delay (hh:mm:ss)
The delay period for the Advanced Alarm.
An Advanced Alarm becomes active when the result of the Cicode expression triggering the
alarm remains TRUE for the duration of the delay period. The active alarm has an ON time of
when the expression returned TRUE.
This property is optional. If you do not specify a value, the alarm becomes active as soon as
the triggering expression becomes true.
NOTE: The delay period must be entered in the format HH:MM:SS (Hours:Minutes:Seconds).
The value must be between 0 seconds (00:00:00) and 24 hours (24:00:00).
NOTE: The following fields are implemented with extended forms (press F2).
CitectHMI/SCADA allows you to customise the order in which alarms will be displayed on the alarm
summary page. You can do this using the SummarySort and SummarySortMode parameters. The
SummarySort parameter allows you to display alarms according to OnTime, OffTime, and AckTime.
SummarySortMode determines if the alarms will be arranged in ascending or descending order.
(The order set using these parameters will override the alarm category priority order.)
The Display Format specifies how alarms are displayed on the screen for the alarms and alarm
summary pages. For information on changing the order of alarms listed on the alarm summary
page see Alarm Summary Display Order.
Including CitectHMI/SCADA Data
Include CitectHMI/SCADA data by specifying the field name and width for each field to display. You
must enclose each field in braces {} and use the following syntax:
For example:
In this case, data displays in two fields - Tag, with 8 characters, and Name, with 32 characters. The
width specifier is optional - if you do not use it, the width of the field is determined by the number of
characters between the braces.
In this case, Name is followed by four spaces - the data {Name} displays with 8 characters.
NOTE: The screen resolution of your CitectHMI/SCADA computer determines the total number
of characters (and therefore the number of fields) that can be displayed on the alarms
page.
You can include fixed text by specifying the text exactly as it will display - for example:
Any spaces that you use in a text string are also included in the display.
Displaying Lists and Tables
To set the justification of the text in each field, use a justification specifier. You can use three
justification characters, L (Left), R (Right), and N (None) - for example:
The justification specifier is optional - if it is omitted, the field is left justified. If you use a justification
specifier, you must also use the width specifier.
To display field text in columns, use the tab character (^t) - for example:
Format {Tag,8}^t{Name,32}^t{Desc,8}
This format aligns the tag, name and description fields of the alarm when using a proportional font to
display the alarms.
The Alarm Desc field of Digital, Advanced and Time-Stamped alarms can be used to display
variable data. An expression (variable tag, function etc.) can be embedded into the text of the
Alarm Desc field. This expression is evaluated when the alarm is tripped, returning the value of any
variable tags at the point in time when the alarm was generated.
Enclosing the expression in braces separates the variable data from the static text. For example:
When LineSpeed1 is a variable tag, this expression will produce the following output on the alarm
display or alarm log:
When Tank1 and Tank2 are variable tags, and Offset is a Cicode function, this expression produces
the following output:
NOTE: The result is formatted according to the formatting specified for the first variable tag in
the expression. Standard variable formatting specifiers can be used to define the
format for the numeric variable, over-riding the default format specified in Variable
Tags.
You can use any of the following fields (or combination of fields) to format an Alarm Display (see
Alarm Categories) and an Alarm Log Device (see Formatting a Device):
You can use the following fields for Digital Alarms only:
You can use any of the following fields for Analog Alarms only:
You can use any of the following fields for Hardware Alarms (Category 255) only:
You can use any of the following fields for Multi-Digital Alarms only:
NOTES: 1) If an alarm value is longer than the field it is to be displayed in (i.e. n ), it will be
truncated or replaced with the #OVR ("overflow of format width") error. See the
[General]FormatCheck parameter for details.
2) You should only use the {State} field for display on the alarm pages. For summary
pages use {SumState}. To log the state to a device, use {LogState}. State is the current
state of the alarm, SumState is the state of the alarm when it occurred, and Log State is
the state of the alarm at the transition.
3) You should use only the fields above to format an Alarm Display or Alarm Log Device.
Using Alarm Summary Fields may produce unreliable results.
4) An existing log file cannot suddenly adopt additional fields; all the required fields must
be present when the file is created. For example, with the release of Version 5.5, the
default Alarm Log format had the {State_desc} field added to support multi-state digital
alarms. For this field to be implemented in a log file, you must backup and/or relocate
any existing alarm log files and create new ones.
You can use any of the fields listed below (or a combination of fields) to format an Alarm Summary
Display and an Alarm Summary Device.
Format the Alarm Summary for an entire category of alarms by specifying field names in the
Summary Format field of the Alarm Category Properties.
You can also use the [Alarm]DefSumFmt parameter to format the Alarm Summary, particularly if all
of your Alarm Summary formats are to be the same.
NOTE: You can also include in your Alarm Summary any Alarm Display field other than State.
However, you cannot include any of the above Alarm Summary fields in an Alarm
Display or Alarm Log Device, as this may produce unreliable results.
Alarm properties can be used wherever variable tags can be used (except in Alarm descriptions).
For instance, you can provide the operator with a visual indication when the alarm CV110_FAULT is
active. When it is active, CV110_FAULT.On will be TRUE; when it is inactive, CV110_FAULT.On
will be FALSE. e.g. CV110_FAULT.On could be entered as the fill colour expression in a graphics
object. When the conveyor has a fault, the graphics object will change colour.
To use an alarm property as a tag, it must be formatted as follows: Alarm tag (e.g. CV100_STOP)
followed by a full stop (.) then the property (e.g. Category). The completed alarm property would
then be CV100_STOP.Category.
.Time 32 bit value of the time the alarm was triggered Long
* The .On property for Analog alarms is true if any alarms associated with the alarm tag are active.
NOTE: Once an alarm is disabled, it cannot be re-enabled unless you use the function
AlarmEnable() or AlarmEnableRec()
For digital alarms and advanced alarms, the following properties can also be used:
For the digital properties below, only one can be true at any point in time for each alarm. They are
arranged in order of priority, from lowest to highest.
.DVL Deviation alarm triggered (Low) Digital
.DVH Deviation alarm triggered (High) Digital
.R Rate of Change alarm triggered Digital
.L Low alarm triggered Digital
.H High alarm triggered Digital
.LL Low Low alarm triggered Digital
.HH High High alarm triggered Digital
NOTE: DVL and DVH are only evaluated if Deviation > 0. R is only evaluated if Rate > 0.
Some of the alarm properties return configuration data. For the case in which the user has not
defined this information, the following defaults will be provided:
Property Default
.Setpoint 0
.HighHigh 3.4e+38
.High 3.4e+38
.LowLow -3.4e+38
.Low -3.4e+38
.Rate 0
.Deviation 0
.Deadband 0
.Category 0
.Priority 0
NOTE: Analog alarm thresholds can also be changed using the AlarmSetThreshold() function.
Conditions of Use
i) The alarm tag must be unique
ii) The alarms databases in all included projects on the Alarms Server and the CitectHMI/SCADA
Display Client computer must be identical.
For example:
Name Alarm_Device
Number 12
Address
Protocol ALARM
Port Name ALARM
The Alarm I/O Device will only work on a computer that is defined as an Alarms Server and an I/O
Server. After you have configured the Alarm I/O Device, use the Computer Setup Wizard to setup
the Alarms Server, defining it as an I/O Server - even if it has no physical devices attached to it.
When an alarm is triggered, it becomes active. The active state of a digital alarm is ON, while the
active state of an analog alarm varies - depending on the type of alarm (for instance HIGH, LOW
LOW, RATE, etc.). When an operator acknowledges the alarm, its state changes to
ACKNOWLEDGED. When the alarm is reset (when the conditions that caused the alarm have been
rectified), its state changes to OFF.
CitectHMI/SCADA displays alarms on the standard alarm display page. To acknowledge an alarm,
an operator either selects the alarm with the mouse and clicks the left mouse button, or moves the
cursor onto the alarm and presses the Enter key. Alternatively, the operator can acknowledge all
alarms by selecting the Alarm Ack button at the bottom of the page. When an alarm is
acknowledged, its display colour (on the screen) changes. Acknowledged alarms remain on the
screen until their state changes to OFF.
To overcome a situation where an alarm might be faulty or unnecessary, an operator can disable an
alarm. CitectHMI/SCADA ignores disabled alarms until they are re-enabled. (You must define a
command that uses the AlarmDisable() function to disable alarms.)
To maintain a history of alarm activity, CitectHMI/SCADA keeps an event log of all alarms. This log
stores the time when each alarm was activated, acknowledged, and reset. You can display all
alarms from the event log (including disabled alarms) on the alarm summary page.
You must create a page called Summary based on the AlarmSummary template, so that the alarm
summary button (on other pages such as the menu page) operates correctly. (The alarm summary
button calls the PageSummary() function.).
Your operators can add comments to any alarm in the summary log. (You must define a command
that uses the AlarmComment() function to add comments to an alarm.)
NOTE: If you have many alarms on the alarm page or alarm summary page, you can use the
Page Up and Page Down commands to scroll through the list.
¾ To create an alarm page:
1. In the Citect Explorer, double-click the Create New Page icon in the Graphics|Pages folder.
- or -
1. In the Graphics Builder, select New from the File menu, and press the Page button.
2. Select the alarm template you want to use. Use the Alarm template to create a page to display
configurable alarms, the Summary template for summary alarms, the Disabled template for
disabled alarms, and the Hardware template for hardware alarms.
3. Select Save from the File menu.
4. Specify a name in the page title field. The new page name should match the template name.
For example, call the new hardware alarm page Hardware.
5. Press OK to save the new page. You can then close the page.
NOTE: You can also create your own (non-standard) alarm pages. The easiest way to do this
is by copying and modifying the standard alarm templates.
NOTE: If you are using the standard CitectHMI/SCADA page templates, you do not usually
need to create a command to display the page - they are already built in.
To display a customised alarm page (with a non-standard name), you should use the
PageDisplay() function to display the page, followed by the AlarmSetInfo() function as
required.
Alarm categories, Cicode functions, and Button objects allow you to use a set of pre-defined fonts
when displaying text. These fonts are known as CitectHMI/SCADA fonts. In addition to the pre-
defined fonts, you can also configure your own CitectHMI/SCADA fonts.
NOTE: If any animation is associated with an I/O Device that fails at startup or goes off-line
while CitectHMI/SCADA is running, the associated animation is greyed on the relevant
graphics pages (because the values are invalid). You can disable this feature with the
[Page]ComBreak parameter.
See: Handling Communication Errors
Pixel Size
pA
Configuring and Processing Alarms 42
To specify a point size, enter a negative number in the Pixel Size field, for example: