Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Поясните про АЦП
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Схемотехника
alt3857
Читаю даташит на АЦП AD7738. Указан диапазон вх. напряжений +-625 mV, +-1.25 V, +-2.5 V, 625 mV, 1.25 V, 2.5 V. Но при этом написано "The analog front end features eight single-ended or four fully differential input channels with unipolar or bipolar 625 mV, 1.25 V, and 2.5 V input ranges and accepts a common-mode input voltage from 200 mV above AGND to AVDD – 300 mV". Непонятна последняя часть, все-таки какое напряжение можно подавать на входы относ земли? Если подать +3 В, то что будет?
Herz
Ну, а что здесь непонятного? На странице 25 даташита даны подробные объяснения. Кроме того, на следующей указано:
Цитата
The nominal reference voltage for specified operation is 2.5 V.

Вот и прикиньте сами, что будет.
alt3857
Herz, огромное спасибо!
alt3857
Т.е. при аналоговом питании +5В и смещении +2.5 В, в 24 битном режиме при подаче на ногу +3В получим значение (3/5)*(2^24)?
Herz
Цитата(alt3857 @ Oct 8 2010, 13:20) *
Т.е. при аналоговом питании +5В и смещении +2.5 В, в 24 битном режиме при подаче на ногу +3В получим значение (3/5)*(2^24)?

Нет, не верно. Я уж думал, Вы разобрались. Аналоговое питание здесь совсем ни при чём. Имеет значение напряжение опорного источника. Которое для этого АЦП рекомендовано величиной 2.5В. Таким образом, если на пин AINCOM подано смещение 2.5В, а на вход AIN (0-7) - 3В и при этом выбран униполярный режим и диапазон 0-1.25В, то выходной код получим (3В-2.5В)*2^24/1.25B в 24-битном режиме и (3В-2.5В)*2^16/1.25B в 16-битном.
alt3857
Хорошо, с униполярным режимом понятно. А если входной сигнал на AIN0-7 изменяется в диапазоне 0..5В, я включаю биполярный режим +-2.5В, какой код получу в этом случае при входном AIN = +3В, AIN = +1 В? В данном случае код при входе 5В может быть равным 2^24?
rezident
Цитирую datasheet за деньги. Дорого. biggrin.gif
Цитата
Analog Inputs Voltage Range
The absolute input voltage range with input the buffer enabled is restricted from AGND + 200 mV to AVDD – 300 mV, which also places restrictions on the common-mode range. Care must be taken in setting up the common-mode voltage and input voltage range so that these limits are not exceeded, otherwise there will be degradation in linearity performance.
The analog inputs on the AD7738 can accept either unipolar or bipolar input voltage ranges. Bipolar input ranges do not imply that the part can handle negative voltages with respect to system ground on its analog inputs. Unipolar and bipolar signals on the AIN(+) input are referenced to the voltage on the respective AIN(–) input.
For example, if AINCOM is 2.5 V and CH0 is configured to measure AIN0 – AINCOM, 0 V to 1.25 V, the input voltage range on the AIN0 input is 2.5 V to 3.75 V. If CH0 is configured to measure AIN0 – AINCOM, ±1.25 V, the input voltage range on the AIN0 input is 1.25 V to 3.75 V.

