Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

PI System Management Tools

Arma

  • Last UpdatedFeb 19, 2025
  • 2 minute read

Calculate dynamic response for Auto Regressive Moving average model as shown in Examples.

Syntax

Arma(in, runflag, (a1, a2, โ€ฆ aN),(b0, b1, b2, โ€ฆ bN))

Arguments

The denominator and numerator coefficient series are enclosed in parenthesis with a comma between the two. There must be only one more term (b0) in the numerator than denominator. Both in and runflag may be any expression that evaluates to a number.

in

Must be an integer or real number.

runflag

Non-zero enables filter to run.

a1, a2, ...

Coefficients of past output terms.

b0, b1, b2 ...

Coefficients of the present and past input terms of the model.

Returns

The next output value in time series response to past and present input.

ut = a1 * ut-1 + a2 * ut-2 + โ€ฆ + an * ut-n + b0 * yt +
b1 * yt-1 + b2 * yt-2 + โ€ฆ + bn * yt-n

Where ut is model output at time t, now. ut-1 is output one sample interval in the past. yt is the input signal at time t. If runFlag expression result is 0, the model is reset. Depending on the number of coefficients used, Arma stores the inputs and outputs until an evaluation of the model is available. For example, in

Arma( 'input_tag', 1, ( 0. ,1), ( 1, -1 ,1))

Arma stores two previous values of the input and output. Hence when the point is first created, no good results are returned until two prior values of the input are stored. From then on, the two most current previous values are stored.

Exceptions

Arma gives different results depending on which type of scheduling is used. In scan class scheduling, the interval between time series values depends on the scan class and gives values at evenly spaced time intervals.

Event-based scheduling is dependent on a trigger from another point. With event-based scheduling, Arma sometimes gives results that are not trustworthy. Use Arma with event-based scheduling only:

  • If the exception deviation is not zero.

  • If the point used for event-based scheduling is exception-base rather than scan-based.

Arma is intended for the PE Scheduler only. Use of Arma in client applications might produce unexpected results. If the input point is not a real number or integer, Arma returns an error.

Example

Derivative: Arma('input_tag', 1, (0.), (1, -1))

Integration: Arma('input_tag', 1, (1.), (.05, 0.))

Second order filter: Arma('input_tag', 1, (.25,.25), (.1,.25,.15 ))

Diagram of input signal processing with weighted coefficients (๐‘๐‘›b nโ€‹ ), summation (โˆ‘โˆ‘), and output adjustment using (๐‘Ž๐‘›a nโ€‹ ).

In This Topic
TitleResults for โ€œHow to create a CRG?โ€Also Available in