@inuse/node-red-contrib-ifm-vvb001 0.0.4
A Node red package that handles communication with an ifm VVB001 sensor through iolink.
node-red-contrib-ifm-vvb001
Node-RED nodes that handles data transfers from IFM VVB sensors.
It includes the following nodes to retrieve monitoring data and transfer a raw acceleration BLOB*:
get data: Gets the monitoring data from a VVB sensorO (V rms, A rms, A peak, Temperature and Crest).stream blob: Start a BLOB generation, extract it and convert it to m/s^2 unit.blob status: Return the status of the BLOB (ex: transmission is in progress or idle)abort blob: Run the abort BLOB transfer command. If the data transfer must be stopped before the end of the transfer, the transfer must be aborted. If not, a new Start command for reading the BLOB can't be raised with success.
*A BLOB is a record of raw acceleration at a high frequency (4 seconds at a frequency of 25 KHz which represents a time serie of 100K values)
Installation
In Node-RED (preferred)
- Via Manage Palette -> Search for "node-red-contrib-ifm-vvb001"
In a shell
Basic installation:
- go to the Node-RED "userDir" folder, typically
~/.node-red - run
npm install node-red-contrib-ifm-vvb001
Usage
Usage of get data
The easiest usage of the node get data is the following:
This node will return a modified msg with the following payload:
{
"data": {
"v_Rms": 0.0001,
"a_Peak": 0.2,
"a_Rms": 0,
"Temperature": 33,
"Crest": 4.2,
"status": "OK"
},
"ts": "2022-07-07T21:32:22.133Z"
}
where:
v_Rmsis the speed root mean square in m/sa_Peakis the acceleration peak in m/s^2a_Rmsis the acceleration root mean square in m/s^2Temperatureis the temperature is celsius degreesCrestStatusis the device statustsis the timestamp of this event
Usage of stream blob
The easiest usage of the node stream blob is the following:
The blob status node check if there is an ongoing blob acquisition. If it is the case, you cannot run stream blob until the actual blob transfer is finished or aborted using abort blob.
The stream blob node will return a modified msg with the following payload:
{
"ts": "2022-07-07T21:43:34.542Z",
"length": 200000,
"acceleration": [
1.010053825378418,
1.0848726272583007,
1.1035773277282714,
"..."
],
"crc": "4076F8421C"
}
where:
lengthis the BLOB length in bytes (200K)accelerationis the raw acceleration recorded on 4 seconds using 25 KHz acquisition (vector of 100K values)crcis the CRC signature of the BLOBtsis the start timestamp of this recording