Полная версия этой страницы:
АЦП принцип работы
Метценгерштейн
Sep 18 2014, 21:52
есть телефонный канал 300-3400
мы его оцифровываем 8 бит с частотой 8КГц. Получаем 64 К.
Вот что происходит, если в какой-то отсчет времени АЦП в сигнале присутствуют одновременно две частоты, например, 500Гц и 700 Гц?
Как он возьмет отсчет? Возьмет среднее значение между ними? т.е. результирующее суммы?
Цитата(Метценгерштейн @ Sep 19 2014, 01:52)

Вот что происходит, если в какой-то отсчет времени АЦП в сигнале присутствуют одновременно две частоты, например, 500Гц и 700 Гц?
Как он возьмет отсчет? Возьмет среднее значение между ними? т.е. результирующее суммы?
АЦП не частоты измеряет, а напряжение. Поэтому ему дела нет, из скольких функций тот сигнал складывается и каковы они собой. Он измеряет либо мгновенное напряжение амплитуды сигнала с какой-то своей периодичностью, либо интегрирует этот сигнал на временных отрезках, длиной в период преобразования. А сам сигнал может даже не быть представим аналитически - работу АЦП это ничуть не затруднит.
Метценгерштейн
Sep 19 2014, 06:25
Это понятно, что напряжение. Вот берет он 8000 отсчетов в секунду. В какой- то из отсчетов появилось два сигнала амплитудой по 3 вольта каждый. Частота их 500 и 700 Гц. Он возьмет сумму напряжений двух частот?
Цитата(Метценгерштейн @ Sep 19 2014, 16:25)

