Can spectrumAnalyzer show the power level of complex I&Q signal?

조회 수: 2 (최근 30일)
Taehwan Kim
Taehwan Kim 2024년 5월 14일
답변: Alan 2024년 5월 20일
I created a complex linear frequency modulated Chirp signal (constant envelop) anad complex noise. When I use spectrumAnalyzer within the MATLAB live script, it shows non-constant spectrum. Is there a way to show complex signal's power and noise?
% For repeatable simulations, set the random number generator to default
rng default;
noisesigI = wgn(numSamples,1,10*log10(N))';
noisesigQ = wgn(numSamples,1,10*log10(N))';
noisesig = 1/(sqrt(2))*complex(noisesigI,noisesigQ);
rxwaveform = (scaledsig + noisesig);
% Scale the received signal for having unit power
Scaled_rxwaveform = rxwaveform/rms(rxwaveform);
ShowVisualizations =1;
if ShowVisualizations == 1
rxscope = spectrumAnalyzer(SampleRate = baseFs, ...
PlotAsTwoSidedSpectrum = true, ...
SpectrumType = "Power", ...
SpectrumUnits = "dBW", ...
Title = "Received signal BB UDC + Noise spectrum");
rxscope(rxwaveform', noisesig',scaledsig'); %scope accepts only column vec.
end

답변 (1개)

Alan
Alan 2024년 5월 20일
Hi Taehwan,
It looks like you are expecting only the noise signal’s spectrum. The figure you have shown has 3 spectrums which are the original signal, noise signal, and the signal with noise. That is because you have called rxscope on all 3 signals together.
If you aim to view the signals separately, call different instances of spectrumAnalyzer on each signal separately:
rxscope = spectrumAnalyzer('SampleRate', fs, ...
'PlotAsTwoSidedSpectrum', true, ...
'SpectrumType', "Power", ...
'SpectrumUnits', "dBW", ...
'Title', "Resultant Signal");
rxscope(rxwaveform'); % Resultant signal with noise
rxscope2 = spectrumAnalyzer('SampleRate', fs, ...
'PlotAsTwoSidedSpectrum', true, ...
'SpectrumType', "Power", ...
'SpectrumUnits', "dBW", ...
'Title', "Noise Signal");
rxscope2(noisesig'); % Noise signal
For more information on spectrumAnalyzer you can check out:
I hope this helps.

카테고리

Help CenterFile Exchange에서 Spectral Measurements에 대해 자세히 알아보기

제품


릴리스

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by