### ACD – Archive compression using Delta criterion

Block SymbolLicensing group: STANDARD Function Description
The ACD block is meant for storing compressed analog signals to archives using archive events.

The main idea is to store the input signal u only when it changes significantly. The interval between two samples is in the range $⟨$tmin,tmax$⟩$ seconds (rounded to the nearest multiple of the sampling period). A constant input signal is stored every tmax seconds while rapidly changing signal is stored every tmin seconds.

When the execution of the block is started, the first input value is stored. This value will be referred to as u0 in the latter. The rules for storing the following samples are given by the delta and TR input signals.

For $\mathtt{\text{TR}}=\mathtt{\text{off}}$ the condition $|\mathtt{\text{u}}-\mathtt{\text{u0}}|>\mathtt{\text{delta}}$ is checked. If it holds and the last stored sample occurred more than tmin seconds ago, the value of input u is stored and u0=u is set. If the condition is fulfilled sooner than tmin seconds after the last stored value, the error output E is set to 1 and the first value following the tmin interval is stored. At that time the output E is set back to 0 and the whole procedure is repeated.

For $\mathtt{\text{TR}}=\mathtt{\text{on}}$ the input signal values are compared to a signal with compensated trend. The condition for storing the signal is the same as in the previous case.

The following figure shows the archiving process for both cases: a) $\mathtt{\text{TR}}=\mathtt{\text{off}}$, b) $\mathtt{\text{TR}}=\mathtt{\text{on}}$. The stored samples are marked by the symbol $×$. Inputs

 u Signal to compress and store Double (F64) delta Threshold for storing the signal  $↓$0.0 $↑$1e+10 Double (F64)

Outputs

 y The last value stored in the archive Double (F64) E Error flag – indicates that a significant change in the input signal occurred sooner than the tmin interval passes Bool off .. No error on ... An error occurred

Parameters

 acls Archive class determining the variable type to store  $\odot$8 Byte (U8) 1 .... Bool 2 .... Byte (U8) 3 .... Short (I16) 4 .... Long (I32) 5 .... Word (U16) 6 .... DWord (U32) 7 .... Float (F32) 8 .... Double (F64) –- ... 10 ... Large (I64) arc List of archives to store the events. The format of the list is e.g. 1,3..5,8. The event will be stored in all listed archives (see the ARC block for details on archives numbering). Third-party programs (Simulink, OPC clients etc.) work with an integer number, which is a binary mask, i.e. 157 (binary 10011101) in the mentioned case. Word (U16) id Identification code of the event in the archive. This identifier must be unique in the whole target device with the REXYGEN control system (i.e. in all archiving blocks). Disabled for $\mathtt{\text{id}}=0$.  $\odot$1 Word (U16) tmin The shortest interval between two samples of the u input signal stored in the archive [s]  $↓$0.001 $↑$1000000.0 $\odot$1.0 Double (F64) tmax The longest interval between two samples of the u input signal stored in the archive [s]  $↓$1.0 $↑$1000000.0 $\odot$1000.0 Double (F64) TR Trend evaluation flag  $\odot$on Bool off .. The deviation of the input signal from the last stored value is evaluated on ... The deviation of the input signal from the last value’s trend is evaluated Desc Extended description of the event which is displayed by the diagnostic tools of the REXYGEN system  $\odot$Value Description String

2020 © REX Controls s.r.o., www.rexygen.com