Полная версия этой страницы:
сигма-дельта АЦП
SALOME
Oct 15 2007, 10:18
Цитата(kolisnichenko_r @ Sep 27 2007, 14:34)

С микроконвертором ADuC847(АЦП, ЦАП и микроконтроллер на одном кристалле)
Присмотритесь к этому изделию ADuC845/847/848. Он специально сделан для прецизионных измерений. Приятное дополнение - встроенный усилитель с программируемым Ку. Например самый первый входной диапазон: +-20мВ. Можно прикинуть, скока нВ будет "весить" младший разряд" при его 24-х разрядном АЦП. Там есть еще куча приятных примочек. Но, конечно "простой" такая задача не будет. Удачи
kolisnichenko_r
Oct 15 2007, 12:51
Запустил на измерение LTC2420 - измеряет, но с порогом около 700мкВ.
Буду бороться с шумами
ADuC845/847/848 - сроки + начальство не дадут развернутся
forever failure
Oct 15 2007, 13:45
Было дело, использовал ADS1252U. В общем, всё, за очень небольшим исключением соответствует даташиту. Как работать с ним - там же подробно расписано. Единственный косяк, который я не смог победить - это сделать разными частоты CLK и SCLK. Этот вопрос задавался на форуме, поищите, если интересно, может у вас получится. В целом - не самый лучший прибор, эдакое компромиссное, на сегодняшний день решение, но годится для множества применений.
Цитата(SALOME @ Oct 15 2007, 13:18)

Присмотритесь к этому изделию ADuC845/847/848. Он специально сделан для прецизионных измерений. Приятное дополнение - встроенный усилитель с программируемым Ку. Например самый первый входной диапазон: +-20мВ. Можно прикинуть, скока нВ будет "весить" младший разряд" при его 24-х разрядном АЦП. Там есть еще куча приятных примочек. Но, конечно "простой" такая задача не будет. Удачи

Для точных измерений лучше брать менее скоростные Aduc824, 834 - если пользовать 845-й на макс скорости , то у него ядро цифровое очень шумное - очень "гадит" встроенному АЦП, а если его тормозить и работать на скорости такой же как у 824, 834 то зачем вообще 845 использовать?
Только разве когда требуется 1300 отсчетов в сек ;-)
В Anomaly Sheet for Silicon Rev. C для 845-х них написано
ADC noise performance degrades when operating at maximum MCU clock frequency
может быть это и исправили, но пробовать больше не хочется ;-)
SALOME
Oct 16 2007, 02:54
Цитата(Sergu @ Oct 16 2007, 09:51)

В Anomaly Sheet for Silicon Rev. C для 845-х них написано
ADC noise performance degrades when operating at maximum MCU clock frequency
может быть это и исправили, но пробовать больше не хочется ;-)
Согласна, эти девайсы не дают высоких скоростей. Но там, где не требуется высокая скорость обеспечивается достаточная точность при очень большом динамическом диапазоне.
kolisnichenko_r
Oct 16 2007, 18:25
Цитата(forever failure @ Oct 15 2007, 16:45)

Было дело, использовал ADS1252U. В общем, всё, за очень небольшим исключением соответствует даташиту. Как работать с ним - там же подробно расписано. Единственный косяк, который я не смог победить - это сделать разными частоты CLK и SCLK. Этот вопрос задавался на форуме, поищите, если интересно, может у вас получится. В целом - не самый лучший прибор, эдакое компромиссное, на сегодняшний день решение, но годится для множества применений.
Волрос задавался, но на него никто не ответил.
У меня не получается прочесть с него результат преобразования. Алгоритм какой? По даташиту не очень понятно.
Oldring
Oct 17 2007, 09:12
Цитата(kolisnichenko_r @ Oct 16 2007, 22:25)

У меня не получается прочесть с него результат преобразования. Алгоритм какой? По даташиту не очень понятно.
Да нормально все работает.
Ждете сигнала готовности и сдвигаете сдвиговый регистр. Почти SPI - только нет enable.
kolisnichenko_r
Oct 17 2007, 09:59
Цитата(Oldring @ Oct 17 2007, 12:12)

Да нормально все работает.
Ждете сигнала готовности и сдвигаете сдвиговый регистр. Почти SPI - только нет enable.
Запрягаю его в SPI. Сигнал готовности не получается распознать
kolisnichenko_r
Oct 17 2007, 11:49
Нашел сигнал готовности!!!
Алгоритм поиска:
[/code]
m:
while(Dout==0){;}//Ждем лог. 1
while(Dout==1){key++;//определение сигнала готовности
Delaymks(17);
}
if(key>40){Delaymks(872);//Если готов
//Чтение из АЦП
SSPBUF=0x00; // SPIDummy tx to initiate bus cycle
while(!STAT_BF); // wait for ssp to finish
ADC_b2=SSPBUF;
SSPBUF=0x00; // SPIDummy tx to initiate bus cycle
while(!STAT_BF); // wait for ssp to finish
ADC_b1=SSPBUF;
SSPBUF=0x00; // SPIDummy tx to initiate bus cycle
while(!STAT_BF); // wait for ssp to finish
ADC_b0=SSPBUF;
}
else goto m;//Если не готов
Может кому-то поможет
kolisnichenko_r
Oct 22 2007, 08:38
ADS1252U - измерение напряжения (результаты не стабильны) прыгает на 200мкВ.
LTC242 приятнее - изменение результата во времени - 30мкВ
GetSmart
Oct 22 2007, 09:18
Сильно сомневаюсь в таких ужасных показаниях ADS1252U. Кроме того, собранные на коленке любой АЦП будет показывать чёрти что. Я как-то тестил схему на ADS1218 и показания (шумы) меня очень не радовали. А когда я её нормально переразвёл шумы уменьшились в 3-5 раз. Хотя и в старом виде были отдельные земли и шунтирующие кондёры где надо. Ещё многое зависит от алгоритма опроса АЦП. Например чтение готовности через SPI во время оцифровки тоже увеличивает шумы и специально сделан отдельных выход DRDY. Максимум как должен шуметь АЦП - это еденицы микровольт. А в нормально сделанной схеме - доли микровольт. Даже если недалеко стоит процессор и входные линии АЦП тянутся на несколько метров (как у меня в схеме).
kolisnichenko_r
Oct 22 2007, 09:43
У ADS1252U вывода DRDY нет. Конденсаторы керамические 0.1мкФ стоят на входе, по питанию, со стороны опоры. Источник опорного напряжения ADR525. Плата, разводка самодельное; старался отделить грязные земли от сигнальных, на второй стороне экранирование.
Можно посмотреть топологию? Очень интересно
GetSmart
Oct 22 2007, 10:42
Вот моя топология. Возможно не самая лучшая, но показатели по испытаниям получились лучше чем хотел заказчик.
Вообще, чтобы получить минимум шумов и наводок и большую точность нужно оцифровывать на очень медленной скорости, кратной 50 Гц, и делать самокалибровку. И даже если нет вывода DRDY можно по собственному таймеру засечь период занятости АЦП и только после этого анализировать готовность.
kolisnichenko_r
Oct 22 2007, 11:49
Такую маленькую микросхему нам не разрешают использовать-негде монтаж делать.
Оцыфровку провожу с частотой задающего генератора 3,8кГц. Во время анализа готовности импульсы не проходят, просто опрашивается состояние порта МК.
Разводка по стилю похожа, только мы плату сделали утюгом. Спасибо за помощь.
Платы у себя делаете?
GetSmart
Oct 22 2007, 12:02
Может я отстал от жизни, но вроде бы дельта-сигма не даёт хорошей точности на высоких частотах (сотни..тысячи герц).
kolisnichenko_r
Oct 22 2007, 12:13
Цитата(GetSmart @ Oct 22 2007, 15:02)

Может я отстал от жизни, но вроде бы дельта-сигма не даёт хорошей точности на высоких частотах (сотни..тысячи герц).
3,8кГц это частота system clock frequency
Частота выдачи результата Data Output Rate 10Гц
GetSmart
Oct 22 2007, 12:59
Посмотрел сейчас на ADS1252. Вроде бы там входная частота модулятора измеряется мегагерцами. У Вас вообще как часто сигнал готовности появляется?
А микросхема легко паяется паяльником. У неё шаг 0.5 мм.
Наконец то прочитал по диагонали доку на ADS1252. Он сильно отличается от ADS1218. Фильтр у него интересный - sinc5. Даже не знаю что это такое. У 18-ого есть особенность, при выбранном фильтре sinc3 нужно произвести 3 (а точнее выбросить первые 2) показания чтобы получить точный результат. Хотя обычно люди ещё парочку лишних показаний пропускали. Насколько я понял для работы фильтра требовалось накопление результата и повышение точности при этом.
Думаю тут другие люди лучше меня знают как этот АЦП работает.
Собственно у ADS1252 нет даже заявленной точности. По графикам что-то около 19 бит. Для однополярного сигнала 18. Я думаю Вам это будет слишком мало. Да и он какой-то ограниченный, если не сказать ущербный. Нет ни калибровки, ни PGA, вообще ничего нет. Взяли бы сразу ADS1255, у которого заявлено аж 23 бита.
kolisnichenko_r
Oct 22 2007, 13:15
ADS1255 полутше, но корпус очень маленький у нас такой не проходит.
C LTC2420 еще поработаем, может что-то плучится дельное.
Mik174
Oct 22 2007, 17:13
Цитата(SALOME @ Oct 15 2007, 14:18)

