График сигнальных созвездий

Создайте 16-PSK созвездия

Этот пример показывает, как построить созвездие PSK, имеющее 16 точек.

Установите параметры для 16-PSK модуляции без смещения фазы и двоичного отображения символов.

M = 16;             % Modulation alphabet size
phOffset = 0;       % Phase offset
symMap = 'binary';  % Symbol mapping (either 'binary' or 'gray')

Создайте объект модулятора.

pskModulator = comm.PSKModulator(M,phOffset,'SymbolMapping',symMap);

Постройте график созвездия.

constellation(pskModulator)

Figure contains an axes. The axes with title Constellation: 16-PSK,Binary Mapping,PhaseOffset=0rad contains 19 objects of type line, text.

Создайте 32-QAM созвездия

Этот пример показывает, как построить созвездие QAM, имеющее 32 точки.

Используйте qammod функция для генерации 32-QAM символов с двоичным упорядоченным расположением символов.

M = 32;
data = 0:M-1;
sym = qammod(data,M,'bin');

Постройте график созвездия. Пометьте порядок символов созвездия.

scatterplot(sym,1,0,'b*');
for k = 1:M
    text(real(sym(k))-0.4,imag(sym(k))+0.4,num2str(data(k)));
end
axis([-6 6 -6 6])

Figure Scatter Plot contains an axes. The axes with title Scatter plot contains 33 objects of type line, text. This object represents Channel 1.

Создайте 8-QAM серого цвета с кодом созвездия

Используйте функцию qammod, чтобы сгенерировать символы 8-QAM с упорядоченным расположением символов Грея. Обратите внимание, что Грей-кодирование является отображением символов по умолчанию для qammod функция.

M = 8;
data = 0:M-1;
sym = qammod(data,M);

Постройте график созвездия. Пометьте порядок символов созвездия.

scatterplot(sym,1,0,'r*');
grid on
for k = 1:M
    text(real(sym(k))-0.4,imag(sym(k))+0.4,num2str(data(k)));
end
axis([-4 4 -2 2])

Figure Scatter Plot contains an axes. The axes with title Scatter plot contains 9 objects of type line, text. This object represents Channel 1.

Постройте график треугольного созвездия для QAM

Этот пример показов, как построить пользовательское созвездие ссылки QAM.

Опишите созвездие.

inphase = [1/2 -1/2 1 0 3/2 -3/2 1 -1];
quadr = [1 1 0 2 1 1 2 2];
inphase = [inphase; -inphase];
inphase = inphase(:);
quadr = [quadr; -quadr];
quadr = quadr(:);
refConst = inphase + 1i*quadr;

Создайте созвездие схемы Системный объект с помощью пар "имя-значение", чтобы задать название, пределы осей, тип маркера ссылки и цвет маркера ссылки.

constDiagram = comm.ConstellationDiagram('Title','Customized Constellation for QAM', ...
    'XLimits',[-3 3],'YLimits',[-3 3], ...
    'ReferenceConstellation',refConst, ...
    'ReferenceMarker','*','ReferenceColor',[0 1 0]);

Постройте график настраиваемого созвездия.

constDiagram(refConst)

См. также