Signal Validation nodes¶
Usage of Signal Validation nodes¶
The following listing shows the specific "Signal Validation" nodes and their respective functions:
Detect range violations¶
The "detect range violations" node performs range check and finds the data going beyond the specified limit on timeseries data provided in the message payload and sends the data to node output.
You use this node to:
- Detect the range violations of an asset as per the threshold limit.
Detect spikes¶
The "Detect spikes" node performs spike detection and find the spikes for given timeseries data provided in message payload and sends the list with the detected spikes to the node output. You need to specify the window size to view the spike data. For more information on the window size, see Spike Alert.
You use this node to:
- Detect the spike value for an asset as per the specified limit.
Using Signal Validation nodes¶
Example scenario¶
You can use signal validation nodes to detect the range values going beyond the threshold limit and to detect the spike data of the sensors on a given interval of the time series data.
Objective¶
To perform the detection of the range values going beyond the threshold limit and to detect the spike data of the sensors
Pre-requisites¶
Enter the following example code in the payload of the inject node to detect the range violations of the sensors on given interval.
Code
[
{
"temperature": 50,
"_time": "2018-01-02T00:01:00Z"
},
{
"temperature": 50,
"_time": "2018-01-02T00:02:00Z"
},
{
"temperature": 50,
"_time": "2018-01-02T00:03:00Z"
},
{
"temperature": 50,
"_time": "2018-01-02T00:04:00Z"
},
{
"temperature": 50,
"_time": "2018-01-02T00:05:00Z"
},
{
"temperature": 70,
"_time": "2018-01-02T00:06:00Z"
},
{
"temperature": 60,
"_time": "2018-01-02T00:07:00Z"
},
{
"temperature": 50,
"_time": "2018-01-02T00:08:00Z"
},
{
"temperature": 50,
"_time": "2018-01-02T00:09:00Z"
},
{
"temperature": 50,
"_time": "2018-01-02T00:10:00Z"
},
{
"temperature": 50,
"_time": "2018-01-02T00:11:00Z"
},
{
"temperature": 50,
"_time": "2018-01-02T00:12:00Z"
},
{
"temperature": 20,
"_time": "2018-01-02T00:13:00Z"
},
{
"temperature": 30,
"_time": "2018-01-02T00:14:00Z"
},
{
"temperature": 50,
"_time": "2018-01-02T00:15:00Z"
}
]
Enter the following example code in the payload of the inject node to detect the spike for a given sensors values.
Code
[
{
"var1": "1.0",
"_time": "2017-04-20T12:00:00.000Z"
},
{
"var1": "1.1",
"_time": "2017-04-20T12:00:01.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:02.000Z"
},
{
"var1": "0.9",
"_time": "2017-04-20T12:00:03.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:04.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:05.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:06.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:07.000Z"
},
{
"var1": " ",
"_time": "2017-04-20T12:00:08.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:09.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:10.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:11.000Z"
},
{
"var1": " 100.0",
"_time": "2017-04-20T12:00:12.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:13.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:14.000Z"
},
{
"var1": "0.9",
"_time": "2017-04-20T12:00:15.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:16.000Z"
},
{
"var1": "0.9",
"_time": "2017-04-20T12:00:17.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:18.000Z"
},
{
"var1": "0.9",
"_time": "2017-04-20T12:00:19.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:20.000Z"
},
{
"var1": "0.9",
"_time": "2017-04-20T12:00:21.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:22.000Z"
},
{
"var1": "0.9",
"_time": "2017-04-20T12:00:23.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:24.000Z"
},
{
"var1": "0.9",
"_time": "2017-04-20T12:00:25.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:26.000Z"
},
{
"var1": "0.9",
"_time": "2017-04-20T12:00:27.000Z"
},
{
"var1": "1.0",
"_time": "2017-04-20T12:00:28.000Z"
},
{
"var1": "50.0",
"_time": "2017-04-20T12:00:29.000Z"
},
{
"var1": "49.9",
"_time": "2017-04-20T12:00:30.000Z"
},
{
"var1": "50.0",
"_time": "2017-04-20T12:00:31.000Z"
},
{
"var1": "49.9",
"_time": "2017-04-20T12:00:32.000Z"
},
{
"var1": "55.0",
"_time": "2017-04-20T12:00:33.000Z"
},
{
"var1": "50.0",
"_time": "2017-04-20T12:00:34.000Z"
},
{
"var1": "45.0",
"_time": "2017-04-20T12:00:35.000Z"
},
{
"var1": "50.0",
"_time": "2017-04-20T12:00:36.000Z"
},
{
"var1": "2.0",
"_time": "2017-04-20T12:00:37.000Z"
},
{
"var1": "3.0",
"_time": "2017-04-20T12:00:38.000Z"
},
{
"var1": "4.0",
"_time": "2017-04-20T12:00:39.000Z"
},
{
"var1": "5.0",
"_time": "2017-04-20T12:00:40.000Z"
},
{
"var1": "6.0",
"_time": "2017-04-20T12:00:41.000Z"
},
{
"var1": "7.0",
"_time": "2017-04-20T12:00:42.000Z"
},
{
"var1": "8.0",
"_time": "2017-04-20T12:00:43.000Z"
}
]
Detect range violations node procedure¶
- Select the "Detect range violations" node from the "Signal validation" palette.
-
Connect the inject node and input your payload code in the json editor. Connect the "Detect range violations" node with a message payload as shown below:
- Enter lower limit as 45 and upper limit as 55 in the edit detect range violations node.
-
Inject the payload node.
Result¶
The output is displayed in the message payload:
Detect range violations node output¶
Detect spikes node procedure¶
- Select the "Detect spikes" node from the "Signal validation" palette.
-
Connect the inject node and input your payload code in the json editor. Connect the "Detect spikes" node with a message payload as shown below:
- Enter window size as 11 in the edit detect spikes node.
-
Inject the payload node.
Result¶
The output is displayed in the message payload: