Jump to content

    

bahurin

Участник
  • Content Count

    257
  • Joined

  • Last visited

Community Reputation

0 Обычный

About bahurin

  • Rank
    Местный
  • Birthday 11/28/1980

Контакты

  • Сайт
    Array
  • ICQ
    Array

Recent Profile Visitors

1594 profile views
  1. У ких фильтра нет полюсов. Отражать надо нули внутрь ед. окружности. Тогда линейнофазовый ких превратиться в минимальнофазовые. Правда надо контролировать точность нулей, потому что численно посчитать нули фильтра высокого порядка может быть сложно.
  2. Согласен при равной разрядности аккумулятора интегратора и дифференциатора все будет хорошо
  3. Допустим есть каскад I-C, где I интегратор, а С дифференциатор H(z) =1-z^-1. Допустим аккумулятор интегратора 4 бита. На вход поступают одни единицы 1 1 1 1 1 1... По идее такой каскад на выходе ничего не должен менять, потому что числитель H(z) равен знаменателю, но при 4 битной разрядности интегратора когда он досчитает до 15 на следующем такте он переполнится и выдаст 0. Дифференциатор выдаст разницу 0-15 = - 15 и потом снова 1 1 1 1... и через 15 тактов снова на выходе - 15. Если вы используете дециматор, то он отбросит эту левую -15, а если каскад просто используется как фильтр скользящего среднего, то в выходном сигнале - 15 пойдёт дальше как есть.
  4. При любой конечной разрядности и конечной постоянной составляющей интегратор переполнится через конечный промежуток времени. Не морочте людям голову. Использовать интегратор без предварительного дифференциатора нельзя. Не закладывайте багов, о которые потом будете ударяться головой.
  5. Подайте на интегратор сигнал с постоянной составляющей и подождите некоторое время. Аккумулятор переполнится и выдаст на выход скачок от максимально возможного значения до нуля. Не знаю как вы, а я бы не хотел в аппаратуре системы жизниобеспечения поиметь такой скачок.
  6. Cic это каскад потенциально неустойчивы интеграторов с плюсами на единичной окружности, которые компенсируются нулями гребенчатых фильтров. Если гребенчатый фильтр стоит до интегратора, он предотвращает собой неустройчивость. При этом импульсная характеристика фильтра конечна по времени. Реализовать же IIR фильтр с линейной фазой принципиально невозможно. Можно лишь пытаться в некоторой степени линеаризовать фчх добавлением allpass звеньев, сделав при этом фильтр неминимальнофазовых.
  7. Если без высшей математики, то рекурсивных фильтров с линейной фчх не бывает. Можно лишь аппроксимировать линейную фчх постановкой allpass корректоров.
  8. Думаю что проблема в использовании IFFT. Дело в том, что для IFFT нужны равноотстоящие спектральные отсчеты в диапазоне от 0 до Fs/2 Гц. Скорее всего в вашем файле они от некоторой частоты F0 до F1. В этом случае надо дополнить нули в массив чтобы он стал от 0 до Fs/2 Гц, потом сделать из него массив симметричный относительно Fs/2 (чтобы результат IFFT стал реальным). И только после этого надо применять IFFT. но даже в этом случае не уверен, что будет правильный результат. Надо смотреть данные с вашего нетворк анализатора. Возможно надо применять не IFFT, а напрямую численное интегрирование обратного преобразования Фурье.
  9. Что значит из файла с s параметрами? Откуда файлы?
  10. После ifft при обнуленной ФЧХ обязательно надо делать перестановку импульсной характеристики. Нельзя прямо сразу сверку с результатом ifft! Ещё желательно окошком после перестановки.
  11. Не понял почему вы считаете приведенный пример неустойчивым? Вывел на печать параметры g1 и g2: g1 = 0.0319 g2 = 0.0010. Все в пределах зоны устойчивости. также не совсем ясно что вы подразумеваете под границами применимости конкретной данной ФАПЧ? Каждая следящая система должна проектироваться под конкретные параметры. Не всегда можно взять готовое решение и прикладывать для своей задачи. Так если тактовую поменяете, надо пересчитать петлевой фильтр (он должен стать более узкополосным чтобы соблюсти полосу захвата).
  12. Эта библиотека все умеет и fir и iir. Документация тут Я там правда не все задокументировал, но если что, пишите помогу.
  13. Можно ещё посоветовать посмотреть в сторону python. Octave практически повторяет синтаксис матлаба. Надо только нужные тулбоксы включать например load pkg signal