Это понятно, что напряжение. Вот берет он 8000 отсчетов в секунду. В какой- то из отсчетов появилось два сигнала амплитудой по 3 вольта каждый. Частота их 500 и 700 Гц. Он возьмет сумму напряжений двух частот?
что значит два сигнала? у него один вход - он будет "видеть" одно мгновенное значение сигнала.
а то что сигнал у вас является суммой двух сигналов, так АЦП об этом не знает - ему всё равно. если вы хотите посчитать какой уровень сигнала будет в определенный момент времени - сложите его гармоники (в вашем случае их две) с учетом фазы. может получится и 6 Вольт, а может и 1.23447346 Вольт (посмотрите внимательно на логотип электроникса вверху страницы

.
Kaligooola
Sep 19 2014, 07:19
Две частоты мы увидим после обработки - перевода сигнала в частотную область.
Говорить, что сигнал в данный конкретный отсчёт содержит две гармоники немного не корректно, так как две гармоники у нас появляются через какое-то время накопления (количество отсчетов для преобразования Фурье).
если грубо, то по одной точке судить о частоте нельзя.
AlexandrY
Sep 19 2014, 07:33
Цитата(Метценгерштейн @ Sep 19 2014, 09:25)

Это понятно, что напряжение. Вот берет он 8000 отсчетов в секунду. В какой- то из отсчетов появилось два сигнала амплитудой по 3 вольта каждый. Частота их 500 и 700 Гц. Он возьмет сумму напряжений двух частот?
Вряд ли.
Там строго следят за уровнем мощности.
Действующее значение результирующего сигнала останется стабильным.
Т.е. уровни каждого сигнала будут понижены в 1/sqrt(2.0) раза
Топикстартеру - скачайте книгу Р. Лайонс, Цифровая обработка сигналов. Читается легко с удовольствием. После нее дурные вопросы отпадут.
megajohn
Sep 19 2014, 07:45
Цитата(Метценгерштейн @ Sep 19 2014, 01:52)

Как он возьмет отсчет? Возьмет среднее значение между ними? т.е. результирующее суммы?
глянь картинку, слева спектр, справа результирующий сигнал
Нажмите для просмотра прикрепленного файлаНажмите для просмотра прикрепленного файла
AlexandrY
Sep 19 2014, 07:48
Цитата(megajohn @ Sep 19 2014, 10:45)

глянь картинку, слева спектр, справа результирующий сигнал
Нажмите для просмотра прикрепленного файлаТак какая амплитуда сигнала и его составляющих в вольтах?
Метценгерштейн
Sep 19 2014, 07:55
Подитожим. Два сигнала складываются, сумма их напряжений поступает на один отсчет АЦП. Так? Далее, берем 100 отсчетов. Строим из этих мгновенных напряжений импульс, а из него уже по Фурье получаем частоты и фазы и амплитуды. Так?
За книгу спасибо. Понимание ацп есть, но видимо, есть непонятки.
Женя, что за прога, где нарисовал это?
megajohn
Sep 19 2014, 07:57
забегая вперед скажу, что если делаешь DTMF-декодер, то
вот готовый есть. Проверял - работает
>Женя, что за прога, где нарисовал это?
Cool Edit Pro. Ща замылю
Метценгерштейн
Sep 19 2014, 08:32
Нет, не декодер. Стало интересно как работает sdr radio. Пытаюсь понять как оно кашу из всего эфира вытягивает. Надо книгу читать ту. Если она в стиле - транзистор- это просто, то замечательно.
Цитата(Метценгерштейн @ Sep 19 2014, 11:55)

Подитожим. Два сигнала складываются, сумма их напряжений поступает на один отсчет АЦП. Так? Далее, берем 100 отсчетов. Строим из этих мгновенных напряжений импульс, а из него уже по Фурье получаем частоты и фазы и амплитуды. Так?
Да, именно так. Только по возможности отчетов надо собирать под целую степень двойки (например, 128 или 256), т.к. алгоритм FFT на таком числе точек короток и быстр, а с другим числом точек замучаешься программировать.
Это легкое для выполнения требование, но есть еще одно неприятное обстоятельство - для того, чтобы после FFT результат выглядел идеально (две палки на 500 и 700 Гц) необходимо, чтобы на оцифрованном участке помещалось целое число периодов, как одной, так и другой частоты. А это требование, как правило, невыполнимо, т.к. до проведения измерения сигнала его частот мы не знаем. А раз так, то после FFT могут получиться паразитные частоты, которых на самом деле в сигнале нет, то которые порождает алгоритм FFT в тех случаях, когда при закольцовывании массива измерений имеет место разрыв непрерывности. Пока на эти мои предостережения можете не обращать внимания, но когда дойдете до Фурье, вспомните меня теплым словом

.
Метценгерштейн
Sep 19 2014, 09:11
Еще один вопрос- уже посложнее)
Допустим, есть АЦП с частотой выборок 10 КГц. Могу ли я два таких ацп поставить, чтобы они по очереди делали выборки и каждый со своей частотой? Т. О. Получить выборку общую 20КГц. Как- то их засинхронизировать, чтобы выборки были смещены друг от друга.
P.S. И вот еще что. Частоты, на которые разлагает сигнал преобразование Фурье, будут выражены не в герцах, а в долях от длины массива данных (куда вы данные от АЦП собирали). Т.е. после FFT-преобразования в 0-ом элементе массива вы получите постоянную составляющую сигнала, в 1-ом элементе амплитуду для частоты, чей период ровнехонько укладывается на всю длину этого массива, во 2-ом элементе - для частоты, которая дважды укладывается в массив и т.д., вплоть до самой частой частоты (частоты Найквиста) с периодом в две точки.
Зная периодичность сбора данных, перевести такие ступенчатые частоты в герцы несложно, однако требуется уже на стадии сбора данных определиться с размером массива (в точках) и частотой сбора данных, поскольку именно эти величины в последствии определят точность, с которой вы получите частоты, входящие в сигнал.
Проще говоря, преобразование Фурье - это не магический пасс, который разлагает поточечный график сигнала на входящие в него гармоники, а весьма противный в практическом плане инструмент, с которым приходится мериться из-за отсутствия лучших альтернатив. И в частности, это дискретный шаг частот, на которые сигнал разлагается. Причем, отсутствие промежуточных частот в этом разложении приводит не к их пропаже, а к распределению их вклада по другим частотам (чаще по соседним).
А пока прикиньте, как будут выглядеть чистые гармоники 500 и 700 Гц по отдельности, если их оцифровать вашим АЦП в том режиме, в каком вы вознамерились делать измерения. Посчитайте, сколько раз полной период той и другой частоты успеет поместиться в выделенном для сбора данных массиве. Помните, что результат вы в получите именно в этих самых разах. Они же определят точность измерения частоты. В герцы потом эти разы вы переведете, то от этого результат точнее не станет. Поэтому с требуемой точностью надо определяться с самого начала.
Цитата(Метценгерштейн @ Sep 19 2014, 12:11)

