Визуализируйте этапы фильтра
Пропустите входной сигнал через комплексную полосу пропускания decimator и визуализируйте отфильтрованный спектр в спектре анализатор.
Инициализация
Создайте dsp.ComplexBandpassDecimator
Система object™ с центральным набором частоты к 2 000 Гц, пропускной способностью набора интереса к 1 000 Гц и набора частоты дискретизации к 48 кГц. Фактор децимации вычисляется как отношение частоты дискретизации к пропускной способности интереса. Вход к decimator является синусоидой с продолжительностью системы координат 1 200 выборок с тонами на уровне 1 625 Гц, 2 000 Гц и 2 125 Гц. Создайте dsp.SpectrumAnalyzer
определите объем, чтобы визуализировать спектр сигнала.
Fs = 48e3; CF = 2000; BW = 1000; D = Fs/BW; FrameLength = 1200; bpdecim = dsp.ComplexBandpassDecimator(D,CF,Fs); sa = dsp.SpectrumAnalyzer('SampleRate',Fs/D,... 'YLimits',[-120 40],... 'FrequencyOffset',CF); tones = [1625 2000 2125]; sin = dsp.SineWave('SampleRate',Fs,'Frequency',tones,... 'SamplesPerFrame',FrameLength);
Визуализируйте этапы фильтра
Используя visualizeFilterStages
функция, можно визуализировать ответ каждого отдельного этапа фильтра с помощью FVTool.
visualizeFilterStages(bpdecim)
Фильтр дисплейного отображения info
info
функционируйте информация об отображениях о полосе пропускания decimator.
fprintf('%s',info(bpdecim))
Overall Decimation Factor : 48 Bandwidth : 1000 Hz Number of Filters : 5 Real multiplications per Input Sample: 14.708333 Real additions per Input Sample : 13.833333 Number of Coefficients : 89 Filters: Filter 1: dsp.FIRDecimator - Decimation Factor : 2 Filter 2: dsp.FIRDecimator - Decimation Factor : 2 Filter 3: dsp.FIRDecimator - Decimation Factor : 2 Filter 4: dsp.FIRDecimator - Decimation Factor : 3 Filter 5: dsp.FIRDecimator - Decimation Factor : 2
Поток в и сигнал фильтра
Создайте цикл for, чтобы запуститься для 1 000 итераций. В каждой итерации, потоке в 1 200 выборках (одна система координат) шумной синусоиды и применяют комплексную полосу пропускания decimator на каждую систему координат входного сигнала. Визуализируйте спектр ввода и вывода в спектре анализатор, sa
.
for index = 1:1000 x = sum(sin(),2) + 1e-4*randn(FrameLength,1); z = bpdecim(x); sa(z); end
Полоса пропускания decimator с центральной частотой на уровне 2 000 Гц и пропускной способностью 1 000 Гц передает три тона синусоиды на уровне 1 625 Гц, 2 000 Гц и 2 125 Гц.
Измените центральную частоту decimator к 2 400 Гц и отфильтруйте сигнал.
release(bpdecim); bpdecim.CenterFrequency = 2400
bpdecim = dsp.ComplexBandpassDecimator with properties: CenterFrequency: 2400 Specification: 'Decimation factor' DecimationFactor: 48 StopbandAttenuation: 80 TransitionWidth: 100 MinimizeComplexCoefficients: true SampleRate: 48000
Сконфигурируйте спектр анализатор, чтобы показать пропускную способность интереса, [-1900, 2900] Гц.
release(sa) sa.FrequencyOffset = 2400;
Поток в данных и фильтре сигнал.
for index = 1:1000 x = sum(sin(),2) + 1e-4 * randn(FrameLength,1); z = bpdecim(x); sa(z); end
Тоны на уровне 2 000 Гц и 2 125 Гц передаются через decimator, в то время как тон на уровне 1 625 Гц отфильтрован.
Создайте многоступенчатый конвертер частоты дискретизации со свойствами по умолчанию, соответствование объединенным трем этапам фильтра раньше преобразовывало от 192 кГц до 44,1 кГц. Визуализируйте этапы.
src = dsp.SampleRateConverter; visualizeFilterStages(src)
sysobj
— Отфильтруйте Системный объектОтфильтруйте Системный объект, заданный как одно из следующего:
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.