|
Опять про трансимпедансный усилитель III(Herz), + синхронный детектор в одном флаконе. |
|
|
|
 |
Ответов
(15 - 29)
|
Mar 26 2010, 13:53
|

Гуру
     
Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287

|
Читал-читал статью целый год, да так ничего и не понял. Если серьёзно, только теперь выдалась возможность изучить её детальнее (запоздалое спасибо Тане). Действительно, не всё понятно в этой лаконичной заметке. Вынужден просить "помощи у зала". Авторы зачем-то довольно подробно остановились на программном делении целых чисел на степень двойки путём сдвига, зато лишь вскользь упомянули "хорошо известную технику спектральной инверсии", лежащую в основе идеи. К сожалению, мне она не так хорошо известна. А поиск выдаёт ссылки, в основном, на материалы из области астрономии, оптики, реже - радиосвязи. (Кажется, в теории ЦОС это имеет отношение к z-преобразованию?) Поэтому мне удивительно, как легко авторы интегрировали спектральную инверсию в алгоритм ФНЧ. Почему, кстати, получилось два уравнения (2 и 3)? Они эквивалентны? Вроде, не похоже. Почему два последних вычитаемых (во всех трёх формулах) идентичны, даже по знаку? Для удобства деления или опечатка? С точки зрения экономии ресурсов МК логичнее было бы один раз разделить (сдвинуть) и один раз вычесть... Далее следует загадочная фраза: Цитата The result is then down-sampled by averaging 200 samples providing an output with a rate of 10 Hz. Как это понимать? Выходные данные фильтра Баттерворта (с частотой среза 2,5Гц, который использует всего лишь текущий и предыдущий сэмплы(!)) следует ещё усреднять окном из 200 отсчётов? Смысл? И почему 200?
|
|
|
|
|
Mar 26 2010, 15:11
|
Гуру
     
Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883

|
Цитата(Herz @ Mar 26 2010, 16:53)  Почему, кстати, получилось два уравнения (2 и 3)? Они эквивалентны? Вроде, не похоже. Почему два последних вычитаемых (во всех трёх формулах) идентичны, даже по знаку? Для удобства деления или опечатка? С точки зрения экономии ресурсов МК логичнее было бы один раз разделить (сдвинуть) и один раз вычесть... Далее следует загадочная фраза: Как это понимать? Выходные данные фильтра Баттерворта (с частотой среза 2,5Гц, который использует всего лишь текущий и предыдущий сэмплы(!)) следует ещё усреднять окном из 200 отсчётов? Смысл? И почему 200? Все там написано правильно (кажется мне). Данные были с частотой 2кГц, после накопления 200 получается 10 тех же самых Гц. Знаки меняются для синхронного детектирования. Позвольте не понять причину Ваших вопросов? Целый год, говорите, мучались?
|
|
|
|
|
Mar 26 2010, 15:35
|

Гуру
     
Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287

|
Цитата(Tanya @ Mar 26 2010, 18:11)  Все там написано правильно (кажется мне). Данные были с частотой 2кГц, после накопления 200 получается 10 тех же самых Гц. Знаки меняются для синхронного детектирования. Позвольте не понять причину Ваших вопросов? Целый год, говорите, мучались? Мучался. А кому сейчас легко? Не смею запретить Вам любое непонимание. И написано, наверное, правильно, но (кажется мне) не совсем доходчиво. Где, говорите, знаки меняются для синхронного детектирования? В формулах 2 и 3 у соседних сэмплов? Хорошо, но тогда зачем две формулы? 2000 на 200 я тоже разделить умею, но о каком накоплении речь? Один ФНЧ в структуре уже присутствует, это второй? Тогда почему бы не на 256, каковое число так нравится авторам? Или я не понял, как работает фильтр? Спасибо, ledum. Тут только вопрос 0,5 - это чего? Поищу книгу, попробую разобраться.
Сообщение отредактировал Herz - Mar 26 2010, 15:46
|
|
|
|
|
Mar 26 2010, 16:34
|
Гуру
     
Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883

|
Цитата(Herz @ Mar 26 2010, 18:35)  Мучался. А кому сейчас легко? Не смею запретить Вам любое непонимание. И написано, наверное, правильно, но (кажется мне) не совсем доходчиво. Где, говорите, знаки меняются для синхронного детектирования? В формулах 2 и 3 у соседних сэмплов? Хорошо, но тогда зачем две формулы? Неудобно Вам переводить, но там написано, что формулы применяются поочередно... И структуру DDC посмотрите.
|
|
|
|
|
Mar 26 2010, 17:04
|

Гуру
     
Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287

|
Цитата(Tanya @ Mar 26 2010, 19:34)  Неудобно Вам переводить, но там написано, что формулы применяются поочередно... И структуру DDC посмотрите. Ну, почему же неудобно? Я тоже так вначале перевёл. И структуру DDC внимательно посмотрел. Только тогда получается, что а) формулы вроде бы должны отличаться знаками у всех слагаемых, нет? б) соседние сэмплы х(i) x(i-1) - это сэмплы одного и того же интегратора, то есть "положительных" полуволн для формулы 2 и "отрицательных" для формулы 3, разве не так? Иначе вполне можно было бы объединить обе формулы в одну. Цитата(ledum @ Mar 26 2010, 19:01)  Извиняюсь за кривой принтскрин. Книга в свое время была настольной для многих. Есть, например, здесь http://lord-n.narod.ru/download/books/walla/dsp/cis.djvУже разыскал, спасибо. Надеюсь, поможет.
|
|
|
|
|
Mar 26 2010, 21:23
|

Гуру
     
Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287

|
Цитата(Tanya @ Mar 26 2010, 23:06)  И написано хорошо. Сначала разность, потом сдвиг. Про бок непонятно. Вроде все соответсвует картинке. Вот видите, нам с Вами непонятны противоположные вещи. Мне непонятно то, что понятно Вам, а Вам - почему это непонятно мне. По картинке выходит, что down-sampling происходит до spectral inversion и low-pass filtering (которые объединены). В тексте об этом сказано: The result is then down-sampled by averaging 200 samples providing an output with a rate of 10 Hz.Значит, на фильтр подаётся поток с rate of 10 Hz. Но абзацем ранее указано, что A single pole 2.5Hz Butterworth low-pass filter (operating at a 2 kHz sample rate) was selected... Так в каком же месте выполняется averaging? И зачем его выполнять отдельно от Butterworth low-pass filtering? А какая сначала разность - простите мне...
Сообщение отредактировал Herz - Mar 26 2010, 21:30
|
|
|
|
|
Mar 27 2010, 02:10
|
Знающий
   
Группа: Участник
Сообщений: 609
Регистрация: 3-03-07
Из: San Jose
Пользователь №: 25 837

|
Цитата(Herz @ Mar 27 2010, 01:23)  Вот видите, нам с Вами непонятны противоположные вещи. Мне непонятно то, что понятно Вам, а Вам - почему это непонятно мне. По картинке выходит, что down-sampling происходит до spectral inversion и low-pass filtering (которые объединены). В тексте об этом сказано: The result is then down-sampled by averaging 200 samples providing an output with a rate of 10 Hz. Значит, на фильтр подаётся поток с rate of 10 Hz. Но абзацем ранее указано, что A single pole 2.5Hz Butterworth low-pass filter (operating at a 2 kHz sample rate) was selected... Так в каком же месте выполняется averaging? И зачем его выполнять отдельно от Butterworth low-pass filtering? А какая сначала разность - простите мне... Попробую я объяснить с аналоговой точки зрения. АЦП и инвертирование каждого второго отсчёта в этой схеме является смесителем с частотой гетеродина Fs/2. Этот смеситель и переносит сигнал в ноль, а низкочастотную засветку вверх. При этом сигнал гетеродина является меандром и перед "смесителем" должен стоять антиальясинговый полосовой или низкочастотный фильтр. После смесителя стоит ФНЧ с полосой 2.5Гц, этот же фильтр и производит усреднение. После этого фильтра сигнал прореживается до 10Гц, просто берется каждый 200-й отсчёт. Но нужно учесть, что стробирующий сигнал должен быть засинхронизирован с принимаемым снаружи этой схемы.
--------------------
|
|
|
|
|
Mar 27 2010, 04:31
|
Гуру
     
Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883

