-
- Зачем фильтровать до АЦП? Проще разогнать скорость оцифровки, чтобы
даже антиалиасинг не потребовался. - Evgeny_CD(15.01.2021 09:58)
- У меня есть сомнения, что оверсэмплинг работает, если выборки идут
не равномерно с частотой 10к, а с паузами в 20 мс, фактически 50Гц
частота преобразования получается - _ctac_(15.01.2021 10:20)
- Может я чего не так понял, но антиалиасинг по входу не может быть уже 2 кГц, иначе сигнал будет развален. А фактически фильтрация
одного импульса даст полосу не менее 1 кГц (1 мс время накопления).
Затем следует, по сути, децимация - отсчеты с частотой 50 Гц. Со
всеми вытекающими последствиями для АЧХ - антиалиасинг тут
невозможен. - my504(15.01.2021 11:09)
- Согласен, поэтому и хотел оверсэплинг. Антиалиасинг по входу и
рассчитывался на 2-3 кГц и последующий оверсэмплинг с частотой 30
kSPS, а потом децимация и КИХ с частотой среза 15-20 Гц и
подавление не менее -60дБ. Для непрерывного сигнала это классика
(ну конечно параметры фильтров и частота преобразования свои), а
вот для данного случая это корректно? Смогу я получить конечную АЧХ
с частотой среза 15-20 Гц? - _ctac_(15.01.2021 11:53)
- АЧХ с основным спектром 0...15 Гц вы получите, но зеркальные полосы
вплоть до 1 кГц так и останутся. Никаких шансов на "склейку"
импульсов-кадров для реализации псевдонепрерывного сигнала у вас
нет. Все очень просто доказывается. Возьмите, например, помеху с
частотой 45 Гц и вам все сразу станет очевидно. Эта частота не
будет "склеена" как непрерывный сигнал. В этом и проблема. my504(216 знак., 15.01.2021 13:19)
- Вообщем, то догадывался, что чуда не будет, но надо было от кого
это услышать :) Спасибо. - _ctac_(15.01.2021 13:30)
- Единственный шанс на фильтрацию такого сигнала - нелинейный фильтр. Начните с медианного. То есть делаете скользящее окно-буфер на некоторое количество импульсов-кадров (естественно, что сигнал уже децимирован, то есть импульс - один отсчет - результат фильтрации по входу). Можно поизобретать другие нелинейные фильтры, типа правила трех сигм, например. Это статистический пороговый фильтр. - my504(15.01.2021 13:39)
- Вообщем, то догадывался, что чуда не будет, но надо было от кого
это услышать :) Спасибо. - _ctac_(15.01.2021 13:30)
- Наконец-то понял идею. Но какая разница "непрерывный сигнал" или
импульсы? Почему не должно работать? Слово "оверсэмплинг" нужно
заменить на "дискретизация", "оцифровка" (приличный антиалиас
фильтр на ОУ сделать не удастся). Потом КИХ/БИХ и только потом
децимация. fk0(793 знак., 15.01.2021 12:55)
- Сигнал конечный, отсчетов мало (25, например), как мне реализовать
фильтр с моими требования? Я себе сказал, только за счет избыточной
информации. А вот является ли информация заключенная в одном
импульсе действительно избыточной, чтобы подавить помехи с
частотами выше 20Гц. для серии из 25 таких импульсов. - _ctac_(15.01.2021 13:04)
- Сигнал, ясное дело, дополнить нулями до и после, пока результат из фильтра не выйдет. Конечно, сделать фильтр с частотой среза приближающейся к частоте дискретизации не выйдет. Поэтому частота дискретизации на входе фильтра должна быть выше. В варианте с нелинейным алгоритмом ([1], [2]) это значит, что его выход должен сэмплироваться 50 раз в секунду и, условно, между сэмплами вставляться ещё по сколько-то десятков нулей. В твоём варианте после оцифровки (10..30кГц) сразу fk0(441 знак., 16.01.2021 03:20, ссылка, ссылка)
- Сигнал конечный, отсчетов мало (25, например), как мне реализовать
фильтр с моими требования? Я себе сказал, только за счет избыточной
информации. А вот является ли информация заключенная в одном
импульсе действительно избыточной, чтобы подавить помехи с
частотами выше 20Гц. для серии из 25 таких импульсов. - _ctac_(15.01.2021 13:04)
- АЧХ с основным спектром 0...15 Гц вы получите, но зеркальные полосы
вплоть до 1 кГц так и останутся. Никаких шансов на "склейку"
импульсов-кадров для реализации псевдонепрерывного сигнала у вас
нет. Все очень просто доказывается. Возьмите, например, помеху с
частотой 45 Гц и вам все сразу станет очевидно. Эта частота не
будет "склеена" как непрерывный сигнал. В этом и проблема. my504(216 знак., 15.01.2021 13:19)
- Согласен, поэтому и хотел оверсэплинг. Антиалиасинг по входу и
рассчитывался на 2-3 кГц и последующий оверсэмплинг с частотой 30
kSPS, а потом децимация и КИХ с частотой среза 15-20 Гц и
подавление не менее -60дБ. Для непрерывного сигнала это классика
(ну конечно параметры фильтров и частота преобразования свои), а
вот для данного случая это корректно? Смогу я получить конечную АЧХ
с частотой среза 15-20 Гц? - _ctac_(15.01.2021 11:53)
- Выборки делает АЦП на основе своей таковой. Нет никакой связи с
импульсами на входе. И взятие отчетов строго синхронное. Всю
полноту информации о любом входном сигнале по отсчета можно
восстановить. - Evgeny_CD(15.01.2021 10:25)
- Это если АЦП относится к типу SAR, а если это сигма-дельта, то в
его внутреннем конвейере данных идёт усреднение по N предыдущих
отсчётов: там же sinc фильтр на выходе. - teap0t(15.01.2021 11:58, ссылка, ссылка)
- если АЦП (сигма-дельта) имеет вход синхронизации, то в момент
синхроимпульса аккумулятор фильтров сбрасывается, например, у
ads1271 - _ctac_(15.01.2021 12:03)
- Есть и программная синхронизация (инициализация). Но это специальное действие, которое требует последующего заполнения буфера цифрового фильтра, прежде чем данные появятся на выходе, т.е. увеличивает латентность. А если измерения вести непрерывно, то разницы между SAR и сигма-дельта не будет (почти). - teap0t(15.01.2021 12:22)
- если АЦП (сигма-дельта) имеет вход синхронизации, то в момент
синхроимпульса аккумулятор фильтров сбрасывается, например, у
ads1271 - _ctac_(15.01.2021 12:03)
- Спасибо, развеяли мои сомнения. Я параллельно посмотрел аналогичные
представления сигнала -АИМ. Все должно получиться. - _ctac_(15.01.2021 11:09)
- Видимо, я не совсем прав. Но до конца то, что не удастся подавить
зеркальные полосы, у меня в голове не укладывается. Думать надо. - Evgeny_CD(15.01.2021 14:19)
- Что ты называешь "зеркальными полосами"??? Обычно это результат
переноса частот в гетеродинном приёмнике или "aliasing" при
сэмплировании (оцифровке) без предварительного фильтра. Но здесь-то
оно откуда берётся и зачем вообще нужно? Обычно от "алиасинга"
избавляются сразу, аналогово и до АЦП, т.к. алиасы возникают в
каких попало частях спектра и только мешают. Иногда их используют с
пользой, но для этого нужно наоборот, на входе АЦП всё вырезать
кроме узенькой полосы, что fk0(35 знак., 16.01.2021 03:28)
- Зеркальные полосы цифрового фильтра - это стробоскопический эффект
связанный с низкой частотой отсчетов, что приводит к повторению АЧХ
фильтра выше частоты дискретизации. С точки зрения переноса спектра
- это результат амплитудной модуляции исходного аналогового сигнала
функцией семплирующей этот сигнал в УВХ. Функция семплирования -
импульсы с частотой семплирования. Вот на всех составляющих спектра
этой функции мы получим по два АЧХ фильтра зеркально относительно
этих my504(709 знак., 16.01.2021 09:01, картинка)
- А почему не вот так? Nikolay_Po(1 знак., 16.01.2021 09:57, картинка)
- Зеркальные полосы цифрового фильтра - это стробоскопический эффект
связанный с низкой частотой отсчетов, что приводит к повторению АЧХ
фильтра выше частоты дискретизации. С точки зрения переноса спектра
- это результат амплитудной модуляции исходного аналогового сигнала
функцией семплирующей этот сигнал в УВХ. Функция семплирования -
импульсы с частотой семплирования. Вот на всех составляющих спектра
этой функции мы получим по два АЧХ фильтра зеркально относительно
этих my504(709 знак., 16.01.2021 09:01, картинка)
- Евгений, не усложняйте. Добавьте в модель рассмотрения ЦАП, который
после фильтрации по входному сигналу (1 кГц) восстановит сигнал и
снова его отсемплируйте с частотой 50 Гц. Очевидно, что все
зеркальные полосы в полосе 25....1000 Гц как миленькие будут на
своих местах. Просто потому, что помеха НЕПРЕРЫВНА, в отличии от
сигнала. И практика это доказывает, если что. - my504(15.01.2021 14:30)
- Как водится, хочется... ть природу :) - Evgeny_CD(15.01.2021 14:31)
- Что ты называешь "зеркальными полосами"??? Обычно это результат
переноса частот в гетеродинном приёмнике или "aliasing" при
сэмплировании (оцифровке) без предварительного фильтра. Но здесь-то
оно откуда берётся и зачем вообще нужно? Обычно от "алиасинга"
избавляются сразу, аналогово и до АЦП, т.к. алиасы возникают в
каких попало частях спектра и только мешают. Иногда их используют с
пользой, но для этого нужно наоборот, на входе АЦП всё вырезать
кроме узенькой полосы, что fk0(35 знак., 16.01.2021 03:28)
- Видимо, я не совсем прав. Но до конца то, что не удастся подавить
зеркальные полосы, у меня в голове не укладывается. Думать надо. - Evgeny_CD(15.01.2021 14:19)
- Это если АЦП относится к типу SAR, а если это сигма-дельта, то в
его внутреннем конвейере данных идёт усреднение по N предыдущих
отсчётов: там же sinc фильтр на выходе. - teap0t(15.01.2021 11:58, ссылка, ссылка)
- Может я чего не так понял, но антиалиасинг по входу не может быть уже 2 кГц, иначе сигнал будет развален. А фактически фильтрация
одного импульса даст полосу не менее 1 кГц (1 мс время накопления).
Затем следует, по сути, децимация - отсчеты с частотой 50 Гц. Со
всеми вытекающими последствиями для АЧХ - антиалиасинг тут
невозможен. - my504(15.01.2021 11:09)
- У меня есть сомнения, что оверсэмплинг работает, если выборки идут
не равномерно с частотой 10к, а с паузами в 20 мс, фактически 50Гц
частота преобразования получается - _ctac_(15.01.2021 10:20)
- Зачем фильтровать до АЦП? Проще разогнать скорость оцифровки, чтобы
даже антиалиасинг не потребовался. - Evgeny_CD(15.01.2021 09:58)