Еще один вопрос- уже посложнее)
Допустим, есть АЦП с частотой выборок 10 КГц. Могу ли я два таких ацп поставить, чтобы они по очереди делали выборки и каждый со своей частотой? Т. О. Получить выборку общую 20КГц. Как- то их засинхронизировать, чтобы выборки были смещены друг от друга.
Легко. Только 10 кГц - это детский лепет, можно готовый на 20 кГц запустить. Вот 200 МГц чередовать - это жизненная необходимость. А в осциллографах Ригол в каждом канале работало по 5 АЦП с частотой 100 МВыб/с, итого в одноканальном режиме у них получалась 1 ГВыб/с.
Любопытно, что будет, если два АЦП работают не строго в противофазе, а например, со сдвигом на 90 градусов. Что нам сказали бы Котельников с Найквистом напару?
П.С. Ксения (преднамеренно?) не упомянула, что выкрутиться с описанными у нее страхами помогают окна БПФ.
Метценгерштейн
Sep 19 2014, 09:35
Вопрос пока такой- могу ли я взять два ацп по 10 КГц каждый и собрать с них выборки сигнала так, буд- то работал один ацп 2 КГц? До фурье пока рано. Пока только выборки.
Цитата(Xenia @ Sep 19 2014, 12:25)

И в частности, это неравномерный шаг частот, на которые сигнал разлагается.
Равномерный. Например, для 256 точек будут частоты: Fs * 0/256, Fs * 1/256, * 2/256, * 3/256, * 4/256 ... * 127/256.
Метценгерштейн
Sep 19 2014, 09:38
Не увидел поста. У самого ригол. Конечно речь не про 20 кгц, а про выше. Как этот режим называется правильно? И какие есть ноги для синхронизации в ацп для этого?
Цитата(Метценгерштейн @ Sep 19 2014, 12:35)

Вопрос пока такой- могу ли я взять два ацп по 10 КГц каждый и собрать с них выборки сигнала так, буд- то работал один ацп 2 КГц? До фурье пока рано. Пока только выборки.
используйте каждую пятую, а промежуточные отбросьте. Еще лучше использовать и промежуточные. "Децимация". В той же книге.
П.С. Есть и обратный процесс - интерполяция.
Цитата(Метценгерштейн @ Sep 19 2014, 12:38)

Не увидел поста. У самого ригол. Конечно речь не про 20 кгц, а про выше. Как этот режим называется правильно? И какие есть ноги для синхронизации в ацп для этого?
По английски - interleave. По русски - чередование, типа.
Метценгерштейн
Sep 19 2014, 09:46
20 кгц- опечатка
А синхронизировать как? Есть у ацп ноги для этого?
Цитата(Метценгерштейн @ Sep 19 2014, 12:46)

20 кгц- опечатка
А синхронизировать как? Есть у ацп ноги для этого?
Хватает ножек тактовой частоты. Высокочастотные АЦП принимают дифференциальные тактовые сигналы. Достаточно поменять местами CLKP и CLKN в одном из них, и получим работу в противофазе. Раздачей тактов отдельные микросхемы занимаются. Или ПЛИС. Или микроконтроллер, для менее быстрых АЦП. Вон в STM32 АЦП тоже могут работать в режиме чередования (ох-ох!).
Метценгерштейн
Sep 19 2014, 09:58
Да, тоже думал про stm32- там что- то написано, что 2,4 мегавыборок или 7,2 в режиме трипл interleaved mode. Т. Е. Вот оно и используется.
Цитата(Метценгерштейн @ Sep 19 2014, 13:11)

Допустим, есть АЦП с частотой выборок 10 КГц. Могу ли я два таких ацп поставить, чтобы они по очереди делали выборки и каждый со своей частотой? Т. О. Получить выборку общую 20КГц. Как- то их засинхронизировать, чтобы выборки были смещены друг от друга.
Ставить два АЦП имеет смысл только в том случае, если частоты, которые вы ищите в сигнале, различаются более чем на порядок. Например, если бы вас интересовали вклады частоты 50 Гц (сетевой наводки) и информационной частоты 1 МГц. В этом случае можно было бы порекомендовать два АЦП: один из которых медленный с частотой оцифровки 200-500 Гц для измерения сетевой наводки (это 4-10 точек на ее период), а второй АЦП быстрый с частотой оцифровки 10-20 МГц (10-20 точек на период информационной частоты 1 МГц). Причем, перед медленным АЦП возможно стоит дополнительно поставить ФНЧ, если тот АЦП не сигма-дельта. Синхронизировать их не надо, т.к. сдвиг фазы не мешает определять частоты. В этом случае медленный АЦП понадобился только потому, что при частоте оцифровки 10 МГц потребовался бы слишком большой массив для точек, чтобы в него влез полный период частоты 50 Гц.
В том случае, когда разрыв между частотами не столь велик, лучше мерить одним АЦП, но иметь более длинный массив/буфер для сбора данных. Тогда частоту оцифровки АЦП выбираете такой, чтобы у более быстрой из частот отловить хотя бы 10 точек за ее период (т.е. оцифровка должна быть, как минимум, на порядок быстрее самой быстрой частоты в сигнале), а длина массива должна быть достаточной, чтобы при этом темпе сбора данных в массиве поместились не менее 5-ти периодов на этот раз уже медленной частоты.
Т.е. будьте готовы к тому, что массива на 128 точек вам не хватит, а потребуется 1024, а то и больше. А испытать сперва требуется на чистой частоте в интервале от 500 до 700 Гц, чтобы оценить, как это все работает.
Метценгерштейн
Sep 19 2014, 10:08
Узнал, что быстрые ацп 16 бит запрещено поставлять вне США. Можно ли в теории сделать из нескольких ацп высокоскоростную оцифровку. Теперь понимаю, что да. Как это в риголе и реализовано.
QUOTE (Метценгерштейн @ Sep 19 2014, 13:08)

