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

Как поднять разрешающую способность АЦП

Меня интересует принципиальная возможность такой махинации. Точнее я знаю что это можно сделать и есть кое-какие соображения, но хотелось бы услышать мнения больших специалистов, чем я.

 

Самый банальный вариант - усреднение результата в скользящем буфере. Буфер из 8 элементов может увеличить разрешающую способность на 3 бита. Это в идеале конечно, и с некоторыми оговорками :)

 

Вообще, подразумевается что есть процессор с 10-битным быстродействующим АЦП. Требуется увеличить время преобразования (получения результата) с целью увеличения его точности.

 

Особо меня впечатлил принцип действия дельта-сигма АЦП ADS1216, у которого точность (разрядность) находится в очень интересной зависимости от количества измерений. При одинаковых настройках (Fmod/Fdata=500) и одном измерении точность = 14 разрядов. При двух таких же измерениях точность = 18 разрядов. При трёх = 20.

 

Прошу спецов высказать уже известные решения, а так же (гениальные :)) идеи.

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


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

Необходимо применить технологию под названием Oversampling and Averaging.

http://www.silabs.com/public/documents/tpu...al/en/an118.pdf

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


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

Вы же сами говорите, что нужно поднять частоту дискретизации, а потом отфильтровать нужную полосу. Это так называемый gain преобразования. Очевидно, что смысл в том, что шум квантования равномерно распределится в полосе АЦП и будет отфильтрован. Во всяком случае, если сигнал псевдослучайный (не периодический).

 

Обычно используют фильтр получше, чем скользящее среднее. Если быстродействие критично - CIC фильтр высокого порядка. Если пофиг - то прямоугольный FIR, или даже IIR если фаза не играет

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


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

Меня интересует принципиальная возможность такой махинации. Точнее я знаю что это можно сделать и есть кое-какие соображения, но хотелось бы услышать мнения больших специалистов, чем я.

 

Самый банальный вариант - усреднение результата в скользящем буфере. Буфер из 8 элементов может увеличить разрешающую способность на 3 бита. Это в идеале конечно, и с некоторыми оговорками :)

 

Вообще, подразумевается что есть процессор с 10-битным быстродействующим АЦП. Требуется увеличить время преобразования (получения результата) с целью увеличения его точности.

 

Особо меня впечатлил принцип действия дельта-сигма АЦП ADS1216, у которого точность (разрядность) находится в очень интересной зависимости от количества измерений. При одинаковых настройках (Fmod/Fdata=500) и одном измерении точность = 14 разрядов. При двух таких же измерениях точность = 18 разрядов. При трёх = 20.

 

Прошу спецов высказать уже известные решения, а так же (гениальные :)) идеи.

Скользящее усреднение на 8 на 3 разряда не поднимут. Они поднимут в корень из 8 раз. А это меньше 2 разрядов. :)

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


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

Вариант с подмешиванием высокочастотного шума был у меня самым первым. Его я охарактеризовал как совсем не банальный. Но и не сложный при этом. Чем-то он похож на обратное преобразование ШИМ-->Аналог.

 

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

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


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

Вариант с подмешиванием высокочастотного шума был у меня самым первым. Его я охарактеризовал как совсем не банальный. Но и не сложный при этом. Чем-то он похож на обратное преобразование ШИМ-->Аналог.

 

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

 

Подмешивание будет работать всегда, но оно не обязательно. Если полезный сигнал широкополосный, он не коррелирован со своим шумом квантования и расползётся по всей полосе АЦП. Поэтому достаточно отфильтровать полосу сигнала, а шум квантования сам уйдёт. Ну не весь, а внеполосная часть

Если поднять частоту дискретизации в N раз, а потом отфильтровать по Найквисту - сузив полосу в N раз, получите N-раз по энергетике, или корень из N по амплитуде, как указал уважаемый BH c крыльями

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


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

fontp

Меня вообще-то интересовало повышение разрядности измерения медленно меняющихся сигналов. Без подмешивания чего-то к ним как мне кажется нельзя поднять точность преобразования. Я прав?

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


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

