SI Detect Feedback VI

System Identification VIs

SI Detect Feedback VI

Owning Palette: Data Preprocessing VIs

Installed With: System Identification Toolkit

Detects if feedback exists in a system using the impulse response of the system. Wire data to the stimulus signal and response signal inputs to determine the polymorphic instance to use or manually select the instance.

Details  Example

Use the pull-down menu to select an instance of this VI.

 Place on the block diagram  Find on the Functions palette

SI Detect Feedback (Waveform)

impulse response length specifies the number of points for which to compute the impulse response.
num of points (t<0) determines the number of data points at the negative lag for which to compute the impulse response.
num of points (t>=0) determines the number of data points starting from t=0 for which to compute the impulse response.
stimulus signal specifies the input waveform of the stimulus signal.
response signal specifies the input waveform of the response signal.
confidence level (%) specifies the percentage level of confidence to use when computing the upper and lower limits in an impulse response graph. The default is 99.5. A larger confidence level results in a wider insignificant region.
error in describes error conditions that occur before this VI or function runs. The default is no error. If an error occurred before this VI or function runs, the VI or function passes the error in value to error out. This VI or function runs normally only if no error occurred before this VI or function runs. If an error occurs while this VI or function runs, it runs normally and sets its own error status in error out. Use the Simple Error Handler or General Error Handler VIs to display the description of the error code. Use error in and error out to check errors and to specify execution order by wiring error out from one node to error in of the next node.
status is TRUE (X) if an error occurred before this VI or function ran or FALSE (checkmark) to indicate a warning or that no error occurred before this VI or function ran. The default is FALSE.
code is the error or warning code. The default is 0. If status is TRUE, code is a nonzero error code. If status is FALSE, code is 0 or a warning code.
source specifies the origin of the error or warning and is, in most cases, the name of the VI or function that produced the error or warning. The default is an empty string.
feedback exists? indicates if feedback exists in the system.
impulse response graph returns the estimated impulse response of the system in a graph.
error out contains error information. If error in indicates that an error occurred before this VI or function ran, error out contains the same error information. Otherwise, it describes the error status that this VI or function produces. Right-click the error out front panel indicator and select Explain Error from the shortcut menu for more information about the error.
status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred.
code is the error or warning code. If status is TRUE, code is a nonzero error code. If status is FALSE, code is 0 or a warning code.
source describes the origin of the error or warning and is, in most cases, the name of the VI or function that produced the error or warning.

SI Detect Feedback (Array)

impulse response length specifies the number of points for which to compute the impulse response.
num of points (t<0) determines the number of data points at the negative lag for which to compute the impulse response.
num of points (t>=0) determines the number of data points starting from t=0 for which to compute the impulse response.
stimulus signal is the input array of the stimulus signal.
response signal is the input array of the response signal.
confidence level (%) specifies the percentage level of confidence to use when computing the upper and lower limits in an impulse response graph. The default is 99.5. A larger confidence level results in a wider insignificant region.
error in describes error conditions that occur before this VI or function runs. The default is no error. If an error occurred before this VI or function runs, the VI or function passes the error in value to error out. This VI or function runs normally only if no error occurred before this VI or function runs. If an error occurs while this VI or function runs, it runs normally and sets its own error status in error out. Use the Simple Error Handler or General Error Handler VIs to display the description of the error code. Use error in and error out to check errors and to specify execution order by wiring error out from one node to error in of the next node.
status is TRUE (X) if an error occurred before this VI or function ran or FALSE (checkmark) to indicate a warning or that no error occurred before this VI or function ran. The default is FALSE.
code is the error or warning code. The default is 0. If status is TRUE, code is a nonzero error code. If status is FALSE, code is 0 or a warning code.
source specifies the origin of the error or warning and is, in most cases, the name of the VI or function that produced the error or warning. The default is an empty string.
feedback exists? indicates if feedback exists in the system.
impulse response graph returns the estimated impulse response of the system in a graph.
error out contains error information. If error in indicates that an error occurred before this VI or function ran, error out contains the same error information. Otherwise, it describes the error status that this VI or function produces. Right-click the error out front panel indicator and select Explain Error from the shortcut menu for more information about the error.
status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred.
code is the error or warning code. If status is TRUE, code is a nonzero error code. If status is FALSE, code is 0 or a warning code.
source describes the origin of the error or warning and is, in most cases, the name of the VI or function that produced the error or warning.

SI Detect Feedback Details

The SI Detect Feedback VI first estimates the impulse response of an unknown system using the least squares method. This VI then calculates upper and lower limits according to the confidence level you set. Any value in the impulse response at a negative lag that is outside the upper and lower limit range is considered significant, or nonzero. Significant values at negative lags indicate that the current stimulus signal correlates with the previous response signal. Thus, feedback exists in the system.

The process of estimating the impulse response contains an inversion operation on the autocorrelation matrix of the stimulus signal. Thus, the autocorrelation matrix of the stimulus signal must be well conditioned. In other words, the stimulus signal must be as white as possible. Otherwise, the result of the feedback detection might be unreliable.

This VI supports only single-input single-output (SISO) systems. For multiple-input single-out (MISO) and multiple-input multiple-output (MIMO) systems, you must run this VI between any possible input-output signal pairs to detect if feedback exists.

Example

Refer to the Feedback Detection VI in the labview\examples\System Identification\Getting Started\General.llb for an example of using the SI Detect Feedback VI.

 Open example  Browse related examples