Jump to content

    

Pavel Proskura

Участник
  • Content Count

    153
  • Joined

  • Last visited

Community Reputation

0 Обычный

About Pavel Proskura

  • Rank
    Частый гость

Recent Profile Visitors

4205 profile views
  1. Да, спасибо вроде бы разобрался. Остался непонятым только момент с каскадами, ведь действительно с точки зрения математики разницы быть не должно. Однако в том варианте как я делал для целочисленного преобразования, дробный вариант никак не хочет работать. Возможно его не поддерживает функция cascade. Хотя в Simulink данная конструкция работает вполне нормально. Из какой же позвольте узнать? Первоначально мой вопрос и звучал таким образом, что как я полагал fvtool не может отрисовать многокаскадный дробный интерполятор/дециматор. И я хотел получить ответ, как мне построить несколько АЧХ вкл. результирующую, и картинку привел как мне нужно чтобы все это выглядело. Следуя Вашим советам у меня не получалось добиться нужного мне результата. Я пытался уточнить как правильно сделать, но вместо этого получал ответы что никакой проблемы нет. А подобного рода скрипт для человека владеющего matlab накидать дело 2-3 мин. Но здесь я с Вами полностью согласен, что писать скрипты никто не обязан, хотя писать по большому счету для того примера который я привел, особо ничего и не надо. Извините что по беспокоил своей ерундой столь занятого человека.
  2. Добрый вечер. Вот я вроде бы попросил постом выше построить в качестве примера тривиальную казалось бы вещь. Двух каскадный интерполятор. При этом отрисовать АЧХ мне требовалось как на картинке которую приводил я. Вместо этого мне второй день заявляют что проблемы никакой нет. Только вот АЧХ в том виде в котором я просил, так никто и не отрисовал. dcs привел скрипт аналогичный моему. Вот попробуйте поставить туда не кратные значения преобразования частоты дискретизации и запустить fvtools или freqz. А после скажите, есть проблема или ее нет. А также есть разница с точки зрения алгоритма matlab между целочисленными и дробными коэффициентами. Извините но график который Вы привели меня не устраивает. Даже ошибку привел которая вылетает Error using mfilt.cascade/validateratechangefactors (line 64)Analysis of multistage-multirate filters in which interpolators follow fractionalrate converters or decimators is not supported. А теперь внимание второй вопрос, если разницы между дробными и целыми коэфф. никакой нет, то какого хрена для дробных значений matlab АЧХ отрисовать не может? Вот и мне этот момент не понятен???
  3. Спасибо за ответ. Но увы данная конструкция будет работать только с целочисленными коэфф. преобразования. Т.е. 2 4 8. Я спрашивал про дробные значения.
  4. Хорошо. Если это так тривиально, а скорее всего так оно и есть, и я действительно что то затупил, то у Вас на построение графика много времени уйти не должно мин.3-5. Постройте пожалуйста график АЧХ для двух каскадного интерполятора скажем со следующими коэфф. интерполяции первый 7/5 второй 4. На графике должны быть АЧХ каскадов и результирующая АЧХ. Полоса пропускания и неравномерность могут быть любыми - не суть. Буду очень признателен если поделитесь скриптом. Заранее спасибо.
  5. Дык, это то понятно. Вопрос в другом, как построить эти АЧХ по каскадно и результирующую, на одном графике. Но при этом, чтобы АЧХ отдельных фильтров были нормированы каждый на свою частоту дискретизации? См. картинку которую я привел. Там ресемплер трехкаскадный, но целочисленный. Не догоняю я, как тоже самое отрисовать для дробных значений. Может есть примеры скрипта именно для отрисовки?
  6. Что-то я совсем запутался. Допустим я воспользовался функцией resample для пересчета ИХ какого-либо из каскадов (не последнего). Строю АЧХ. Но АЧХ я получаю в масштабе нормированном на pi rad/sample. Т. о. я не смогу увидеть АЧХ каждого отдельно взятого каскада, и сравнить их между собой на одном графике. Мне же нужно чтобы они отображались, не как отдельно взятые фильтры нормированные на одну частоту дискретизации, а именно как фильтры нормированные каждый на свою частоту дискретизации, но при этом отрисованные в масштабе Fs/2, где Fs - частота дискретизации последнего каскада. Пример картинки как нужно приведен ниже. Не ужели в matlab нет готовой функции построения АЧХ дробного интерполятора/дециматора, в виде нескольких каскадов КИХ-фильтров? untitled.bmp
  7. Попробовал использовать freqz. Все равно ругается: Error using mfilt.cascade/validateratechangefactors (line 64) Analysis of multistage-multirate filters in which interpolators follow fractional rate converters or decimators is not supported. Как это правильно сделать в MATLAB? Ведь если я правильно понял то, что Вы пытаетесь донести до меня, то алгоритм следующий. 1)Построить импульсные х-ки каждого каскада для своей частоты дискретизации. 2)Пересчитать ИХ для самой высокой частоты дискретизации (последний каскад интерполятора). 3)Свернуть полученные ИХ между собой (получить результирующую ИХ), для конечной частоты дискретизации. 4) воспользоваться функцией freqz. Мне не понятно как в MATLAB сделать пункт 2.
  8. А как нужно учитывать разные тактовые при свертке ИХ-каскадов? В FVTool я делал так f = fvtool(hRRC, hFIR2, hFIR3, FC, 'Fs',[Fs_RRC, Fs, Fs2, Fs2]). Если бы Вы смогли привести пример или ссылку на пример, был бы Вам очень признателен.
  9. Добрый день. Вопрос к знатокам MATLAB. Как в MATLAB построить результирующую АЧХ дробного интерполятора, состоящего из нескольких каскадов? FVTool как я понимаю такую опцию не поддерживает. Может быть есть какие-то альтернативные варианты или инструменты применительно к MATLAB? Заранее спасибо.
  10. Не генерируются в модуле матлаба/simulink или не генерируются в VHDL-файле? Если Вы их не видите как порты модуля MATLAB, то это нормально, а вот если они отсутствуют в файле VHDL, тогда это странно.
  11. Добрый день. Там в конце 13 главы, есть ссылка на литературу позиции 47 и 48. Может быть в статьях более подробно раскрыта математика. Удачи.
  12. Ричард Лайонс. ЦОС. Раздел 13.18. Скользящее ДПФ. Книгу скинул на Вашу почту.
  13. Да, классический Гарднер. При расcтройке несущей ~ 5 МГц, используется два синхронизатора с начальными смещениями несущей +/- 2.5 МГц, какой контур первее войдет в режим захвата по тому и работают.
  14. Добрый день. Совершенно верно. Но я столкнулся со следующей проблемой. Записал сигнал с эфира DVB-S2. Когда стал анализировать его на модели, выяснил что в пользовательском ТВ (Триколор, НТВ+ и т.д.), пилоты отсутствуют. Преамбула составляет всего 26 символов, этого явно недостаточно чтобы надежно корректировать частоту. Вот у меня и возник вопрос как при большой расстройке и при плохом SNR делают АПЧ. Спасибо.
  15. Добрый день! Не подскажет ли кто-нибудь алгоритм грубой АПЧ в DVB-S2? Интересуют СЛЕПЫЕ МЕТОДЫ. В сети в основном описываются алгоритмы использующие пилоты. Пробовал алгоритмы на основе БПФ и Luise & Reggiannini. Для 8-PSK при SNR=10 дБ, результат оценки смещения весьма плачевный. Полагаю связано это с возведение принимаемого сигнала в 8-ю степень. Может быть есть ссылки или статьи испытанного слепого метода подстройки АПЧ в DVB-S2? Буду признателен за любую помощь?