V2/Concepts/Expression
Contents
Expression
User can make use of Senfi's flexible autonomous intelligence engine to be alerted of abnormality in the system they are monitoring.
As introduced, an Expression is a tool that you can use to monitor your assets and be notified of abnormal situations or events. You can configure an expression to trigger an event to send email or notify your operators in the Digital Twin. Examples of use cases include: a fire is detected in a building, a lift has broken down, or when a machine is overdue for maintenance. Expression editor is the tool you can use to configure these conditions.
An Expression in Senfi comprises of:
- Inputs - Assets, Metric & Tag values
- Conditions - Data transformation and/or logic
- Result - False to True / True to False
- Event - Trigger Event when Result changes. e.g. fire detected
- Expression execution type - Configures when a Expression is evaluated
Inputs are evaluated by Conditions to generate a single Result. When value of Result changes (from False to True or True to False), an Event can be triggered. Actions defined in the Event such as email and Digital Twin alerts, are executed when the Event is triggered. Expression execution type allows you to configure how the Expression is executed. e.g: how often the Expression is evaluated, whether it's immediate or on poll.
Inputs --> Conditions --> Result
Result Changed --> Event --> Actions
Example
Using our Smart Weighing Scale measurement from earlier, we can form one simple Expression as follows:
- Input: iot_weighingscale_v1.battery_level
- Condition: < 20
- Event: Battery level low
- Action: Send email notification to remind changing of battery
- Expression execution type: Immediate (means evaluate this rule whenever there is any incoming measurement)
Inputs, Conditions and Result
Before adding an Expression, you should already have an Event or situation that you wish to be notified about. The Event or situation should be one that can be detected by monitoring data received by Senfi.
Select Assets as Inputs, from which the Measurements, Metrics, Location and Attribute can be used to detect an Event or situation. Then, construct the set of Conditions from data transformation or logic functions. The set of Conditions will evaluate from false to true or true to false when Event or situation occurs. The result of said Conditions is the Result of the Expression. Whenever Result changes (from true to false and vice versa), Events may be triggered.
Expression Editor
Expressions are created using the Expression Editor. The Expression Editor is a graph-based Drag & Drop editor.
Arrows coming in from the left of a node indicate its input and those going out from its right indicate its output.
Each Node falls into one of the following categories:
- Asset Identifier
- Input
- Data Transformation
- Logic
- Result
- Event
Data originates from Metric nodes, is transformed by Data Transformation and/or Logic nodes, and eventually consumed by Result & Event nodes.
See Node Type for more information about each Node Type.
What's Next
- What is needed to create an Expression
- Start creating your own Expression
- Learn about Event
- Learn about Alarm