多普勒失真信号采样Matlab模拟分析
方案
水声通信指的是使用声信号在水中数据传输。
相对而言。电磁信号在水中吸收严重衰减过快,光信号受水中悬浮颗粒的影响,也无法完毕远距离传输。
这两种信号的传播距离约为数百米,而声信号在水中传播距离达到数十千米。成为水下通信的首选方式。
水声通信的一个重大挑战就是运动带来的多普勒。
多普勒造成信号的频率漂移,影响系统性能,因此很有必要消除多普勒带来的影响。而多普勒在时域的表现为信号的长度压缩和扩展。即'y(t) = x((1+a) * t)',当中a为多普勒因子。而假设预计出多普勒因子,之后採用重採样技术就能够恢复得到原始信号x(t)
= y( t/(a+a) )。
重採样的意义就是插值。从一个信号插值得到多普勒影响前后的信号。而1+a一般为小数,尽管採用多相滤波能够达到非常好的插值效果,但复杂度太高。
相比之下,线性插值、样条插值等方式运算量小,在做数字系统的时候更加合适
Matlab一维插值
MATLAB中的插值函数为interp1(),其调用格式为 yi=interp1(x,y,xi,
'method')。当中x,y为观測数据点,xi为插值(自变量)向量,yi为xi的插值结果(函数值)。
'method'表示採用的插值方法。
取值'nearest'为最邻近插值,'linear'是线性插值,'spline'是三次样条插值,'cubic'为分段三次Hermite插值。
默认情况为线性插值,三次样条效果最平滑。三次效果多项式介于两者