Присмотритесь к этому изделию ADuC845/847/848. Он специально сделан для прецизионных измерений. Приятное дополнение - встроенный усилитель с программируемым Ку. Например самый первый входной диапазон: +-20мВ. Можно прикинуть, скока нВ будет "весить" младший разряд" при его 24-х разрядном АЦП. Там есть еще куча приятных примочек. Но, конечно "простой" такая задача не будет. Удачи

Будьте внимательны при использовании этого чипа!
В даташите на странице 31 есть интересная табличка, из которой следует, что при включенном диапазоне 20 мВ и частоте измерений 16 Гц фактическая разрядность составит 13,5, а при частоте измерений 1365 Гц фактическая разрядность составит всего 7,5.
При включенном диапазоне 2,56 В, т.е. К=1 и частоте измерений 16 Гц фактическая разрядность составит 19 бит, а при частоте измерений 1365 Гц фактическая разрядность составит всего 9 бит.
Так, для информации. У Аналоговых Девиц появился 24-битный SAR (не сигма-дельта) AD7767. Кто-нибудь его уже использовал?
Alex255
Oct 23 2007, 10:10
Цитата(kolisnichenko_r @ Oct 22 2007, 16:13)

3,8кГц это частота system clock frequency
Частота выдачи результата Data Output Rate 10Гц
Оно то и дело, что в первый отсчет получится чуть более 8 бит, во второй 9, в 4 - 10 и тд. Пока фильтр не прочухается.
Цитата(khach @ Oct 23 2007, 11:31)

Так, для информации. У Аналоговых Девиц появился 24-битный SAR (не сигма-дельта) AD7767. Кто-нибудь его уже использовал?
Да, занятно. АЦП с арх. последовательных приближений интегральная нелинейность 3ppm. Интересно, кто пробовал?
kolisnichenko_r
Oct 23 2007, 10:45
Цитата(Mik174 @ Oct 22 2007, 20:13)

Будьте внимательны при использовании этого чипа!
В даташите на странице 31 есть интересная табличка, из которой следует, что при включенном диапазоне 20 мВ и частоте измерений 16 Гц фактическая разрядность составит 13,5, а при частоте измерений 1365 Гц фактическая разрядность составит всего 7,5.
При включенном диапазоне 2,56 В, т.е. К=1 и частоте измерений 16 Гц фактическая разрядность составит 19 бит, а при частоте измерений 1365 Гц фактическая разрядность составит всего 9 бит.
Вот какая штука не хорошая, я начал подумывать, не воспользоваться ли этой микросхемой.
Спасибо за подсказку
Mik174
Oct 23 2007, 15:55
Цитата(kolisnichenko_r @ Oct 23 2007, 14:45)

Вот какая штука не хорошая, я начал подумывать, не воспользоваться ли этой микросхемой.
Спасибо за подсказку
У меня в чем-то похожая задача - мне нужно мерить напряжения от 1 мкВ (плюс-минус 0,1 мкВ) до 1,3 В.
Я сейчас смотрю в сторону ADS1256 - уже прикупил чип, скоро буду с ним играться.
Если он соответствуют тому, что написано в его описании, то это то, что мне нужно

Разводку для этотго АЦП хочу посмотреть в ките в Терраэлектронике.
kolisnichenko_r
Oct 29 2007, 06:54
Цитата(kolisnichenko_r @ Oct 22 2007, 17:15)

ADS1255 полутше, но корпус очень маленький у нас такой не проходит.
C LTC2420 еще поработаем, может что-то плучится дельное.
Побороть нестабильность измерений амплитудой в 10 мкВ не получилось.Будем искать что-то другое
Цитата(Mik174 @ Oct 23 2007, 19:55)

У меня в чем-то похожая задача - мне нужно мерить напряжения от 1 мкВ (плюс-минус 0,1 мкВ) до 1,3 В.
Я сейчас смотрю в сторону ADS1256 - уже прикупил чип, скоро буду с ним играться.
Если он соответствуют тому, что написано в его описании, то это то, что мне нужно

Разводку для этотго АЦП хочу посмотреть в ките в Терраэлектронике.
Как будет вести себя, результативность показаний, погрешность какими будут? Расскажите, очень интересно
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.