Перейти к содержанию
    

Опять про трансимпедансный усилитель III(Herz)

Читал-читал статью целый год, да так ничего и не понял.

Если серьёзно, только теперь выдалась возможность изучить её детальнее (запоздалое спасибо Тане).

Действительно, не всё понятно в этой лаконичной заметке. Вынужден просить "помощи у зала".

Авторы зачем-то довольно подробно остановились на программном делении целых чисел на степень двойки путём сдвига,

зато лишь вскользь упомянули "хорошо известную технику спектральной инверсии", лежащую в основе идеи.

К сожалению, мне она не так хорошо известна. А поиск выдаёт ссылки, в основном, на материалы из области астрономии,

оптики, реже - радиосвязи. (Кажется, в теории ЦОС это имеет отношение к 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?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

зато лишь вскользь упомянули "хорошо известную технику спектральной инверсии", лежащую в основе идеи.

К сожалению, мне она не так хорошо известна.

А Вы попробуйте инвертировать знаковый разряд в каждом втором отсчете. В свое время делал такие "дескремблеры" на ИКМ-кодеке, триггере и 155ЛП5-й.

Стр 149 Гольденберг, Матюшкин, Поляк Цифровая обработка сигналов

Изменено пользователем ledum

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Почему, кстати, получилось два уравнения (2 и 3)? Они эквивалентны? Вроде, не похоже.

Почему два последних вычитаемых (во всех трёх формулах) идентичны, даже по знаку? Для удобства деления или опечатка?

С точки зрения экономии ресурсов МК логичнее было бы один раз разделить (сдвинуть) и один раз вычесть...

Далее следует загадочная фраза:

Как это понимать? Выходные данные фильтра Баттерворта (с частотой среза 2,5Гц, который использует всего лишь текущий и предыдущий сэмплы(!))

следует ещё усреднять окном из 200 отсчётов? Смысл? И почему 200?

Все там написано правильно (кажется мне). Данные были с частотой 2кГц, после накопления 200 получается 10 тех же самых Гц.

Знаки меняются для синхронного детектирования. Позвольте не понять причину Ваших вопросов? Целый год, говорите, мучались?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все там написано правильно (кажется мне). Данные были с частотой 2кГц, после накопления 200 получается 10 тех же самых Гц.

Знаки меняются для синхронного детектирования. Позвольте не понять причину Ваших вопросов? Целый год, говорите, мучались?

Мучался. А кому сейчас легко? Не смею запретить Вам любое непонимание. И написано, наверное, правильно, но (кажется мне) не совсем доходчиво.

Где, говорите, знаки меняются для синхронного детектирования? В формулах 2 и 3 у соседних сэмплов? Хорошо, но тогда зачем две формулы?

 

2000 на 200 я тоже разделить умею, но о каком накоплении речь? Один ФНЧ в структуре уже присутствует, это второй? Тогда почему бы не на 256,

каковое число так нравится авторам? Или я не понял, как работает фильтр?

 

Спасибо, ledum. Тут только вопрос 0,5 - это чего? Поищу книгу, попробую разобраться.

Изменено пользователем Herz

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Извиняюсь за кривой принтскрин. Книга в свое время была настольной для многих.

Есть, например, здесь http://lord-n.narod.ru/download/books/walla/dsp/cis.djv

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мучался. А кому сейчас легко? Не смею запретить Вам любое непонимание. И написано, наверное, правильно, но (кажется мне) не совсем доходчиво.

Где, говорите, знаки меняются для синхронного детектирования? В формулах 2 и 3 у соседних сэмплов? Хорошо, но тогда зачем две формулы?

Неудобно Вам переводить, но там написано, что формулы применяются поочередно... И структуру DDC посмотрите.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Неудобно Вам переводить, но там написано, что формулы применяются поочередно... И структуру DDC посмотрите.

Ну, почему же неудобно? Я тоже так вначале перевёл. И структуру DDC внимательно посмотрел.

Только тогда получается, что

а) формулы вроде бы должны отличаться знаками у всех слагаемых, нет?

