我在MATLAB中有一个低于scatterplot
的信号:
信号的调制是DBPSK。
图像显示信号具有大约90度的相移,我应该对其进行补偿。我怎么能这样做?
这是我的数据集样本
data5 = [-0.0703 + 0.1811i 0.0680 - 0.3231i -0.1260 + 0.2963i 0.0703 - 0.3155i -0.1177 + 0.3011i 0.0488 - 0.3208i -0.1009 + 0.3089i 0.0517 - 0.3216i -0.1171 + 0.3040i 0.0581 - 0.3206i]
这是我的MATLAB代码:
scatterplot(data5)
%% attempt to find the phase shift
xd = real(data5);
yd = imag(data5);
fitt = fittype({'x'});
ft = fit( xd', yd', fitt);
rad = atan(ft.a);
bpskdemod = comm.DBPSKDemodulator('PhaseRotation',rad);
bit = bpskdemod(data5')'
scatterplot(bit)
在这段代码中,我尝试通过在我的信号上插入一条线来找到相移,然后使用它的斜率作为相位。