User`s guide

13
6 - Benchmark
Considering that relays and circuit breakers demand short response times between the actual
error and the moment when the signal has been analysed, a benchmark is of great interest.
The model used for benchmarking
To test the system performance the model above was used. Within the first triggered
subsystem a 1000
th
order FIR-filter is started as the user pushes one of the buttons on the
hardware’s front plate. At the same time a timer-position is saved, this value is then compared
to the timer-position that is read the moment the calculations are done and the second
subsystem is triggered.
The calculations performed between the two timer-positions are shown in the code segment
shown below:
/* DiscreteFilter Block: '<S2>/Discrete Filter' */
{
int_T i;
const real_T *Amtx = &temp_P.DiscreteFilter_A[0];
real_T *x = &temp_DWork.DiscreteFilter_DSTATE[0];
real_T xtmp = temp_P.Constant_Value;
for (i=998; i>0; i--) {
xtmp += Amtx[i]*x[i];
x[i] = x[i-1];
}
x[0] = xtmp + Amtx[0]*x[0];
}
}
After a vast number of runs, the program consistently returns the timer-difference 540.