Схема графика рассеивания или совокупности используется, чтобы визуализировать совокупность в цифровой форме модулируемого сигнала.
Чтобы произвести график рассеивания из сигнала, используйте scatterplot
, функционируют или используют Систему comm.ConstellationDiagram
object™. График рассеивания или схема совокупности могут быть полезными при сравнении производительности системы с опубликованным стандартом, такой как 3GPP или DVB.
Вы создаете объект comm.ConstellationDiagram
с объектом по умолчанию или путем определения пар "имя-значение".
Этот пример показывает, как использовать схемы совокупности для представления QPSK переданные и полученные сигналы, которые импульсной формы с повышенным фильтром косинуса.
Создайте модулятор QPSK.
qpsk = comm.QPSKModulator;
Создайте повышенный фильтр передачи косинуса с выборками на символ, sps
, равный 16.
sps = 16; txfilter = comm.RaisedCosineTransmitFilter('Shape','Normal', ... 'RolloffFactor',0.22, ... 'FilterSpanInSymbols',20, ... 'OutputSamplesPerSymbol',sps);
Сгенерируйте символы данных, примените модуляцию QPSK и передайте модулируемые данные через повышенный фильтр передачи косинуса.
data = randi([0 3],200,1); modData = qpsk(data); txSig = txfilter(modData);
Можно отобразить схему совокупности переданного сигнала с помощью scatterplot
. Поскольку сигнал сверхдискретизирован в фильтре вывод, необходимо десятикратно уменьшить количеством выборок на символ так, чтобы график рассеивания не показывал путь к переходу между точками совокупности. Если бы сигнал имел смещение синхронизации, вы могли бы обеспечить что как входной параметр, чтобы отобразить сигнальное созвездие с исправленным смещением синхронизации.
scatterplot(txSig,sps)
Поочередно, можно использовать comm.ConstellationDiagram
, задавая количество выборок на символ, и в случае необходимости смещения синхронизации. Кроме того, с помощью comm.ConstellationDiagram
можно показать ссылочную совокупность.
Создайте схему совокупности и установите свойство SamplesPerSymbol
на фактор сверхдискретизации сигнала. Задайте схему совокупности так, чтобы она только отобразила последние 100 выборок. Это скрывает нулевые значения, выведенные фильтром RRC для первых выборок FilterSpanInSymbols
.
constDiagram = comm.ConstellationDiagram('SamplesPerSymbol',sps, ... 'SymbolsToDisplaySource','Property','SymbolsToDisplay',100);
Отобразите схему совокупности переданного сигнала.
constDiagram(txSig)
Чтобы совпадать с сигналом к его ссылочной совокупности, нормируйте фильтр путем установки его усиления на квадратный корень из свойства OutputSamplesPerSymbol
. Это было ранее задано как sps
. Усиление фильтра является ненастраиваемым, таким образом, объект должен быть выпущен до изменения этого значения.
release(txfilter) txfilter.Gain = sqrt(sps);
Передайте модулируемый сигнал через нормированный фильтр.
txSig = txfilter(modData);
Отобразите схему совокупности нормированного сигнала. Точки данных и ссылочная совокупность почти накладываются.
constDiagram(txSig)
Чтобы просмотреть переданный сигнал более ясно, скройте ссылочную совокупность путем установки свойства ShowReferenceConstellation
на false
.
constDiagram.ShowReferenceConstellation = false;
Создайте сигнал с шумом путем передачи txSig
через канал AWGN.
rxSig = awgn(txSig,20,'measured');
Покажите ссылочную совокупность и постройте полученное сигнальное созвездие.
constDiagram.ShowReferenceConstellation = true; constDiagram(rxSig)
Можно также использовать scatterplot
, чтобы просмотреть этот сигнал с шумом, но существует не создано в опции, чтобы добавить ссылочную совокупность с помощью scatterplot
.
scatterplot(rxSig,sps)