MATLAB: Unexpected results with variable integer delay block

MATLAB and Simulink Student Suitevariable integer delay

When using the variable integer delay block with time variable delay value, which value and which instance is reflected into the delay operation ?
There is no specific value for the delay value, which produces unexpected results.
I attached screenshot and simulink model.
Simulink_QNA.jpg

Best Answer

Hi Donghyuk,
Your model seems to be working as expected - the output it gives is correct.
Variable integer delay simply implements the equation y(t) = x(t - d(t)*Ts), where 'Ts' is sample time and 'd' is the integer delay signal given as input.
For your question, for the time that d=7 it would go back 7*0.1 (because sample time is 0.1) = 0.7 seconds and produce the input it received then (so to speak). Then, at t = 0.1-0.2 when d=4, it's outputting the input value from 0.4 seconds ago. Then, when d=8, it outputs the input it recieved 0.8 seconds ago. And so on....
Hope that clears it up.