GetSmart 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба Меня интересует принципиальная возможность такой махинации. Точнее я знаю что это можно сделать и есть кое-какие соображения, но хотелось бы услышать мнения больших специалистов, чем я. Самый банальный вариант - усреднение результата в скользящем буфере. Буфер из 8 элементов может увеличить разрешающую способность на 3 бита. Это в идеале конечно, и с некоторыми оговорками :) Вообще, подразумевается что есть процессор с 10-битным быстродействующим АЦП. Требуется увеличить время преобразования (получения результата) с целью увеличения его точности. Особо меня впечатлил принцип действия дельта-сигма АЦП ADS1216, у которого точность (разрядность) находится в очень интересной зависимости от количества измерений. При одинаковых настройках (Fmod/Fdata=500) и одном измерении точность = 14 разрядов. При двух таких же измерениях точность = 18 разрядов. При трёх = 20. Прошу спецов высказать уже известные решения, а так же (гениальные :)) идеи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TBI 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба Необходимо применить технологию под названием Oversampling and Averaging. http://www.silabs.com/public/documents/tpu...al/en/an118.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fontp 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба Вы же сами говорите, что нужно поднять частоту дискретизации, а потом отфильтровать нужную полосу. Это так называемый gain преобразования. Очевидно, что смысл в том, что шум квантования равномерно распределится в полосе АЦП и будет отфильтрован. Во всяком случае, если сигнал псевдослучайный (не периодический). Обычно используют фильтр получше, чем скользящее среднее. Если быстродействие критично - CIC фильтр высокого порядка. Если пофиг - то прямоугольный FIR, или даже IIR если фаза не играет Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
-=ВН=- 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба Меня интересует принципиальная возможность такой махинации. Точнее я знаю что это можно сделать и есть кое-какие соображения, но хотелось бы услышать мнения больших специалистов, чем я. Самый банальный вариант - усреднение результата в скользящем буфере. Буфер из 8 элементов может увеличить разрешающую способность на 3 бита. Это в идеале конечно, и с некоторыми оговорками :) Вообще, подразумевается что есть процессор с 10-битным быстродействующим АЦП. Требуется увеличить время преобразования (получения результата) с целью увеличения его точности. Особо меня впечатлил принцип действия дельта-сигма АЦП ADS1216, у которого точность (разрядность) находится в очень интересной зависимости от количества измерений. При одинаковых настройках (Fmod/Fdata=500) и одном измерении точность = 14 разрядов. При двух таких же измерениях точность = 18 разрядов. При трёх = 20. Прошу спецов высказать уже известные решения, а так же (гениальные :)) идеи. Скользящее усреднение на 8 на 3 разряда не поднимут. Они поднимут в корень из 8 раз. А это меньше 2 разрядов. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GetSmart 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба Вариант с подмешиванием высокочастотного шума был у меня самым первым. Его я охарактеризовал как совсем не банальный. Но и не сложный при этом. Чем-то он похож на обратное преобразование ШИМ-->Аналог. Есть ещё один банальный вариант - с помощью ЦАПа добавлять к измеряемому сигналу напряжения, меньшие цены одного разряда АЦП и потом вычитать их из результата. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fontp 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба Вариант с подмешиванием высокочастотного шума был у меня самым первым. Его я охарактеризовал как совсем не банальный. Но и не сложный при этом. Чем-то он похож на обратное преобразование ШИМ-->Аналог. Есть ещё один банальный вариант - с помощью ЦАПа добавлять к измеряемому сигналу напряжения, меньшие цены одного разряда АЦП и потом вычитать их из результата. Подмешивание будет работать всегда, но оно не обязательно. Если полезный сигнал широкополосный, он не коррелирован со своим шумом квантования и расползётся по всей полосе АЦП. Поэтому достаточно отфильтровать полосу сигнала, а шум квантования сам уйдёт. Ну не весь, а внеполосная часть Если поднять частоту дискретизации в N раз, а потом отфильтровать по Найквисту - сузив полосу в N раз, получите N-раз по энергетике, или корень из N по амплитуде, как указал уважаемый BH c крыльями Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GetSmart 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба fontp Меня вообще-то интересовало повышение разрядности измерения медленно меняющихся сигналов. Без подмешивания чего-то к ним как мне кажется нельзя поднять точность преобразования. Я прав? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andreas1 1 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба В статье по ссылке хорошо описана основная проблема - линейность АЦП. А шумы и сами добавятся. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fontp 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба fontp Меня вообще-то интересовало повышение разрядности измерения медленно меняющихся сигналов. Без подмешивания чего-то к ним как мне кажется нельзя поднять точность преобразования. Я прав? Смотря, что вы называете медленно меняющимся. Он может быть медленно меняющимся, но не периодическим. Не почти синус или пила. Шум квантования не должен коррелировать с сигналом. В противном случае подмешивайте широкополосный шум, который можно и не вычитать, а опять же отфильтровать. В модемной связи ничего не добавляют - добавку играет физический шум, превышающий младшие разряды. Он сам добавляется Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GetSmart 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба Необходимо применить технологию под названием Oversampling and Averaging. http://www.silabs.com/public/documents/tpu...al/en/an118.pdf Очень интересный документ. Надо бы прочитать основательно как будет время. [fontp] Меня интересуют принципиальные отличия в двух следующих алгоритмах с одинаковой частотой дискретизации: 1. берётся N выборок и вычисляется тем или другим фильтром результат. Потом берутся уже следующие N выборок. 2. берётся N выборок и вычисляется тем или другим фильтром результат. Далее последняя выборка удаляется, всё смещается и добавляется одна новая. Скользящий буфер, фильтр любой, по желанию. Разумеется типы фильтров в обоих вариантах одинаковые. Принципиально какой алгоритм лучше и точнее? И у какого из них верхняя частота измеряемого сигнала будет выше? Подразумеваю что у второго, но... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
-=ВН=- 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба fontp Меня вообще-то интересовало повышение разрядности измерения медленно меняющихся сигналов. Без подмешивания чего-то к ним как мне кажется нельзя поднять точность преобразования. Я прав? Не совсем. Можно обойтись имеюшимся "естественным" шумом устройства. Проблема только в том, что выгрыш в корень из N при использовании естеств. шума - исключение. В подавляющем большинстве случаев он будет меньше, часто очень намного :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GetSmart 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба Смотря, что вы называете медленно меняющимся. Он может быть медленно меняющимся, но не периодическим Это значит, что за одно измерение АЦП сигнал меняется значительно меньше чем на один младший разряд. Разумеется если он чистый без шума. Например когда на входе АЦП стоит хороший RC-фильтр. Не совсем. Можно обойтись имеюшимся "естественным" шумом устройства. Проблема только в том, что выгрыш в корень из N при использовании естеств. шума - исключение. В подавляющем большинстве случаев он будет меньше, часто очень намного :) Значит я правильно подумал. В наихудшем случае я могу расчитывать на полную безшумность схемы, так как дополнительный шум... как говорится кашу маслом не испортит. Значит при "полном штиле" его нужно добавить чтобы приблизиться к корню из N. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fontp 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба Очень интересный документ. Надо бы прочитать основательно как будет время. [fontp] Меня интересуют принципиальные отличия в двух следующих алгоритмах с одинаковой частотой дискретизации: 1. берётся N выборок и вычисляется тем или другим фильтром результат. Потом берутся уже следующие N выборок. 2. берётся N выборок и вычисляется тем или другим фильтром результат. Далее последняя выборка удаляется, всё смещается и добавляется одна новая. Скользящий буфер, фильтр любой, по желанию. Разумеется типы фильтров в обоих вариантах одинаковые. Принципиально какой алгоритм лучше и точнее? И у какого из них верхняя частота измеряемого сигнала будет выше? Подразумеваю что у второго, но... Какое это имеет отношение к первоначальному вопросу как увеличить эффективную разрядность аЦП? В обоих случаях 1 и 2 у вас одинаковое частотное разрешение, а значит отфильтровать полосу вы сможете одинаково. Второй случай (скользящее окно вместо блочной обработки) обеспечивает ещё и высокое разрешение по времени. А оно вам надо? Зато вычислительные затраты больше. Или Вы будете фильтровать выход схемы 2 снова? Так делают в DDC, но только с целью подавления боковиков от неидеальных фильтров Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TBI 0 22 мая, 2007 Опубликовано 22 мая, 2007 (изменено) · Жалоба Очень интересный документ. Надо бы прочитать основательно как будет время. Почитайте основательнее. Решается все программным путем. Есть пример: http://www.silabs.com/public/documents/sof.../en/an118sw.zip Изменено 22 мая, 2007 пользователем TBI Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
-=ВН=- 0 22 мая, 2007 Опубликовано 22 мая, 2007 · Жалоба В наихудшем случае я могу расчитывать на полную безшумность схемы, так как дополнительный шум... как говорится кашу маслом не испортит. Значит при "полном штиле" его нужно добавить чтобы приблизиться к корню из N. Ну если у Вас шум очень мал, а к корню хочется приблизиться, то добавляйте. Или ставьте другое АЦП. Вообще это ведь очень давний способ, ноги у него из тех времен, когда не то, что многоразрядные, а вообще АЦП были редкостью. Народ извращался как мог и напридумывал столько, что даже и сейчас еще расхлебывают и аппликэйшен ноты пишут :-). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться