FatRobot 0 5 декабря, 2018 Опубликовано 5 декабря, 2018 · Жалоба при оценке частоты важны snr, время накопления и интервал стационарности источника Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Skryppy 0 5 декабря, 2018 Опубликовано 5 декабря, 2018 (изменено) · Жалоба Для улучшения отношения сигнал/шум, нарежьте полосу на поддиапазоны фильтрами, это не займет много времени вычислений. Для быстрого измерения частоты можно использовать банк фильтров; банк фильтров + фазовые доопределители; банк скользящих дпф. Также посмотрите в сторону измерения частоты медленно меняющихся сигналов, как-то встречал статьи где народ за несколько тактов измеряет некоторые параметры сигналов. Может что интересное попадется. Примерные статьи: Spoiler Измерение разности фаз квазогармонических сигналов в реальном времени (Игнатьев, Никитин). Измерение разности фаз (воронов). Эффективный алгоритм совместной оценки временной задержки и частотного сдвига чм сигналов (Сарычев, морозов) Оценивание мгновенной частоты широкополосных сигналов (Никитин, Юшанов). Различные корреляционные методы. Изменено 5 декабря, 2018 пользователем Skryppy Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
a_electronic 0 12 января, 2019 Опубликовано 12 января, 2019 · Жалоба Задача как то странно сформулирована... Если входной сигнал имеет неизвестную частоту - то откуда известно, что 6 выборок на период? Очевидно, 6 выборок - это значение для некоей внутренней опорной частоты. Чтобы определить частоту входного сигнала, достаточно мерить период. При частоте дискретизации в 6 раз выше входного сигнала, без учета шумов, погрешность измерения составит +- 8%. Далее этот результат можно бросать на интегрирующий рекурсивник и получать более точные значения. Также можно ресемплировать сигнал на более высокую частоту дискретизации, чтобы получить нужную точность. Для этого совсем не нужно хранить 1000 отсчетов. Кстати, а почему 1000, а не 1024?) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_4afc_ 24 12 января, 2019 Опубликовано 12 января, 2019 · Жалоба 3 hours ago, a_electronic said: Задача как то странно сформулирована... Если входной сигнал имеет неизвестную частоту - то откуда известно, что 6 выборок на период? Очевидно, 6 выборок - это значение для некоей внутренней опорной частоты. Чтобы определить частоту входного сигнала, достаточно мерить период. При частоте дискретизации в 6 раз выше входного сигнала, без учета шумов, погрешность измерения составит +- 8%. Далее этот результат можно бросать на интегрирующий рекурсивник и получать более точные значения. Также можно ресемплировать сигнал на более высокую частоту дискретизации, чтобы получить нужную точность. Для этого совсем не нужно хранить 1000 отсчетов. Кстати, а почему 1000, а не 1024?) Это ЧМ сигнал, несущая частота в 6 раз ниже частоты АЦП. Частота дискретизации демодулированного сигнала в 1000 раз ниже частоты АЦП. В полосе приёма могут быть сильные помехи, т.к. сигнал слабый. Модулирующий сигнал - аналоговый, ограниченный по полосе. Есть мысль попробовать что-то типа следящей системы анализирующей 1000 отсчётов на входе с целью выдачи одного отсчёта на выход. И ограничить скорость изменения выходного сигнала. Более высокая частота - тяжела по ресурсам. Лучше увеличивать анализ большего количества периодов на входе и смотреть за тенденцией изменения частоты... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
serebr 0 13 января, 2019 Опубликовано 13 января, 2019 · Жалоба Для модулированных сигналов часто используется DDC - Digital Down-Conversion: https://en.wikipedia.org/wiki/Digital_down_converter Сигнал умножается на синус и косинус несущей частоты, потом фильтруются высокие частоты. В вашем случае достаточно будет фильтра с полосой пропускания порядка 1/1000 от частоты АЦП (выше раза в два на самом деле). После этого фильтра сэмплы прореживаются до его Найквиста. Одновременно решаются две задачи - отфильтровать внеполосные помехи и сохранить ВСЮ информацию о модулированном сигнале на уменьшенном sample rate. Мгновенную амплитуду и фазу из сигнала с 1/1000 частоты сэмплов АЦП можно получать через atan2 (софт) или CORDIC (FPGA). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_4afc_ 24 14 января, 2019 Опубликовано 14 января, 2019 · Жалоба 17 hours ago, serebr said: Для модулированных сигналов часто используется DDC - Digital Down-Conversion: https://en.wikipedia.org/wiki/Digital_down_converter Сигнал умножается на синус и косинус несущей частоты, потом фильтруются высокие частоты. В вашем случае достаточно будет фильтра с полосой пропускания порядка 1/1000 от частоты АЦП (выше раза в два на самом деле). После этого фильтра сэмплы прореживаются до его Найквиста. Одновременно решаются две задачи - отфильтровать внеполосные помехи и сохранить ВСЮ информацию о модулированном сигнале на уменьшенном sample rate. Мгновенную амплитуду и фазу из сигнала с 1/1000 частоты сэмплов АЦП можно получать через atan2 (софт) или CORDIC (FPGA). Это уже промоделировано. АЦП-Фильтр-DDC-демодулятор. В качестве демодулятора - опробован atan, 3-точки и фапч. Демодулятор на ПЛИС. Пока разводятся платки - хочется попробовать что-то нестандартное. Из неприятного - есть помехи в полосе до АЦП, и при малой девиации - возрастает КНИ, особенно на 3-точках. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
serebr 0 14 января, 2019 Опубликовано 14 января, 2019 · Жалоба Не вполне понятно, зачем использовать алгоритм "3-точки", когда есть FPGA и можно без проблем посчитать честный арктангенс с помощью CORDIC? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_4afc_ 24 15 января, 2019 Опубликовано 15 января, 2019 · Жалоба 21 hours ago, serebr said: Не вполне понятно, зачем использовать алгоритм "3-точки", когда есть FPGA и можно без проблем посчитать честный арктангенс с помощью CORDIC? Хотябы потому, что я пока не умею считать арктангенс с помощью CORDIC... Оказывается люди научились демодулировать ЧМ с помощью дельта сигма: Quote This paper presents an alternative structure, referred to as a delta–sigma frequency-to-digital converter, that simultaneously performs frequency demodulation and digitization. The prototype achieved 50kSample/s frequency-to-digital conversion of a 10MHz frequency-modulated signal with a worst case signal-to-noise-and-distortion ratio of 85dB and a worst case spurious-free dynamic range of 88dB. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
blackfin 16 15 января, 2019 Опубликовано 15 января, 2019 · Жалоба On 11/30/2018 at 2:54 PM, _4afc_ said: Есть ЧМ сигнал, приходящий с АЦП с дискретизацией 6 точек на период. А откуда приходит этот ЧМ сигнал на вход АЦП? Что является его источником? Может, нужно глубже копнуть в консерватории? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_4afc_ 24 15 января, 2019 Опубликовано 15 января, 2019 · Жалоба 25 minutes ago, blackfin said: А откуда приходит этот ЧМ сигнал на вход АЦП? Что является его источником? Может, нужно глубже копнуть в консерватории? Источником является ПЧ. Делается программный ЧМ демодулятор. Хочется мудрой экзотики. Просто подумалось, что если на 1000 входных отсчётов, мне надо выдать 1 выходной, то нельзя-ли обнюхать этот блок из 1000 отсчётов как-то аналитически и принять решение об изменении уровня на выходе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
blackfin 16 15 января, 2019 Опубликовано 15 января, 2019 · Жалоба 4 minutes ago, _4afc_ said: Источником является ПЧ. Делается программный ЧМ демодулятор. Придется копнуть глубже... ;) А на вход ПЧ оно откуда приходит? Это что, кодированное информационное сообщение, или это дальность до объекта? А то, ведь, ЛЧМ еще и в дальномерах используют. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_4afc_ 24 15 января, 2019 Опубликовано 15 января, 2019 · Жалоба 1 minute ago, blackfin said: А на вход ПЧ оно откуда приходит? Это что, кодированное информационное сообщение, или это дальность до объекта? А то, ведь, ЛЧМ еще и в дальномерах используют. Или кодированное или аналог непрерывный. Пока думаю над приёмом аналогового сигнала. Приём из эфира. С шумами в полосе. С малой разрядностью (без АРУ на входе). Передатчика на руках нет, всё со слов - поэтому закладываюсь на самый плохой случай. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
serebr 0 15 января, 2019 Опубликовано 15 января, 2019 · Жалоба 2 hours ago, _4afc_ said: Хотябы потому, что я пока не умею считать арктангенс с помощью CORDIC... Есть бесплатные варианты CORDIC: https://opencores.org/projects/cordic. Кроме того, как Intel так и Xilinx имеют встроенные IP модули для вычисления CORDIC. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_4afc_ 24 15 января, 2019 Опубликовано 15 января, 2019 · Жалоба 2 hours ago, serebr said: Есть бесплатные варианты CORDIC: https://opencores.org/projects/cordic. Кроме того, как Intel так и Xilinx имеют встроенные IP модули для вычисления CORDIC. Регистрироваться или вставлять в проект чёрный ящик - неинтересно. Чем он лучше таблицы или полинома? Есть это чудо в псевдокоде, чтобы проверить на матлабе, си, верилоге... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
serebr 0 15 января, 2019 Опубликовано 15 января, 2019 (изменено) · Жалоба CORDIC позволяет вычислять арктангенс с произвольной точностью, легко подстраивается на требуемое число входных/выходных бит. Этот алгоритм не требует аппаратных умножителей, разве что для произвольного масштабирования вычисленного угла. В свое время я написал с нуля этот модуль за несколько дней, включая верификацию на Матлабе. Так что ради интереса вполне подходящий алгоритм для самостоятельной реализации. Очень доходчиво изложено, например, здесь: http://www.andraka.com/files/crdcsrvy.pdf Изменено 16 января, 2019 пользователем serebr Link added Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться