verticalBathtub

Вертикальная кривая ванны

Синтаксис

Описание

пример

s = verticalBathtub(ed) возвращает структуру, содержащую информацию о кривой verticalBattub для системной object™.

Примечание

Этот метод доступен, когда применяются оба из следующих условий:

  • EnableMeasurements является true

  • ShowBathtub является 'Vertical' или 'Both'

Примеры

свернуть все

Отобразите глазковую диаграмму для формы волны, имеющей двойной дирак и случайный дрожание. Сгенерируйте и постройте графики горизонтальных и вертикальных кривых ванны.

Задайте частоту дискретизации, выборки на символ и количество параметров трассировки.

fs = 1000;
sps = 200;
numTraces = 1000;

Создайте объект глазковой диаграммы.

ed = comm.EyeDiagram('SampleRate',fs,'SamplesPerSymbol',sps, ...
    'SampleOffset',sps/2,'DisplayMode','2D color histogram', ...
    'ColorScale','Logarithmic','EnableMeasurements',true, ...
    'ShowBathtub','Both','YLimits',[-1.2 1.2]);

Сгенерируйте форму волны, имеющую двойной дирак и случайный дрожание. Задайте 3 мс подъёма и времен спада.

src = commsrc.pattern('SamplesPerSymbol',sps, ...
    'RiseTime',3e-3,'FallTime', 3e-3);
src.Jitter = commsrc.combinedjitter('RandomJitter','on', ...
    'DiracJitter','on','DiracDelta',[-5e-04 5e-04],'RandomStd',2e-4);

Сгенерируйте два символа для каждой трассировки.

x = src.generate(numTraces*2);

Передайте сигнал через канал AWGN с фиксированным seed для повторяемых результатов.

randStream = RandStream('mt19937ar','Seed',5489);
y = awgn(x,30,'measured',randStream);

Отобразите глазковую диаграмму.

ed(y)

Eye diagram showing horizontal and vertical bathtubs and measurements

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

hb = horizontalBathtub(ed)
semilogy([hb.LeftThreshold],[hb.BER],'b', ...
    [hb.RightThreshold],[hb.BER],'b')
grid
hb = 

  1x13 struct array with fields:

    BER
    LeftThreshold
    RightThreshold

Horizontal bathtub data for the eye diagram

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

vb = verticalBathtub(ed)
semilogx([vb.BER],[vb.LowerThreshold],'b', ...
    [vb.BER],[vb.UpperThreshold],'b')
grid
vb = 

  1x13 struct array with fields:

    BER
    UpperThreshold
    LowerThreshold

Vertical bathtub data for the eye diagram

Входные параметры

свернуть все

Объект системы глазковых диаграмм, откуда вы получаете информацию о кривой ванны.

Выходные аргументы

свернуть все

Структура, содержащая информацию о вертикальной кривой ванны.

Значения частоты битовой ошибки, отображенные на оси Y графика verticalBattub относительно соответствующего UpperThreshold и LowerThreshold значения на оси X, заданные как скаляр.

Типы данных: double

Верхнее пороговое значение, сопоставленное по оси X на графике с соответствующим BER значение на оси X.

Типы данных: double

Более низкое пороговое значение, сопоставленное по оси X на графике с соответствующим BER значение на оси X.

Типы данных: double

См. также

Введенный в R2016b