|
Цитата(alexkok @ Mar 27 2010, 05:10)  После этого фильтра сигнал прореживается до 10Гц, просто берется каждый 200-й отсчёт. все отрезанное правильно. Только... В таком прореживании нет смысла. Там ясно написано про усреднение 200 отсчетов. Цитата(Herz @ Mar 27 2010, 00:23)  , а Вам - почему это непонятно мне. А какая сначала разность - простите мне... Мне непонятно, что и почему Вам непонятно. Формулы так написаны для понятности и алгоритмичности. Хотя явно не описано, очевиднлй становится последовательность операций.
|
|
|
|
|
Mar 27 2010, 06:07
|
Знающий
   
Группа: Участник
Сообщений: 609
Регистрация: 3-03-07
Из: San Jose
Пользователь №: 25 837

|
Цитата(Tanya @ Mar 27 2010, 08:31)  все отрезанное правильно. За исключением меандра, заменить на чередующиеся знакопеременные дельта функции. Цитата Только... В таком прореживании нет смысла. Там ясно написано про усреднение 200 отсчетов. Смысл в сокращении избыточности в представлении данных.
--------------------
|
|
|
|
|
Mar 27 2010, 06:30
|

Гуру
     
Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874

|
Цитата(Herz @ Mar 26 2010, 18:35)  Мучался. А кому сейчас легко? Не смею запретить Вам любое непонимание. И написано, наверное, правильно, но (кажется мне) не совсем доходчиво. Вас там авторы статьи старательно запутывают, рассказывая, как они успешно преодолевают примитивность 51-го камня, выбранного ими потому, что он им был хорошо знаком. Там последовательно делается несколько вещей. 1. На вход подается меандр. Обычно получаемый с какого-нибудь оптичского модулятора. Который обычно детектируется синхронным детектором. И тут тоже, только почти всё в цифре. 2. Этот меандр оцифровывается на частоте, равной двойной частотой меандра. Интегрирующим АЦП. Таким образом, каждый отсчет - это интеграл соответствующей полуволны. Частота модулятора оказывается точно на частоте Найквиста. Спектр полезного сигнала - вокруг частоты Найквиста. И спектр такого цифрового сигнала периодичен с частотой оцифровки. 3. У каждого второго отсчета изменяется знак. Знак нужно менять у отрицательной полуволны, соответствующей темновому току. Это эквивалентно на умножение на последовательность 1,-1,1,-1,1,-1... пои этом в частотной области спектр сдвигается как раз на смещение, равное частоте Найквиста. Полезный сигнал с частоты Найквиста переходит на нулевую частоту, 1/f шум переходит с нулевой частоты на частоту Нпайквиста. Очевидно, именно это авторы и называют "спектральной инверсией". 4. Полученный сигнал пропускают через фильтр (1+z^-1) с нулем на частоте Найквиста. Польза от этого очевидна: в первоначальном сигнале преобладающий 1/f шум после сдвига спектра оказался на частоте Найквиста, и его очень удобно подавить почти полностью простейшим фильтром с нулем как раз на этой частоте. 5. После этого сигнал фильтруют IIR фильтром первого порядка с частотой среза 2.5 герц . Выбор этой частоты не случаен: она получается сама собой при сдвиге на 8 бит, который в 8-битном микроконтроллере можно выполнять вообще без сдвигов. Таким образом отфильтровываются остатки 1/f шума на частоте Найквиста и шум на остальных частотах. 6. Полученный сигнал дополнительно фильтруется фильтром в виде скользящего среднего с его хорошо знакомой sinc частотной характеристикой.. 7. Полученный сигнал прореживается в 256 раз. Что вместе с п. 6 даёт просто накопление сумм по 256 отсчетов. Очень удобно в 8-битном микроконтроллере. 8. Результат выдается наружу. Замечу, что мне никогда не было понятно, почему производители сигма-дельта АЦП, применяя подобную технику для устранения дрейфов входных буферов, инвертируя каждый второй отсчет входного буфера, и инвертируя потом каждый второй отсчет модулятора, не выведут наружу этот сигнал инвертирования модулятора для применения такой же техники в предусилителях и вообще для проведения измерений на переменном токе.
--------------------
Пишите в личку.
|
|
|
|
|
  |
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|