В статье по ссылке хорошо описана основная проблема - линейность АЦП. А шумы и сами добавятся.

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


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

fontp

Меня вообще-то интересовало повышение разрядности измерения медленно меняющихся сигналов. Без подмешивания чего-то к ним как мне кажется нельзя поднять точность преобразования. Я прав?

 

Смотря, что вы называете медленно меняющимся. Он может быть медленно меняющимся, но не периодическим. Не почти синус или пила. Шум квантования не должен коррелировать с сигналом.

В противном случае подмешивайте широкополосный шум, который можно и не вычитать, а опять же отфильтровать. В модемной связи ничего не добавляют - добавку играет физический шум, превышающий младшие разряды. Он сам добавляется

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


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

Необходимо применить технологию под названием Oversampling and Averaging.

http://www.silabs.com/public/documents/tpu...al/en/an118.pdf

Очень интересный документ. Надо бы прочитать основательно как будет время.

 

[fontp]

Меня интересуют принципиальные отличия в двух следующих алгоритмах с одинаковой частотой дискретизации:

1. берётся N выборок и вычисляется тем или другим фильтром результат. Потом берутся уже следующие N выборок.

 

2. берётся N выборок и вычисляется тем или другим фильтром результат. Далее последняя выборка удаляется, всё смещается и добавляется одна новая. Скользящий буфер, фильтр любой, по желанию.

 

Разумеется типы фильтров в обоих вариантах одинаковые. Принципиально какой алгоритм лучше и точнее? И у какого из них верхняя частота измеряемого сигнала будет выше? Подразумеваю что у второго, но...

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


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

fontp

Меня вообще-то интересовало повышение разрядности измерения медленно меняющихся сигналов. Без подмешивания чего-то к ним как мне кажется нельзя поднять точность преобразования. Я прав?

Не совсем. Можно обойтись имеюшимся "естественным" шумом устройства. Проблема только в том, что выгрыш в корень из N при использовании естеств. шума - исключение. В подавляющем большинстве случаев он будет меньше, часто очень намного :)

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


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

Смотря, что вы называете медленно меняющимся. Он может быть медленно меняющимся, но не периодическим

Это значит, что за одно измерение АЦП сигнал меняется значительно меньше чем на один младший разряд. Разумеется если он чистый без шума. Например когда на входе АЦП стоит хороший RC-фильтр.

 

Не совсем. Можно обойтись имеюшимся "естественным" шумом устройства. Проблема только в том, что выгрыш в корень из N при использовании естеств. шума - исключение. В подавляющем большинстве случаев он будет меньше, часто очень намного :)

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

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


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

Очень интересный документ. Надо бы прочитать основательно как будет время.

 

[fontp]

Меня интересуют принципиальные отличия в двух следующих алгоритмах с одинаковой частотой дискретизации:

1. берётся N выборок и вычисляется тем или другим фильтром результат. Потом берутся уже следующие N выборок.

 

2. берётся N выборок и вычисляется тем или другим фильтром результат. Далее последняя выборка удаляется, всё смещается и добавляется одна новая. Скользящий буфер, фильтр любой, по желанию.

 

Разумеется типы фильтров в обоих вариантах одинаковые. Принципиально какой алгоритм лучше и точнее? И у какого из них верхняя частота измеряемого сигнала будет выше? Подразумеваю что у второго, но...

 

Какое это имеет отношение к первоначальному вопросу как увеличить эффективную разрядность аЦП?

В обоих случаях 1 и 2 у вас одинаковое частотное разрешение, а значит отфильтровать полосу вы сможете одинаково. Второй случай (скользящее окно вместо блочной обработки) обеспечивает ещё и высокое разрешение по времени. А оно вам надо? Зато вычислительные затраты больше. Или Вы будете фильтровать выход схемы 2 снова? Так делают в DDC, но только с целью подавления боковиков от неидеальных фильтров

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


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

Очень интересный документ. Надо бы прочитать основательно как будет время.

 

Почитайте основательнее. Решается все программным путем. Есть пример:

http://www.silabs.com/public/documents/sof.../en/an118sw.zip

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

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


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

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

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

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


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

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

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

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

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

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

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

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

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

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