Выбрав биполярный режим ±2.5В при AINCOM=2,5В, вы теоретически ограничены диапазоном входных сигналов (2,5В-2,5В)...(2,5В+2,5В), т.е. 0В..5В. Но с учетом ограничения на входное синфазное напряжение (AGND+0,2В и AVDD-0,3В) этот диапазон немного уже: +0,2В...+4,7В. Результат вычисляется как (AINx-AINCOM)/(REF-(-REF))*2^24+2^24/2 или (AIN-AINCOM)/(REF-(-REF))*2^16+2^16/2 для 24-х битного и 16-и битного режимов соответственно.
При AIN=3В вы получите результат (3В-2,5В)/(2,5В-(-2,5В))*2^24+2^23=0x999999 (24-х битный режим) или (3В-2,5В)/(2,5В-(-2,5В))*2^16+2^15=0x9999 (16-и битный режим).
При AIN=1В вы получите результат (1В-2,5В)/(2,5В-(-2,5В))*2^24+2^23=0x33333 (24-х битный режим) или (1В-2,5В)/(2,5В-(-2,5В))*2^16+2^15=0x3333 (16-и битный режим).
alt3857
Т.е. правильно считать именно как Вы сказали, а не так (3/5)*(2^24). Понятно, т.е. плясать надо от 2.5В = 2^23. rezident, большое спасибо за помощь.
Herz
Цитата(rezident @ Oct 8 2010, 19:07) *
При AIN=3В вы получите результат (3В-2,5В)/(2,5В-(-2,5В))*2^24+2^23=0x999999 (24-х битный режим) или (3В-2,5В)/(2,5В-(-2,5В))*2^16+2^15=0x9999 (16-и битный режим).
При AIN=1В вы получите результат (1В-2,5В)/(2,5В-(-2,5В))*2^24+2^23=0x33333 (24-х битный режим) или (1В-2,5В)/(2,5В-(-2,5В))*2^16+2^15=0x3333 (16-и битный режим).

По-моему, у Вас ошибка в формуле. Касательно референсного напряжения. Ибо вывод -REF, как правило, заземлён и общее референсное составляет всего 2.5В.
rezident
Цитата(Herz @ Oct 9 2010, 15:57) *
По-моему, у Вас ошибка в формуле. Касательно референсного напряжения. Ибо вывод -REF, как правило, заземлён и общее референсное составляет всего 2.5В.
Может и есть ошибка laughing.gif , но тогда предложите свою формулу, чтобы она соответствовала, например, вот этой таблице из datasheet. Я всего лишь формулу прямой линии переложил на исходные условия (вх. диапазон, вых.разрядность и опора). А насчет того, что опора от земли считается ... в подобных АЦП не имеет значения. Зарядовые компенсационные схемы пилювали на этот факт с высокой колокольни. rolleyes.gif
P.S. возможно вы правы в том, что в формуле преобразования должны стоять не значения +REF и -REF, а значения границ диапазона.
То бишь типа (AINx-AINCOM)/(AINMAX-AINMIN))*2^16+2^16/2. В этом случае пересчет значений полностью соответствует таблице, даже с учетом переполнения разрядности.
Самая верхняя строка таблицы для входного диф.напряжения 1,45В: 1.45В/(1,25В-(-1,25В)*2^16+2^15=0x01147A
Самая верхняя строка таблицы для входного диф.напряжения -1,45В: -1.45В/(1,25В-(-1,25В)*2^16+2^15=0xFFEB86
Отличие от табличного значения на 1 единицу у меня за счет отсутствия округления.
Herz
Да, здесь путаница возникла из того, что пин -REF Вы интерпретировали как потенциал -(REF), а так всё совпадает.
alt3857
rezident, каие значения получатся на выходе если все-таки я попаду в диапазон AGND + 200 mV to AVDD – 300 mV? По таблице, например, для диапазона +-1.25 при значении +1.25 получаем 0xFFFF, а если будет +1.24? И еще, получается, что мы сверху ограничены питанием, тогда при выборе питания +5В у нас в диапазонах +-0.625, +-1.25 будет ограничение только снизу AGND + 200 mV, а сверху нет? А для диапазона +-2.5 В будет еще и сверху так как питание +5В (хотя макс +7В).
rezident
Цитата(alt3857 @ Oct 11 2010, 15:57) *
rezident, каие значения получатся на выходе если все-таки я попаду в диапазон AGND + 200 mV to AVDD – 300 mV?
Правильные значения. smile.gif
Цитата(alt3857 @ Oct 11 2010, 15:57) *
По таблице, например, для диапазона +-1.25 при значении +1.25 получаем 0xFFFF, а если будет +1.24?
В таблице указаны дифференциальные значения напряжения (т.е. разность между AINx и AINCOM), а не абсолютные, которые измерены относительно AGND. 1,24В/2,5В*2^16+2^15=0xFEF9 или 0xFEF9DB для 24-х битного режима.
Цитата(alt3857 @ Oct 11 2010, 15:57) *
И еще, получается, что мы сверху ограничены питанием, тогда при выборе питания +5В у нас в диапазонах +-0.625, +-1.25 будет ограничение только снизу AGND + 200 mV, а сверху нет?
Если вы сместите вход(ы) относительно AGND так, чтобы измеряемые (относительно AGND) входные сигналы попадали в диапазон синфазных напряжений (AGND+0,2В ... AVDD-0,3В), то ограничения не будет. Синфазное напряжение измеряется относительно AGND, дифференциальное измеряется между AINx и AINCOM.
Цитата(alt3857 @ Oct 11 2010, 15:57) *
А для диапазона +-2.5 В будет еще и сверху так как питание +5В (хотя макс +7В).
Да, правильно. При 5В питании, диапазоне ±2.5В, биполярном режиме и смещении AINCOM на +2,5В диапазон входных сигналов меньше, чем заданные границы измеряемого диапазона. В принципе допустимо (АЦП при этом не выйдет из строя) измерять и вне этого ограничения (на полный диапазон ±2.5В), но результат измерения может быть искажен за счет появления нелинейности.
alt3857
На входе АЦП (измеряю мультиметром) +3.04 В, опорное 2.50 В, питание 5.16 В, CHOP=1, 24-бит режим. На выходе АЦП имею значения в диапазоне 10181817 - 10183360. По формуле ((3.04-2.5)/5)*2^24+2^23 = 10200547. С учетом погрешности это нормальные значения?
Herz
Цитата(alt3857 @ Oct 12 2010, 07:31) *
На входе АЦП (измеряю мультиметром) +3.04 В, опорное 2.50 В, питание 5.16 В, CHOP=1, 24-бит режим. На выходе АЦП имею значения в диапазоне 10181817 - 10183360. По формуле ((3.04-2.5)/5)*2^24+2^23 = 10200547. С учетом погрешности это нормальные значения?

Нет, что-то тут не то. Во-первых, по этой формуле 10200547 никак не получается. Во-вторых, соотносить измеряемое дифференциальное напряжение следует к опорному, а оно 2.5В, а не 5В. В третьих, напряжение питания здесь совсем ни при чём, повторюсь ещё раз. В-четвёртых, дело не только в погрешности, но и в корректировке результата по результатам калибровки, посмотрите предпоследний лист даташита.
И последнее. Какой режим выбран:униполярный, биполярный? Какой входной диапазон? Куда подключен AINCOM?
alt3857
Цитата(Herz @ Oct 12 2010, 11:11) *
Во-первых, по этой формуле 10200547 никак не получается.

В смысле не получается, формула неправильная или посчитал неправильно? Это в дес. системе счисления.
Цитата(Herz @ Oct 12 2010, 11:11) *
Во-вторых, соотносить измеряемое дифференциальное напряжение следует к опорному, а оно 2.5В, а не 5В.

Хорошо, как тогда считать правильно? По формуле, которую привел rezident считать нельзя?
Цитата(Herz @ Oct 12 2010, 11:11) *
В третьих, напряжение питания здесь совсем ни при чём, повторюсь ещё раз.

Я его привел для справки.
Цитата(Herz @ Oct 12 2010, 11:11) *
В-четвёртых, дело не только в погрешности, но и в корректировке результата по результатам калибровки, посмотрите предпоследний лист даташита.

С калибровкой отдельная тема, откалибрую как только считать научусь. Но полученный по формуле результат разве не близок к реальному в пределах калибровки?
Цитата(Herz @ Oct 12 2010, 11:11) *
И последнее. Какой режим выбран:униполярный, биполярный? Какой входной диапазон? Куда подключен AINCOM?

Биполярный, +-2.5 В, AINCOM = +2.5 В = REFIN+.

rezident
Цитата(alt3857 @ Oct 12 2010, 11:31) *
С учетом погрешности это нормальные значения?
Нормальные. Относительная погрешность 0,16-0,18%.
Цитата(Herz @ Oct 12 2010, 13:11) *
Во-первых, по этой формуле 10200547 никак не получается.
Получается.
Цитата(Herz @ Oct 12 2010, 13:11) *
Во-вторых, соотносить измеряемое дифференциальное напряжение следует к опорному, а оно 2.5В, а не 5В.
Дык ведь ранее уже выяснили, что приводить полную шкалу нужно ко входному диапазону, а не к опоре.
Herz
Да, всё верно. Поторопился. sad.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.