Узнал, что быстрые ацп 16 бит запрещено поставлять вне США. Можно ли в теории сделать из нескольких ацп высокоскоростную оцифровку. Теперь понимаю, что да. Как это в риголе и реализовано.
Ага 18 битные быстрые можно. Они там забыли снять запрет на 16 битные а на 18 битные не успели еще ввести запрет.
Цитата(Метценгерштейн @ Sep 19 2014, 14:08)

Узнал, что быстрые ацп 16 бит запрещено поставлять вне США. Можно ли в теории сделать из нескольких ацп высокоскоростную оцифровку. Теперь понимаю, что да. Как это в риголе и реализовано.
"Быстрые" это по нашим временам 10 МГц и выше. Тогда как интересующие вас частоты даже при всем желании к высоким отнести нельзя.
Метценгерштейн
Sep 19 2014, 11:20
Цитата(Xenia @ Sep 19 2014, 15:03)

"Быстрые" это по нашим временам 10 МГц и выше. Тогда как интересующие вас частоты даже при всем желании к высоким отнести нельзя.
я частоты в Кгц приводил для понимания процесса.
Меня интересуют частоты порядка 1 гигавыборок в сек. И выше.
АЦП таких нет, есть только 130-160 мегавыборок, они дорогие и сложности с поставкой. Но интерес больше образовательный. Повторюсь- интерес возник после знакомства с SDR радио- там сразу с антены весь диапазон КВ (до 30 МГц) подают на АЦП. Т.о. видят весь спектр частот и сигналов сразу в реальном времени.
вот картинка
Allregia
Sep 19 2014, 11:38
Цитата(ViKo @ Sep 19 2014, 11:31)

. А в осциллографах Ригол в каждом канале работало по 5 АЦП с частотой 100 МВыб/с, итого в одноканальном режиме у них получалась 1 ГВыб/с.
Интересно, а как работают АЦП в Тектрониксах, у которых не 1ГГц а 65ГГц?
Круто. Я тоже хочу. Вот, на статью набрел.
http://habrahabr.ru/post/158401/Цитата(Allregia @ Sep 19 2014, 14:38)

Интересно, а как работают АЦП в Тектрониксах, у которых не 1ГГц а 65ГГц?
Сие тайна великая есть. Там они не во всей полосе от 0 до ГГц работают. И греются при этом, что куча вентиляторов стоит. И шуму акустического от них... Не комфортно.
megajohn
Sep 19 2014, 13:46
Цитата(Метценгерштейн @ Sep 19 2014, 15:20)

Меня интересуют частоты порядка 1 гигавыборок в сек. И выше.
АЦП таких нет
щас, а это что ?
adc12d1600rf
Метценгерштейн
Sep 19 2014, 16:04
12 бит- мало. Хотя, лучше, чем 8.
Если кто хочет попробовать-
http://www.aliexpress.com/item/RTL-SDR-FM-...434389.html?s=pобязательно
RTL2832U + R820T
он УКВ от 25 МГц.
поиграться можно.
Но там АЦП 8 бит всего.
Женя, а что есть еще из АЦП с поболе бит?
Allregia
Sep 19 2014, 16:11
Цитата(megajohn @ Sep 19 2014, 15:46)

щас, а это что ?
adc12d1600rfБоюсь, его цена сильно не понравится

Цитата
12 бит- мало. Хотя, лучше, чем 8.
Их там реально 9-10.
Метценгерштейн
Sep 19 2014, 16:15
да, только цену увидел
179259,0 руб.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.