#1 2016-01-12 11:32:03

sstepane
Учасник
Зареєстрований: 2015-12-22
Повідомлень: 20

Arduino + External Reference (LM4040)

Добрый день,

Хочу задать такой вопрос. Вернее уточнить у знающих - правильно ли я понимаю ситуацию.

Есть Ардуина (не важно какая), опорное напряжение в виде LM4040-4.1 (4.086V) подключенное к AREF.
При такой конфигурации значение с порта analogRead будет равно опорному напряжению, тоесть 4.086 / 1023.

В случае, если к другому аналоговому порту идет подключение от, например, ACS172 и значения с этого датчика будут 0 - 5V (если VCC = 5V ровно и ACS172 подпитан от VCC), без делителя, правильно ли я понимаю, что можно высчитать точное значение измеряя VCC отдельно?

А именно - измеряем VCC (при помощи делителя р10к/р100к, откалиброванного до того как измерять внешним мультиметром), получаем, например, 4.85 и с порта датчика определяем значение как 4.85 / 1023?

Неактивний

#2 2016-01-12 15:03:06

Йожэг
Учасник
Зареєстрований: 2015-12-30
Повідомлень: 97

Re: Arduino + External Reference (LM4040)

И что будет оцифровано, если опорное напряжение 4 В, а на входе АЦП -- аж 5 Вольт.

Неактивний

#3 2016-01-12 15:54:43

sstepane
Учасник
Зареєстрований: 2015-12-22
Повідомлень: 20

Re: Arduino + External Reference (LM4040)

Йожэг пише:

И что будет оцифровано, если опорное напряжение 4 В, а на входе АЦП -- аж 5 Вольт.

Вот мне и интересно, а что будет то? Референс зачем вообще? Если я правильно понимаю - для того, чтобы знать, что 1024 = РЕФЕРЕНС. А то, что я подаю чуть больше, зная какой референс и чему равна 1 на входе АЦП - в чем криминал? Для другого порта референсом есть измеренное точно VCC... Нет?

Неактивний

#4 2016-01-12 16:58:42

NoName
Customer
З Київ
Зареєстрований: 2014-07-08
Повідомлень: 1,446

Re: Arduino + External Reference (LM4040)

некие основы  по АЦП
http://lsm.epfl.ch/files/content/sites/ … s_2009.pdf

я задачу не понял  вообще (
Вам нужно точно знать значение напряжения питания?

Неактивний

#5 2016-01-12 17:26:40

Йожэг
Учасник
Зареєстрований: 2015-12-30
Повідомлень: 97

Re: Arduino + External Reference (LM4040)

Выходит, что Референс - потолок, выше него АЦП не померяет.

Задача: используя внешний AREF = 4.086V узнать текущее напряжение питания датчика, чтобы потом, используя это знание, нормализовать оцифрованное значение аналогового выхода датчика, т.к. оно зависит от напряжения питания.

Неактивний

#6 2016-01-12 17:29:49

Йожэг
Учасник
Зареєстрований: 2015-12-30
Повідомлень: 97

Re: Arduino + External Reference (LM4040)

Хм, но тогда если убрать источник опорного напряжения, то АЦП в МК и датчик будут отдавать и получать значения относительно референса, равного напряжению питания. И ничего пересчитывать не придётся.

Неактивний

#7 2016-01-12 17:39:18

NoName
Customer
З Київ
Зареєстрований: 2014-07-08
Повідомлень: 1,446

Re: Arduino + External Reference (LM4040)

я бы пошел от обратного,
стабилизировал питание датчика )

Application 4. Rectified Output. 3.3 V scaling and rectification application
for A-to-D converters. Replaces current transformer solutions with simpler
ACS circuit. C1 is a function of the load resistance and filtering desired.
R1 can be omitted if the full range is desired.
из
https://www.sparkfun.com/datasheets/Bre … s/0712.pdf

а зачем такие танцы при использовании встроенного АЦП ??? )

Неактивний

#8 2016-01-12 17:46:28

sstepane
Учасник
Зареєстрований: 2015-12-22
Повідомлень: 20

Re: Arduino + External Reference (LM4040)

Йожэг пише:

Хм, но тогда если убрать источник опорного напряжения, то АЦП в МК и датчик будут отдавать и получать значения относительно референса, равного напряжению питания. И ничего пересчитывать не придётся.

Это естественно, как и предложение надежного стабилизированного питания. Но точное опорное для того и нужно, чтобы быть уверенным, что там вот столько-то вольт плюс-минус заявленные 2% (к примеру). Некая теоретическая универсальность.
Я таки вечером попробую погонять и так и так и посмотреть на цифры. Действительно ли при внешнем АРЕФ тупо отрезается шкала до референса или же просто идет рассчет с таким упором.
Есть простой выход - везде ставить делители резистивные с максимумом референса, но их то тоже нужно калибровать, да и лишние детали.
А тут везде написано как-то расплывчато, мол, АЦП "сравнивает" с опорным напряжением... Что оно сравнивает, как...

Кстати видел несколько раз использование внутреннего 1.1В референса, но он менее точный чем LM4040. А стабилизираторы точные - дороже опорного диода.

Неактивний

#9 2016-01-12 18:31:13

NoName
Customer
З Київ
Зареєстрований: 2014-07-08
Повідомлень: 1,446

Re: Arduino + External Reference (LM4040)

Йожэг, прав

// source  http://tim4dev.com/arduino-secret-true-voltmeter/
double Vcc = 5.0; // не всегда так
int value = analogRead(0);
double volt = (value / 1023.0) * Vcc; // правильно только если Vcc = 5.0В

только питание используйте стабильное для всей схемы



все что выше vref,  adc  покажет как 1 во всех битах

Остання редакція NoName (2016-01-12 18:32:34)

Неактивний

#10 2016-01-13 00:30:49

sstepane
Учасник
Зареєстрований: 2015-12-22
Повідомлень: 20

Re: Arduino + External Reference (LM4040)

NoName пише:

Йожэг, прав

// source  http://tim4dev.com/arduino-secret-true-voltmeter/
double Vcc = 5.0; // не всегда так
int value = analogRead(0);
double volt = (value / 1023.0) * Vcc; // правильно только если Vcc = 5.0В

только питание используйте стабильное для всей схемы

все что выше vref,  adc  покажет как 1 во всех битах

Все верно, выше референса кажет максимум. А жаль.

Неактивний

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму