SMP Gateway Automation Functions
SMP Gateway Automation Functions
SMP Gateway
Automation Functions
For use with SMP Gateway software version 6.2 or later.
Cooper Power Systems and Substation Modernization Platform are valuable trademarks of Cooper
Industries.
All brand and product names appearing in this document are the trademark or registered trademark
of their respective holders.
S1120-16-1, Version 7
Contents
1 Introduction 1
1.1 Document Overview..............................................................................................1
2 Functions 3
2.1 Analog Control ......................................................................................................3
2.2 Best-Of ..................................................................................................................4
2.3 Binary Control .......................................................................................................5
2.4 Binary Debouncing ................................................................................................6
2.5 Create ....................................................................................................................6
2.6 Force ......................................................................................................................7
2.7 Grouped Control ....................................................................................................7
2.8 Inhibition ...............................................................................................................8
2.9 Input Latching and Reset ..................................................................................... 10
2.10 Logical ................................................................................................................. 11
2.11 Logic Processor ................................................................................................... 12
2.11.1 Logic Editor .......................................................................................... 13
3 Configuration 15
3.1 Defining an Automation Functions Instance ....................................................... 15
3.2 Defining Logical Data Points .............................................................................. 16
3.3 Defining Automation Functions .......................................................................... 16
3.4 Defining Logic Processor Expressions Using Logic Editor ................................ 18
3.4.1 Editing a Logic Processor Expression ................................................... 20
3.4.2 Changing How Data Points are Grouped Together ............................... 20
3.4.3 Validating and Saving the Expression................................................... 21
3.5 Selecting Data Points Names for Settings ........................................................... 22
4 Troubleshooting 23
5 Appendices 25
ii ● Contents
Tables
Table 2-1 Logic Editor window panes ........................................................................................ 13
Table 4-1 Troubleshooting .......................................................................................................... 23
Table A-1 General settings ........................................................................................................A-2
Table B-1 Logical analog input settings .................................................................................... B-2
Table B-2 Logical binary input settings .................................................................................... B-3
Table B-3 Logical analog output settings .................................................................................. B-4
Table B-4 Logical binary output settings .................................................................................. B-4
Table C-1 Analog Control function settings .............................................................................. C-3
Table C-2 Best-Of function settings .......................................................................................... C-4
Table C-3 Binary Control function settings ............................................................................... C-6
Table C-4 Binary Debouncing function settings ....................................................................... C-7
Table C-5 Create function settings ............................................................................................ C-8
Table C-6 Force function settings.............................................................................................. C-9
Table C-7 Binary Control function settings ............................................................................. C-10
Table C-8 Inhibition function settings ..................................................................................... C-11
Table C-9 Input Latching and Reset function settings ............................................................. C-13
Table C-10 Logical function settings ........................................................................................ C-14
Table D-1 Logic Editor conditional statements .........................................................................D-2
Table D-2 Logic Editor mathematical functions ........................................................................D-3
Table D-3 Logic Editor data point functions .............................................................................D-3
Table D-4 Logic Editor input value generators..........................................................................D-4
Table D-5 Logic Editor arithmetic operators .............................................................................D-4
Table D-6 Logic Editor binary operators ...................................................................................D-5
Table D-7 Logic Editor logical operators ..................................................................................D-5
Table D-8 Logic Editor relational operators ..............................................................................D-6
Table D-9 Logic Editor constants and variables ........................................................................D-6
Table E-1 System binary inputs ................................................................................................ E-1
This reference manual provides all the information required to install and set up an instance of the
Automation Functions component in an SMP Gateway.
You must be familiar with the SMP Gateway environment and the master protocol concepts
before proceeding with this document. You can acquire this information by reading the following
documents:
SMP Gateway User Manual, S1120-10-1, COOPER Power Systems.
Protocol Common Concepts, S1120-11-1, COOPER Power Systems.
Note: The SoftPLC optional module is also available on most SMP Gateway models,
and allows the creation of even more advanced automation scripts. For additional
information, refer to the SMP Gateway SoftPLC Reference Manual, S1120-17-1,
and the SMP Gateway User Manual, S1120-10-1.
The Automation Functions component is an optional software package designed to extend the
capabilities of existing devices by adding local automation capabilities similar to what could be
implemented using an external PLC. These capabilities are usually not supported by the master
protocol components.
Automation Functions can use any system data point or physical data point owned by a master
protocol; most functions also create logical data points, defined specifically for these functions in
the Automation Functions instance. For example, the Debouncing function uses any physical
binary input as the input point, and creates a new logical data point for the de-bounced point.
This chapter presents the various automation functions that are available, and their implementation
details.
To learn how to configure these functions, refer to Chapter 3.
READ AI CONTROL AO
Figure 2-1 Analog Control example: Writing a read meter value to a PLC
By default, a control operation is performed on the control point every times the value, quality or
timestamp of the input point changes. Some settings can be specified to operate the control point
only when specific criteria are met.
A Deadband value, in engineering units, can be specified so that only changes that exceed the
deadband value will trigger a control operation.
2.2 Best-Of
The Best-Of function evaluates up to 8 source data points of the same type and provides the exact
replica of the best of these points in a result point, which is the called the best-of point.
A typical application of the Best-Of function is the implementation of A-B protection schemes,
also known as IED redundancy. To implement such redundancy, three data points must be
configured for the same information: one point per master (IED), and a third point storing the
result of the Best-Of function. The control center should then be monitoring this best-of point,
made available through a slave protocol.
INFORMATION FROM
ACQUISITION OVER TWO SECONDARY SOURCE
LINKS TO TWO DEVICES. IS USED
COMMUNICATION COMMUNICATION
FAILURE RESTORED
Note: For additional information on how to implement redundant IEDs support using the
Best-Of function, refer to the Redundancy Options with the SMP Gateway
technical note.
The evaluation of the best source point is based on quality, and “exact replica” means that the
value, quality (except for the “Forced” and “Inhibited” quality bit) and timestamp of the best point
are copied to the result point. The result point is created by the function at runtime.
4● Chapter 2: Functions
If multiple points can be considered as the best one, the one with the lowest “index” is always
preferred, that is the one that was specified before the others in SMP Config. For instance, Point 3
will always be preferred over Point 6, if both points are good and the others are bad.
In addition, if the Best-Of function involves output points, control operations performed on the
result point will be forwarded to the best source point.
At system startup, the value of the result point is set to 0, with a timestamp corresponding to the
component initialization time; the “Communication Failure” quality bit is also set and the quality
remains unchanged until one of the source points changes. From then on, the function starts
evaluating the sources points and the best source one is copied to the result point. The first point
has precedence over the others, when multiple points are evaluated as “the best one available”.
Best Of function settings are fully described in “Appendix C”, page C-3.
READ BI CONTROL BO
Figure 2-3 Binary Control example: Writing a read breaker state to a PLC
Essentially, a control operation, specified by the Control Type setting, is performed on the control
point every times the input point’s quality or timestamp changes, and when the point’s value
changes to the Trigger State setting value. Some settings can be specified to operate the control
point only when specific criteria are met.
A time Filter, in milliseconds, can be applied to value changes of the input point, to prevent
control operations from being triggered on transitions of short duration.
When the Inhibit Trigger at Init setting is selected, the control point will not be operated by the
input point, even if all other trigger conditions are met, when the input point or the control point
becomes available at startup (when the point’s quality changes from “Unknown” to “OK”) or
following a communication failure (when the point’s quality changes from “Communication Fail”
to “OK”).
The function performs one control operation at a time; that is, the confirmation of a control
operation must be received before another control operation can be triggered.
As for standard control operations, confirmation can be real or simulated. Simulated confirmations
are faster because the corresponding master component replies with the confirmation as soon as it
receives the control operation request. Real confirmations (default behavior) require that the
master component waits for the control operation to complete before it sends the confirmation
message.
Set Delay
BI
Debounced BI
Reset Delay
Both the Set Delay and Reset Delay setting values are specified in milliseconds.
When a transition is considered valid, its value and quality are recorded in the debounced point.
Regarding the transition timestamp, it depends on the value of the Time Tag setting: it can either
be the time at which the source point has changed, or the time at the end of the set or reset delay.
At system startup, the debounced point is initialized to the value and quality of the source point.
Binary Debouncing function settings are fully described in “Appendix C”, page C-6.
2.5 Create
The Create operation consists in creating a logical analog or binary point acting as a data holder.
The point can then be updated by a Force operation, either through the Force automation function
or using the Logic Processor, or by a control operation if the point is an output point.
At system startup, the value attribute of all created data points is set to 0. The timestamp attribute
is based on the Automation Functions component instance creation time. The quality attribute
depends on the value of the Force Validity Delay setting.
6● Chapter 2: Functions
The Force Validity Delay setting defines a refresh period during which the value of the created
point must be updated (forced) to maintain a valid status; otherwise, the created point’s quality
will be set to “Communication Failure”. A zero value for this setting implies that the created
point’s quality will always be valid (“OK”); a non-zero value implies that the created point’s
quality is initialized to “Communication Failure” at startup.
The Persisted Forced Value setting allows persistence of the value and quality attributes of a
created point that is forced using the Force automation function.
Create function settings are fully described in “Appendix C”, page C-7.
2.6 Force
The Force function allows forcing an input data point (analog input or binary input) to a given
value, by performing a control operation on an output data point (analog output or binary output).
The input point is called the forced point; the output point, the force point. An additional optional
point - called the unforce point - can be used to revert the forced point to its former value and
quality.
The Force function allows slave-to-slave communications. For example, if two control centers
must communicate data through a single SMP Gateway, it only has to write the data to the force
point, made available by the slave of the control center that transmit the data; this data will be
written to the forced point, before being reported through the second slave, to the second control
center.
The forced point can be an existing physical data point or a system (logical) data point created
using the Create automation function. Force points and unforce points are created by the Force
function.
At system startup, the value attribute of all force points and unforce points is set to 0, with a
timestamp corresponding to the component initialization time. Their quality attribute is always set
to “OK” (valid).
The value and quality attributes of a forced point are persisted, which means that they are
preserved if the SMP Gateway restarts. The only way to revert a force point to its former value
and quality is to perform a control operation on the unforce point. If the forced point is created
using the Create automation function, make sure to select the Persisted Forced Value setting;
otherwise, the forced value and quality will not be preserved upon a system restart.
Force function settings are fully described in “Appendix C”, page C-8.
Figure 2-5 Grouped Control example: Operating multiple IEDs via a single control operation
The resulting control operations are performed in parallel, although only one control operation can
be performed at a time by a given master. As a result, if the group of controlled points contains
points from the same master, a confirmation of the control operation on one of this master’s point
must be received before a second operation is performed on another point of this master.
The confirmation of the control operation on the control point depends on the value of the Success
If All Succeeded setting: if this setting is selected, the grouped control operation will be
successful only if all underlying control operations succeed; if this setting is not selected, the
grouped control will succeed if at least one underlying control operation succeeds.
Grouped Control function settings are fully described in “Appendix C”, page C-9.
2.8 Inhibition
Inhibition is a convenient way of putting a “do not operate” tag on an output point, when multiple
control centers or local HMIs can perform control operations on this point, if such tagging feature
is not already provided through protocol. Inhibition also allows the deactivation of transition
reporting for input points.
8● Chapter 2: Functions
CONTROL
INHIBIT BO
CONTROL BO
The Inhibition function allows the temporary inhibition of multiple input or output points, when
performing a control operation on a specific binary output called the control point. A system
(logical) binary input point, called the status point, provides the inhibition status overview of the
entire list of I/O points associated to this function instance.
Only execute and direct-execute control operations are supported by the control point.
Additionally, only open and close execution types are supported: a close operation inhibits the
points, and the open operation restores the points to their normal state. Visual T&D can also
inhibit control operations on a specific output point of a SMP Gateway, by putting an “All
Controls Inhibited” tag on the point.
As for other control operations, inhibition control operations must be confirmed by the control
point owner, which in this case is the Automation Function component. The operation can be
refused if: (a) it tries to operate more than one control point at the time; (b) it is of an unsupported
control type (ex. select operation) or execution type (ex. Pulse); or (c) if the inhibition control
point itself is inhibited. If one of the point to inhibit is currently being operated, of if the IED that
owns it is currently performing a control operation, the inhibit operation will likely fail. All
control operations, including inhibition operations, are logged in details in the Control log file of
the SMP Gateway, which can be viewed using the SMP Log tool.
At system startup, the value attribute of inhibition status points is set to 0, with an “OK” quality
(set to 0) and a timestamp corresponding to the component initialization time, if the Inhibition
function is initialized for the first time. The quality attribute of the inhibition status point is
updated as follows:
An OR operand is applied to each quality flag of all points in the list, except for the
“inhibition” quality flag; the result is stored in the corresponding quality flag of the inhibition
status point.
An AND operand is applied to the “inhibition” quality flag of all points in the list; the result is
stored in the “inhibition” quality flag of the inhibition status point.
In other words, for the inhibition status point to have the “inhibited” quality, all points in the list
must be inhibited. However, for all other quality flags (for example, “Communications Failure” or
BI
Latched BI
For a binary input point, an event occurs when the point’s value goes from 0 to 1 (false to true).
For an analog input point, an event is any change of value from 0.0. When an event occurs on the
input point, it is copied to the latched point, which keeps this value until it is reset. As a result, if a
second event occurs before the expiration of the reset timer or the operation of the reset point, the
latched point remains unchanged.
At system startup, the value attribute of latched points is set to 0, a timestamp corresponding to the
component initialization time. The quality attribute is set to “Communication failure”, if the
10 ● Chapter 2: Functions
corresponding input point is sponsored by a master protocol; otherwise, the quality is set to
“Unknown”. Afterwards, the value and quality attribute of the input point is copied to the latched
point’s quality every time an event is detected on the input point. However, the timestamp
attribute of the latched point is not copied directly from the input point and does not reflect the
time of the event at the IED level: it is the timestamp of the latch operation (i.e. the time at which
the event is detected by the Automation functions component) and is set based on the time
information provided by the SMP Gateway clock.
Also at system startup, the value attribute of reset points is set to 0, with a timestamp
corresponding to the component initialization time. Their quality attribute is always set to “OK”
(valid).
When an operation is performed on the reset point, the corresponding latched point is modified
according to the value of the Reset Behavior setting. By default, it is set back to 0, and its
timestamp is set to the time of the reset operation, also based on the time information provided by
the SMP Gateway clock. Only execute and direct-execute control operations are supported for the
reset point, but all execution types are supported (open, close, trip and pulse).
As for other control operations, reset point operations must be confirmed by the reset point owner,
which in this case is the Automation Function component. The operation can be refused if: (a) it
tries to operate more than one control point at the time; (b) it is of an unsupported control type (ex.
select operation); or (c) if a control operation is currently being performed on the control point
mapped to the reset point. In all other situations, the reset operation will succeed, indicating that
the latched point was successfully reset. For additional information about the success or failure of
any control operation, view the SMP Gateway’s Control log, using the SMP Log tool.
If a control point is specified, all control operations performed on the reset point are also
automatically performed on the control point. The control operation will likely be accepted by the
master protocol that “owns” the point, except if another control operation is in progress.
Regardless of the success or failure of this operation, no confirmation is issued. It is the
responsibility of the original control operation initiator to ensure that the operation was a success,
either by polling the control point’s state or by looking at the SMP Gateway’s Control log, using
SMP Log.
If no reset timeout is specified for a given latched point, it will be persisted, which means that the
value, quality and timestamp of the latched point will be preserved if the SMP Gateway restarts. If
the SMP Gateway does not manage to preserve the latched value of a point, an entry is added to
the Startup log; as a result, it is a best practice to take a look at the Startup log using SMP Log, if
the SMP Gateway has to restart, to ensure that latched points were properly restored.
Input Latching and Reset function settings are fully described in “Appendix C”, page C-11.
2.10 Logical
The Logical function dynamically computes an AND or OR logical operation on up to 8 existing
binary input points. The result of this operation is stored in a logical binary input point called the
result point.
At system startup, the value attribute of all result points is set to 0, with a timestamp
corresponding to the component initialization time. The quality attribute is set to “Communication
Failure”.
From then on, the value of each result point will be calculated every times one of the source point
changes. For an AND operation, the value is set to 1 (true) if the value of all source points are set
12 ● Chapter 2: Functions
2.11.1 Logic Editor
The Logic Editor is the SMP Config feature that is used to define Logic Processor expressions. Its
window is divided into several panes, allowing the user to set the attributes of the calculated data
point and assisting him in the expression definition process.
The toolbar located at the top of the window allows users to validate, to save and close the
expression, or to undo the last change made to the expression.
The table below describes the various panes of the Logic Editor window:
Pane Description
Properties Used to specify the different attributes of the calculated data point.
Data Points Used to select and enter existing data points in the expression. Analog points are
listed using a green tag, while binary points are listed using a blue tag.
Functions Displays the list of all the functions that can be inserted in the expression.
Operators Displays the list of all the operators, constants and variables that can be inserted
in the expression. Double-click on an item to insert it at the cursor location in
the expression window. The various operators are described in the sections
below.
Expression Used to enter and edit the expression to be evaluated. The result of the
evaluation of the expression is assigned as the value of the calculated data point.
Like most SMP Gateway software features, Automation Functions are configured using
SMP Config.
In this chapter, the reader will learn how to perform the following Automation Functions
configuration tasks:
Define an Automation Functions component instance.
Define logical data points.
Define an automation function and specify its settings.
Define Logic Processor expressions using Logic Editor.
For additional information on the Transition Sort feature and the corresponding setting, see
“Appendix A - General Settings”, page A-1.
For additional information about this feature, see “Appendix A - General Settings”, page A-1.
The instance is now ready to be configured.
In the right pane, click in the Name cell of the first empty row.
Type the name of the logical point.
Note: The full name of the point will be preceded by the Automation Functions instance
prefix, like master point names that are preceded by a device prefix.
(Optional) In the Description cell, type some indications about the purpose of this point or
the function that creates and uses it.
Edit other point settings as required. For additional information about these settings,
see “Logical Data Point Settings”, page B-1.
16 ● Chapter 3: Configuration
Defining Logic Processor Expressions Using Logic Editor”, below.
Take a look at the Messages pane, which is located in the lower right of the SMP Config
window. Correct all listed errors. Pay also attention to warning messages. In most situations, a
properly defined automation function definition will not generate any error or warning
message.
Define the calculated point, a logical data point which will result from the expression, as
described in “Defining Logical Data Points”, page 16.
Under the Automation Functions instance branch, expand the Functions branch, and then
click Logic Processor.
From the Tools menu, choose Logic Editor.
In the Produced point cell, select the logical data point that will hold the result of the
expression: this is the calculated point.
By default, if no expression was defined yet, Logic Editor selects the first logical data point
available, as the calculated point of the expression.
Note: A single Automation Functions component instance can hold any number of
Logic Processor expressions; however, only one expression is allowed per
logical (calculated) data point.
18 ● Chapter 3: Configuration
Specify the calculated point’s properties:
In the Name cell, type a name for the expression; this name will be used to reference this
expression, in the list of Logic Processor expressions displayed in the Logic Processor
branch of the main window of SMP Config.
In the Description cell, type a short description of the expression that will be evaluated
for this point; this description will also be displayed in the list of Logic Processor
expressions.
In the Timestamp cell, specify how the timestamp of calculated data point values will be
determined:
To apply the date and time at which the expression is evaluated to calculated point
values, select System: in this case, the date and time information is based on the
SMP Gateway system time.
Otherwise, if the evaluation is triggered by a data point update, you can select
Triggered point to apply the timestamp of the point to the calculated point value.
This is the default value for this setting.
In the Quality cell, specify how the quality of calculated point values will be evaluated
for this point:
If the quality should always be OK (good), select Force good.
Otherwise, select Use source quality: the combination of the quality of all data
points used in the expression will determine the calculated point value’s quality. This
is the default value for this setting.
Note: The quality is a bit string of quality flags (conditions); if no flag is set, the quality is
OK. The combination mentioned above is obtained by performing an OR
operation of the quality attribute of each source point, which means that as soon
as a quality flag is set for a source point, it will also be set for the calculated data
point.
If you want to hide the binary points, clear the Include binary points check box.
Select Group data points.
Under Group together names, select With a common beginning to group points according
to a given prefix, or With a common ending to group points according to a given suffix.
To use a fixed length for the prefix/suffix:
Under Group names, select Have a fixed length of <X> characters.
20 ● Chapter 3: Configuration
Specify the <X> number of characters.
To use a delimiter character for the prefix/suffix:
Under Group names, select Are delimited by the occurrence <X> of character <Y>.
Specify which occurrence of the <Y> character should be used as the delimiter. For
example, if the ‘_’ character appears twice in the prefix of the points, type 2.
Type the character to use as the delimiter.
Make sure the grouping settings are as expected, by looking at the Preview box.
Logic Editor validates the expression and saves it to the configuration file if it is valid. If
some errors are detected, fix the expression before trying to save again.
Close the Logic Editor window.
The expression should now be visible in the Logic Processor expression list, which can be viewed
by clicking the Logic Processor branch of the corresponding Automation Functions component
instance.
In the Select Points window, expand the branch of the instance that produced this data point.
Click on the point’s name to select it.
Click Paste.
22 ● Chapter 3: Configuration
4 Troubleshooting
The following table enumerates solutions to common problems experienced at runtime with the
Automation Functions component.
Problem Solution
Some logical data points This problem can be due to one of the following:
are not available.
The corresponding function may be disabled. Verify that the function
referring to the missing points is enabled.
An output point is defined but only used in the Logic Editor as an
operand to a Logic Processor expression. Such point must not only be
defined, but also created using the Create automation function.
The Automation Only the Logical function works on a SMP Gateway that is currently in the
Functions component Hot Standby state. This restriction is by-design, as the Logical function can
instance does not work be used to define complex failover conditions.
properly on a
SMP Gateway configured
for Hot Standby.
General settings specify the general behavior of an Automation Functions component instance.
The following table presents these settings.
Setting Description
Device Prefix A string used as a prefix for all logical data points created by this
Automation Functions component instance. This prefix must be unique,
along all components that also create data points, to ensure that all point
names in the system are unique.
Range: 1 to 19 ASCII characters.
Transition Sort Delay Indicates how long transitions are delayed to ensure they are processed by
the Automation Functions component instance in chronological order.
This feature is called Transition Sort. It is required in situations where the
various input points of a given function are provided by different masters
(IEDs); by default, the Automation Functions component instance processed
data point transitions in the order it receives them from RTDX. By delaying
the transitions, the component can sort them and put them in chronological
order, before processing them.
The Transition Sort feature only works properly if the clocks of the
SMP Gateway and the IEDs are synchronized.
Note: Transitions that are too old (per the Transition Sort Delay setting), or whose
timestamp is set “in the future” (more than one second ahead of the current
time of the SMP Gateway), are not delayed and are automatically processed by
the Automation Functions component instance.
Two system binary inputs can be activated to monitor transition sort:
___OutOfSequence
___QueueOverflow.
These system data points are presented in details in the “System Binary
Inputs” section, page E-1.
Range: 0 to 59 seconds
Default value: 0 (transitions are processed in the order they are received)
Logical data points are created by Automation Functions component instances. Although the
functions are responsible for the creation of these points, the latter must first be defined in the
corresponding point branches that appear right under the Automation Functions instance branch,
in SMP Config.
This appendix presents the settings that must be specified for logical data points of all types.
Setting Description
Name The name associated with an analog input point. Each point monitored by a
specific automation function must have a unique name. This name is
preceded by the Device Prefix, as specified in the general settings. The
device prefix, coupled with the name, ensures that every point managed by
the system has a unique name.
The following characters cannot be used as part of the name: the comma (,),
the quotation mark ("), the semicolon (;) and the grave accent (`).
Range: 1 to 39 ASCII characters (including the prefix).
Disabled When this setting contains a checkmark, the point is ignored by the
Automation Functions component instance.
This flag can be used, for example, to temporarily remove points having
hardware problems.
Range: checkmark / no checkmark
Default value: no checkmark
Scale Scaling factor used to convert 32-bit values (raw) to significant engineering
units (floating point) and vice versa. The conversion depends on the format
of the value, as provided by the parent function. The following equation is
used:
Floating-point value = (raw value * scale) + offset
Range: –3.4E38 to 3.4E38, not 0.0
Default value: 1.0
SMP Deadband Only floating-point value changes greater than the deadband value are
reported, unless the value itself is smaller than the deadband. This ensures
that small variations around 0 are reported so that, for example, reported
values do not remain fixed at .01 when they are, in fact, 0. A value of 0 for
this setting implies that all variations, no matter how small, are reported.
Range: 0.0 to 3.4E38
Default value: 0.0
Units Units that are displayed with this point’s values in the various SMP Tools,
or through the SMP Gateway web server.
Allowed values: As shown in the drop-down list
Default value: ** Undefined **
Description An optional point description, which is displayed in the various SMP Tools,
or through the SMP Gateway web server, to provide additional information
about this point at runtime.
Range: 1 to 63 ASCII characters.
Setting Description
Name The name associated with a binary input point. Each point monitored by a
specific automation function must have a unique name. This name is
preceded by the Device Prefix, as specified in the general settings. The
device prefix, coupled with the name, ensures that every point managed by
the system has a unique name.
The following characters cannot be used as part of the name: the comma (,),
the quotation mark ("), the semicolon (;) and the grave accent (`).
Range: 1 to 39 ASCII characters (including the prefix).
Disabled A checkmark indicates that the point is ignored by the Automation Functions
component instance.
This flag can be used, for example, to temporarily remove points having
hardware problems.
Range: checkmark / no checkmark
Default value: no checkmark
Description An optional point description, which is displayed in the various SMP Tools,
or through the SMP Gateway web server, to provide additional information
about this point at runtime.
Range: 1 to 63 ASCII characters.
Setting Description
Name The name associated with an analog output point. Each point monitored by a
specific automation function must have a unique name. This name is
preceded by the Device Prefix, as specified in the general settings. The
device prefix, coupled with the name, ensures that every point managed by
the system has a unique name.
The following characters cannot be used as part of the name: the comma (,),
the quotation mark ("), the semicolon (;) and the grave accent (`).
Range: 1 to 39 ASCII characters (including the prefix).
Disabled A checkmark indicates that the point is ignored by the Automation Functions
component instance.
This flag can be used, for example, to temporarily remove points having
hardware problems.
Range: checkmark / no checkmark
Default value: no checkmark
Scale Scaling factor used to convert 32-bit values (raw) to significant engineering
units (floating point) and vice versa. The conversion depends on the format
of the value, as provided by the parent function. The following equation is
used:
Floating-point value = (raw value * scale) + offset
Range: –3.4E38 to 3.4E38, not 0.0
Default value: 1.0
Offset Offset value used to convert 32-bit values (raw) to significant engineering
units (floating point) and vice versa. See the Scale setting above.
Range: –3.4E38 to 3.4E38
Default value: 0.0
Units Units that are displayed with this point’s values in the various SMP Tools, or
through the SMP Gateway web server.
Allowed values: As shown in the drop-down list
Default value: ** Undefined **
Description An optional point description, which is displayed in the various SMP Tools,
or through the SMP Gateway web server, to provide additional information
about this point at runtime.
Range: 1 to 63 ASCII characters.
Setting Description
Name The name associated with a binary output point. Each point monitored by a
specific automation function must have a unique name. This name is preceded
by the Device Prefix, as specified in the general settings. The device prefix,
coupled with the name, ensures that every point managed by the system has a
unique name.
The following characters cannot be used as part of the name: the comma (,), the
quotation mark ("), the semicolon (;) and the grave accent (`).
Range: 1 to 39 ASCII characters (including the prefix).
Disabled A checkmark indicates that the point is ignored by the Automation Functions
component instance.
This flag can be used, for example, to temporarily remove points having
hardware problems.
Range: checkmark / no checkmark
Default value: no checkmark
Description An optional point description, which is displayed in the various SMP Tools, or
through the SMP Gateway web server, to provide additional information about
this point at runtime.
Range: 1 to 63 ASCII characters.
This appendix presents in details the settings of all automation functions, as they must be specified
in SMP Config.
Setting Description
Name The name of this function instance. All functions must have a unique
name.
Range: 1 to 39 ASCII characters.
Input Point The name of an existing analog input point, whose changes will trigger
a control operation on the Control Point.
Note: See “
Selecting Data Points Names for Settings”, page 22, to learn how to select the
point name from a list, rather than having to type it.
Range: 1 to 39 ASCII characters.
Filter The amount of time, in milliseconds, during which the Input Point
value must remain the same, following a transition, to trigger a control
operation on the Control Point.
This setting prevents control operations from being triggered by
transitions of short duration.
Note: First, the Quality Filtering setting is used to determine if the value is
valid; the Deadband setting is then evaluated, to determine if the change
is large enough to trigger the control operation; the Filter setting is then
considered to ensure that the value change is significant over time.
Range: 0 to 2,147,483,647 milliseconds
Default value: 0 milliseconds
Control Point The name of an existing analog output point, on which a control
operation will be performed if the value of the Input Point changes
significantly (according to the Quality Filtering, Deadband and Filter
settings).
Note: See “
Selecting Data Points Names for Settings”, page 22, to learn how to select the
point name from a list, rather than having to type it.
Range: 1 to 39 ASCII characters.
Default value: none
Simulated Control This setting determines whether the confirmation is real or simulated.
Confirmation
A checkmark indicates that the confirmation will be simulated;
otherwise, it will be real.
Simulated confirmations are faster because the master component
replies with the confirmation as soon as it receives the control
operation query. A real confirmation forces the master to wait until the
control operation has completed before sending the confirmation
message.
Range: checkmark / no checkmark
Default value: no checkmark
Force Processing This setting allows analog control to be executed, even if the Input
Point value does not change.
A checkmark indicates that all Input Point updates will result in
control operations on the Control Point.
Range: checkmark / no checkmark
Default value: no checkmark
Use Float A checkmark indicates that the control operation will use the
engineered (floating point) value of the Input Point, instead of the raw
value.
Range: checkmark / no checkmark
Default value: checkmark
Inhibit Trigger on Init A checkmark indicates that the Control Point will not be operated by
the Input Point, even if all other trigger conditions are met, when the
Input Point or the Control Point becomes available at startup (when
the point’s quality changes from “Unknown” to “OK”) or following a
communication failure (when the point’s quality changes from
“Communication Fail” to “OK”).
Description This field is used to store additional information about this function,
for reference purposes.
Range: 1 to 63 ASCII characters.
Setting Description
Name The name of this function instance. All functions must have a unique
name.
Range: 1 to 39 ASCII characters.
Result Point A logical data point of any type, which will record the value and quality
of the best point available, when any source data point changes.
Allowed values: A logical data point of this component instance.
Default value: None
Use Float A checkmark indicates that the scale and offset of the Result Point is
computed from the source point engineered (float) value. Otherwise, it
is computed from the source point raw (integer) value.
Range: checkmark / no checkmark
Default value: checkmark
Description This field is used to store additional information about this function, for
reference purposes.
Range: 1 to 63 ASCII characters.
Setting Description
Name The name of this function instance. All functions must have a unique
name.
Range: 1 to 39 ASCII characters.
Input Point The name of an existing binary input point, whose changes will trigger
a control operation on the Control Point.
Note: See “
Selecting Data Points Names for Settings”, page 22, to learn how to select the
point name from a list, rather than having to type it.
Range: 1 to 39 ASCII characters.
Filter The amount of time, in milliseconds, during which the Input Point
value must remain the same, following a transition, to trigger a control
operation on the Control Point.
This setting prevents control operations from being triggered by
transitions of short duration.
Range: 0 to 2,147,483,647 milliseconds
Default value: 0 milliseconds
Control Point The name of an existing analog output point, on which a control
operation will be performed if the value of the Input Point changes
(according to the Trigger State and Filter settings).
Note: See “
Selecting Data Points Names for Settings”, page 22, to learn how to select the
point name from a list, rather than having to type it.
Range: 1 to 39 ASCII characters.
Default value: none
Control Type The execution type of the control operation to perform on the Control
Point, when a significant transition occurs on the Input Point
(according to the Trigger State and Filter settings).
Note: The Control Type setting is independent of the Trigger State; this
means that a Trigger State value of 0 can result in a Close control
operation, and vice-versa.
Allowed values: Open
Close
Pulse
Default value: Open
Simulated Control This setting determines whether the confirmation is real or simulated.
Confirmation
A checkmark indicates that the confirmation will be simulated;
otherwise, it will be real.
Simulated confirmations are faster because the master component
replies with the confirmation as soon as it receives the control operation
query. A real confirmation forces the master to wait until the control
operation has completed before sending the confirmation message.
Range: checkmark / no checkmark
Default value: no checkmark
Inhibit Trigger on Init A checkmark indicates that the Control Point will not be operated by
the Input Point, even if all other trigger conditions are met, when the
Input Point or the Control Point becomes available at startup (when
the point’s quality changes from “Unknown” to “OK”) or following a
communication failure (when the point’s quality changes from
“Communication Fail” to “OK”).
Description This field is used to store additional information about this function, for
reference purposes.
Range: 1 to 63 ASCII characters.
Setting Description
Name The name of this function instance. All functions must have a unique
name.
Range: 1 to 39 ASCII characters.
Debounced Point A logical binary input point that will store the filtered (debounced)
values of the Input Point.
Allowed values: A logical binary input of this component instance.
Set Delay The amount of time to wait, in milliseconds, following a transition from
zero to one on the Input Point, before recording this transition in the
Debounced Point; if this transition is followed by a one to zero
transition before the end of this delay, none of these two transitions will
be recorded to the Debounced Point.
Range: 0 to 2,147,483,647 milliseconds
Default value: 1000 milliseconds
Reset Delay The amount of time to wait, in milliseconds, following a transition from
one to zero on the Input Point, before recording this transition in the
Debounced Point; if this transition is followed by a zero to one
transition before the end of this delay, none of these two transitions will
be recorded to the Debounced Point.
Range: 0 to 2,147,483,647 milliseconds
Default value: 1000 milliseconds
Time Tag Determines how the timestamp of the Debounced Point is set. It can
either be the time at which the initial transition occurred (Use input
point), or the time at which the transition was recorded in the
Debounced Point (Add set and reset delay).
Allowed values: Use input point
Add set and reset delay
Default values Use input point
Description This field is used to store additional information about this function, for
reference purposes.
Range: 1 to 63 ASCII characters.
Setting Description
Name The name of this function instance. All functions must have a unique
name.
Range: 1 to 39 ASCII characters.
Validity Delay The maximum amount of time to wait, in milliseconds, for the point to
be updated, before setting this point’s quality attribute to
“Communication Failure”.
If set to 0, the Created Point’s quality attribute will always be OK (0).
Range: 0 to 2,147,483,647 milliseconds
Default value: 0 milliseconds
Persisted Forced Value A checkmark indicates that the forced value and quality attributes of
the Created Point will be persisted following a restart of the
SMP Gateway.
Allows persistence of the value and quality attributes of a created point
that is forced using the Force automation function.
Description This field is used to store additional information about this function, for
reference purposes.
Range: 1 to 63 ASCII characters.
Setting Description
Name The name of this function instance. All functions must have a unique
name.
Range: 1 to 39 ASCII characters.
Force Point A logical analog or binary output point, on which a control operation is
performed to set the value of the Forced Point.
Allowed values: An existing analog or binary output point.
Default value: None
Unforce Point A logical analog or binary output point, on which a control operation is
performed to reset (unforce) the value of the Forced Point.
Allowed values: An existing analog or binary output point.
Default value: None
Description This field is used to store additional information about this function, for
reference purposes.
Range: 1 to 63 ASCII characters.
Setting Description
Name The name of this function instance. All functions must have a unique
name.
Range: 1 to 39 ASCII characters.
Control Point A logical analog or binary output point whose changes are reflected to
the corresponding controlled points. If a control operation is performed
on the Control Point, the same control operation will be performed on
each controlled point. Similarly, a change of value on this point will
also cause a change of value on the controlled point.
Allowed values: A logical output point of this component instance.
Default value: None
Point 1 The name of an existing analog or binary output point that will be
Point 2 controlled by the Control Point. Up to 8 points can be specified, they
Point 3 must be of the same type of the Control Point.
Point 4
Note: See “
Point 5
Point 6 Selecting Data Points Names for Settings”, page 22, to learn how to select the
point name from a list, rather than having to type it.
Point 7
Point 8 Range: 1 to 39 ASCII characters.
Default value: none
Description This field is used to store additional information about this function, for
reference purposes.
Range: 1 to 63 ASCII characters.
Setting Description
Name The name of this function instance. All functions must have a unique
name.
Range: 1 to 39 ASCII characters.
Control Point A logical binary output point that controls the inhibition status of all the
controlled points. A CLOSE control operation on this point will cause
the controlled points to become inhibited, while an OPEN control
operation will reset them to their normal state.
Allowed values: A logical binary output of this component instance.
Default value: None
Point 1 The name of an existing point of any type, whose inhibition status is
Point 2 determined by the Control Point. Up to 8 points can be controlled by a
Point 3 single Control Point.
Point 4
Note: See “
Point 5
Point 6 Selecting Data Points Names for Settings”, page 22, to learn how to select the
point name from a list, rather than having to type it.
Point 7
Point 8 Range: 1 to 39 ASCII characters.
Default value: none
Description This field is used to store additional information about this function, for
reference purposes.
Range: 1 to 63 ASCII characters.
Setting Description
Name The name of this function instance. All functions must have a unique
name.
Range: 1 to 39 ASCII characters.
Input Point The name of an existing physical input point that triggers the latch
operation. When a transition occurs on this point, the transition value is
recorded in the Latched Point.
Note: See “
Selecting Data Points Names for Settings”, page 22, to learn how to select the
point name from a list, rather than having to type it.
Range: 1 to 39 ASCII characters.
Default value: none
Reset Point An optional logical binary output point that resets the value of the
Latched Point to 0 when a control operation is performed on it.
If no Reset Point is specified, the Reset Timeout setting must be
different than 0.
Allowed values: A logical binary output of this component instance.
Default value: None
Reset Timeout The time to wait, in milliseconds, before resetting the value of a
Latched Point to 0.
To deactivate this automatic reset feature, use a timeout value of 0 and
specify a Reset Point.
Range: 0 to 2,147,483,647 milliseconds
Default value: 3000 milliseconds
Reset Behavior This setting defines how the reset operation affects the value of the
Latched Point.
Available options include the reset and the non-reset of the latched
point regardless of the input point’s state, and a reset-and-relatch
combination.
Allowed values: Reset normally
Do nothing (stay latched)
Reset and relatch
Default value: Reset normally
Control Point The name of an existing physical binary output point on which all
control operations performed on the Reset Point are also performed.
Note: See “
Selecting Data Points Names for Settings”, page 22, to learn how to select the
point name from a list, rather than having to type it.
Range: 1 to 39 ASCII characters.
Default value: none
Use Float A checkmark indicates that the control operation will use the
engineered (floating point) value of the Input Point, instead of the raw
value.
Range: checkmark / no checkmark
Default value: checkmark
Note: As stated previously in the Logical function description, you can use up to 64
input points by defining additional Logical function instances with the same
Result Point setting.
Setting Description
Name The name of this function instance. All functions must have a unique
name.
Range: 1 to 39 ASCII characters.
Result Point A logical binary input point that stores the result of the logical
operation, which is performed every times one of the source point
changes.
The logical operation is performed both on the value and the quality of
the input points.
Note: The “inhibited” and “forced” quality flags are not considered by the
Logical function; as a result, these quality flags are always set to 0 in the
Result Point.
Allowed values: A logical binary input of this component instance.
Default value: None
Description This field is used to store additional information about this function, for
reference purposes.
Range: 1 to 63 ASCII characters.
This appendix contains exhaustive reference information about the Logic Editor, notably the
definition of each function, operator, constant and variable that is available to create Logic
Processor expressions.
For example, a physical data point name of T5.APHA must be declared as "T5.APHA".
Here are some examples of valid expressions:
120 + ( CurrentPoint * 0.02 * ( Rand() - 1 ) )
( 0.85 "T5.APHA" * "T5.KVAB" ) / 1000
"1B17.MA" AND ("120-1.MA" AND NOT "120-1.MB" ) AND "1B1.MA"
Imbalance("T5.APHA", "T5.APHB", "T5.APHC")
Comments in Expressions
Expressions can span several lines. To insert a comment into an expression, put a single quote at
the beginning of the line.
For instance:
' Calculates the imbalance of transformer #5
Imbalance("T5.APHA", "T5.APHB", "T5.APHC")
Conditional Statements
The following table presents the conditional statements that can be used in Logic Processor
expressions:
If <condition> Then Evaluates the expression specified after the Then if the logical condition
<true expression> is true, or evaluates the expression specified after the Else if the logical
Else condition is false.
<false expression>
Endif Note that the expression can contain several embedded If and Else
statements, in which case each Else statement is associated with the If
statement closest to it.
If the Quality property of the calculated data point is set to Use Source Quality, only the quality
of the data points used in the executed statement is considered, in addition to the quality of the
data points used in the condition statement.
For example, if one source point is used in the Else statement, but not in the Then statement, the
quality of this point will be considered only if the Else statement is executed.
Mathematical Functions
The following table presents the mathematical functions that can be used in Logic Processor
expressions:
Function Description
Abs( x ) Calculates the absolute value of x.
Min( x, y ) Compares the values of x and y, and retains the lesser of the two.
Function Description
Imbalance( point A, Calculates the imbalance among three phases, for the current
point B, represented by the three data point names.
point C )
The calculation is defined as follows for a three-phase current:
((Imax - Imin) / Iavg) * 100
where:
Iavg = (AI + AB + IC) / 3
Imax = max (IA, IB, IC)
Imin = min (IA, IB, IC)
IsTrigger( point ) Evaluates to TRUE if the specified point causes the expression
to be reevaluated.
QualityOf( point ) Evaluates to TRUE if the value of the specified data point is
valid.
BAD_QUALITY Sets the quality of a data point to BAD, which means that the
value of the data point cannot be assumed as valid.
Generators
Generators are used to mathematically generate input values for data points. The following value
generator can be used in Logic Processor expressions.
Pulse( amplitude, Calculates the value of a pulse stream with the specified
frequency, amplitude, frequency (in hertz), duty cycle (in
duty cycle, percent), and delay (in milliseconds). The delay argument is
delay ) optional, and set to 0 if left unspecified.
Saw( amplitude, Calculates the value of a sawtooth wave with the specified
frequency, amplitude, frequency (in hertz), and delay (in
delay ) milliseconds). The delay argument is optional, and set to 0 if
left unspecified.
Randn( mean, variance ) Calculates a random value with a normal distribution that has the
specified mean value and a var variance.
Arithmetic Operators
The following table presents the arithmetic operators that can be used in Logic Processor
expressions.
Operator Description
+ Calculates the sum of the left and right operands.
% Obtains the remainder of the division of the left operand by the right operand.
Binary Operators
Binary operators are used to manipulate individual bits of data point and expression values.
The following table presents the binary operators that can be used in Logic Processor expressions.
BXOR Calculates a bitwise XOR between the left and right operands.
For instance, 12 BXOR 5 evaluates to 9 (1100 BXOR 0101 is 1001).
BEQV Calculates a bitwise EQV between the left and right operands.
For instance, 12 BEQV 9 evaluates to 6 (1100 BEQV 0101 is 0110).
Logical Operators
Logical operators are used to combine the results of logical expressions, such as comparisons.
The following table presents the logical operators that can be used in Logic Processor expressions.
Operator Description
AND Evaluates to TRUE if the left and right operands are both TRUE.
XOR Evaluates to TRUE if the left and right operands have different values.
EQV Evaluates to TRUE if the left and right operands have the same value.
Relational Operators
The following table presents the relational operators that can be used in Logic Processor
expressions.
Operator Description
< Evaluates to TRUE if the left operand is less than the right operand.
> Evaluates to TRUE if the left operand is greater than the right operand.
<= Evaluates to TRUE if the left operand is less than or equal to the right operand.
>= Evaluates to TRUE if the left operand is greater than or equal to the right operand.
This appendix presents the system data points that are available for each Automation Functions
component instance.
Name Description
___OutOfSequence A transition could not be processed in chronological order.
When this point is asserted (set to 1), the timestamp of the out-of-
sequence transition is assigned to this system point.
Note: This point is used by the Transition Sort feature. Refer to the description
of the Transition Sort Delay general setting (page A-1) for additional
details.