I have a source that runs at 0.1 seconds and my controller needs to run at 0.01 seconds. I want to interpolate the source into the faster rate without delay. For instance, Source in 0.1 0, 10, 20
Resulting Controller Source in 0.01 0 0 0 0 0 0 0 0 0 0, 1 2 3 4 5 6 7 8 9 10, 11 12 13 14 15 16 17 18 19 20,
Is there anything that does this in Simulink? The input sample rate is slower than the output sample rate and the output is a linear interpolation.
The FIR Interpolation block from the DSP System Toolbox might be what you need, but you will need to adjust the filter coefficients and Interpolation factor to get what you need. Typically the Rate Transition block is used for rate conversion in Simulink, but it does not perform interpolation.
This has potential to work, but forgive my lack of knowledge on FIRs. How would I make the interpolation linear with this block?
2 Comments
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/44626#comment_91772
Will you have access to all of the source data at the start of running the controller?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/44626#comment_91922
Yes, I have complete access.