Advanced control blocks > Neural Network (NN) function block

Neural Network function block execution

The value, status, and associated scaling of the configured inputs are reported unsolicited to the neural network (NN) block. In both Auto and Man modes, inputs selected during sensitivity analysis are used to calculate the process output. Also, the block calculates the future output of the process for the current input values. If the value of an input or output is outside the data range used to train the neural network, the value is limited to the data range. If correction is enabled (CORR_ENABLE) and the status of the sample is not limited, the block computes the model error by taking the difference between the current sample process output (SAMPLE) and the calculated Neural Network output delayed by the sample time (DELAY). After limiting the difference to ± the correction limit (CORR_LIMIT), the block filters the model error to obtain the calculated model correction bias (CORR_BIAS). The block adds the calculated correction bias to the calculated process output (OUT) and future output (FUTURE). Note that the NN block retains OUT values upto a maximum delay of the Time to Steady State (TSS) value configured in the DeltaV Neural application. Therefore, a SAMPLE value entered with DELAY greater than TSS will not affect the CORR_BIAS value.

In Auto mode, the OUT parameter and FUTURE parameter of the block reflect the corrected process output and future value respectively. In Man mode, the block updates the FUTURE parameter only.

If one or more of the reference inputs is invalid, the NN block sets Readback Failed and Input Failure/Bad PV in BLOCK_ERR. The status of all of the inputs is set to Bad resulting in the OUT and FUTURE being set to Bad OOS (out of service). Also, in the trend parameter list the inputs have a value of 0.0 and in the trend view the inputs with invalid references have the value 0.

When one or more of the inputs used in the NN block has a status of Bad, the Input Failure/Bad PV is set in BLOCK_ERR.

If an input or output value is limited to the data range used in training the NN, the Other Error is set in BLOCK_ERR and the FUTURE and OUT have an Uncertain status. The value used in computing the NN prediction is limited to the training range. Typically, FUTURE precedes OUT in going to Uncertain because OUT uses the delayed inputs, which would have been within training range. When the value is back within training range, FUTURE again precedes OUT in returning to Good status. Your configuration of BAD_MASK determines whether these conditions cause BAD_ACTIVE or ABNORMAL_ACTIVE to be set.

If the FOLLOW input is active (1) and the mode is AUTO, then the OUT parameter value and status is forced to match the SAMPLE input value and status. When the module that contains the NN block is downloaded, the block is initialized using the current input values.