Received signal not on sampling time

4 views (last 30 days)
Hello all,
I have a sequence d of length N samples each of duration Ts. The channel I have will scale the received samples by a factor (1+a), which means that the received samples will not be on multiples of Ts but on multiples of Ts*(1+a). How can I capture this effect in MATLAB?
Thanks in advance

Accepted Answer

Star Strider
Star Strider on 24 Apr 2014
I’m not certain I completely understand what you want to do, but the Signal Processing Toolbox function resample may work.
  54 Comments

Sign in to comment.

More Answers (1)

rifat
rifat on 28 Apr 2014
I think the following script should do the work:
signal_vector= [1 1 1 1 1]; % Define your signal here
Ts=1/50; % Define sampling period here
a=1; % define 'a' here
N=length(signal_vector);
x=0:Ts:(N-1)*Ts;
new_x=0:(1+a)*Ts:(N-1)*(1+a)*Ts;
new_signal=interp1(x,signal_vector,new_x,'cubic'); % change the algorithm flag to
% 'pchip' or 'spline' if
% you need
  11 Comments
S. David
S. David on 12 May 2014
No, I am adding the noise after interpolation. So, in this case, 'cubic' works fine I guess. But I am not sure how accurate the whole interpolation process.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!