б) соседние сэмплы х(i) x(i-1) - это сэмплы одного и того же интегратора, то есть "положительных" полуволн для формулы 2 и "отрицательных" для формулы 3, разве не так? Иначе вполне можно было бы объединить обе формулы в одну.

 

Извиняюсь за кривой принтскрин. Книга в свое время была настольной для многих.

Есть, например, здесь http://lord-n.narod.ru/download/books/walla/dsp/cis.djv

Уже разыскал, спасибо. Надеюсь, поможет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, почему же неудобно? Я тоже так вначале перевёл. И структуру DDC внимательно посмотрел.

Только тогда получается, что

а) формулы вроде бы должны отличаться знаками у всех слагаемых, нет?

б) соседние сэмплы х(i) x(i-1) - это сэмплы одного и того же интегратора, то есть "положительных" полуволн для формулы 2 и "отрицательных" для формулы 3, разве не так? Иначе вполне можно было бы объединить обе формулы в одну.

Мне все кажется правильным. Два последовательных измерения входят с разными знаками в обеих формулах. Только при переходе от одной к другой индекс увеличивается. Вот тут то и lock-inится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Таким образом, y(n-1) и x(n-1) для формулы 3 это y(n) x(n) для формулы 2 и наоборот, так? Я и не спорил, что это работает, но записал бы это иначе.

Но averaging каким боком?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Таким образом, y(n-1) и x(n-1) для формулы 3 это y(n) x(n) для формулы 2 и наоборот, так? Я и не спорил, что это работает, но записал бы это иначе.

Но averaging каким боком?

И написано хорошо. Сначала разность, потом сдвиг. Про бок непонятно. Вроде все соответсвует картинке.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И написано хорошо. Сначала разность, потом сдвиг. Про бок непонятно. Вроде все соответсвует картинке.

Вот видите, нам с Вами непонятны противоположные вещи. Мне непонятно то, что понятно Вам, а Вам - почему это непонятно мне. По картинке выходит, что 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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот видите, нам с Вами непонятны противоположные вещи. Мне непонятно то, что понятно Вам, а Вам - почему это непонятно мне. По картинке выходит, что 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-й отсчёт.

Но нужно учесть, что стробирующий сигнал должен быть засинхронизирован с принимаемым снаружи этой схемы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

После этого фильтра сигнал прореживается до 10Гц, просто берется каждый 200-й отсчёт.

все отрезанное правильно. Только...

В таком прореживании нет смысла.

Там ясно написано про усреднение 200 отсчетов.

 

, а Вам - почему это непонятно мне.

А какая сначала разность - простите мне...

Мне непонятно, что и почему Вам непонятно. Формулы так написаны для понятности и алгоритмичности. Хотя явно не описано, очевиднлй становится последовательность операций.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

все отрезанное правильно.

За исключением меандра, заменить на чередующиеся знакопеременные дельта функции.

Только...

В таком прореживании нет смысла.

Там ясно написано про усреднение 200 отсчетов.

Смысл в сокращении избыточности в представлении данных.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мучался. А кому сейчас легко? Не смею запретить Вам любое непонимание. И написано, наверное, правильно, но (кажется мне) не совсем доходчиво.

 

Вас там авторы статьи старательно запутывают, рассказывая, как они успешно преодолевают примитивность 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. Результат выдается наружу.

 

Замечу, что мне никогда не было понятно, почему производители сигма-дельта АЦП, применяя подобную технику для устранения дрейфов входных буферов, инвертируя каждый второй отсчет входного буфера, и инвертируя потом каждый второй отсчет модулятора, не выведут наружу этот сигнал инвертирования модулятора для применения такой же техники в предусилителях и вообще для проведения измерений на переменном токе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...