Увеличение разрядности АЦП

Quazar
Offline
Зарегистрирован: 06.09.2011

Добрый день.

Как известно Arduino Nano имеет 6 аналоговых входов с разрядностью 10бит.

Мне в моем проекте требутся 2 входа по 16 разрядов (можно смириться если будет только 12 разрядов).

На ум приходит только повесить дополнительно микросхему АЦП и подключить ее к дискретным входам.

Однако пока не "наломал дров" хочу уточнить - нет ли возможности соеденить 2 аналоговых входа Arduino с небольшой обвязкой для увеличения разрядности (точности) АЦП преобразования?

Яндекс не дал ответа на мой вопрос.

Спасибо.

 

pnv
Offline
Зарегистрирован: 27.09.2011

из математики: 6*2^10(т.е. может принимать 6144 различных значения) < 2^16(т.е. может принимать 6536различных значения). То есть если даже было бы возможно обьеденить 6 выходов это почти  в 10 раз было бы хуже чем вам надо.

npu3pak13
Offline
Зарегистрирован: 13.03.2012

 В принципе можно сделать если у ВАС не быстро изменяющийся сигнал - сделать 2х каскадную схему типа конвеерного ацп:

Пример условно: на входе напряжение 2.5467 В

1 канал меряет грубо 2.54 В и формирует на цапе 2.54В

на ОУ из входного напряжения вычитается 2.54В и умножается на 100

2 канал меряет 0.67В - затем результат складывается и получается результат более высокой разрядности

maksim
Offline
Зарегистрирован: 12.02.2012

Quazar пишет:

 

Как известно Arduino Nano имеет 6 аналоговых входов с разрядностью 10бит.
 

8 аналоговых входов.

step962
Offline
Зарегистрирован: 23.05.2011

maksim пишет:

Quazar пишет:

 

Как известно Arduino Nano имеет 6 аналоговых входов с разрядностью 10бит.
 

8 аналоговых входов.

Из даташита на ATMega328:

"– 8-channel 10-bit ADC in TQFP and QFN/MLF package

– 6-channel 10-bit ADC in PDIP Package"

Из спецификации на Arduino UNO:

"Аналоговые входы 6"

Из спецификации на Arduino Duemilanove:

"На платформе Duemilanove установлены 6 аналоговых входов, каждый разрешением 10 бит (т.е. может принимать 1024 различных значения)."

Arduino Mini:

"Аналоговые входы 8 (4 из которых имеют выводы)"

Nano:

"Аналоговые входы 8"

Arduino Mega 2560:

"Аналоговые входы 16"

и т.д.

Думаю, таки надо конкретизировать - какая из моделей имеется в виду.

maksim
Offline
Зарегистрирован: 12.02.2012

Quazar же написал, что Arduino Nano:

Quazar пишет:

Добрый день.

Как известно Arduino Nano имеет 6 аналоговых входов с разрядностью 10бит.

.......................

 

carduino.ru
Offline
Зарегистрирован: 06.12.2011

step962 пишет:

maksim пишет:

Quazar пишет:

 

Как известно Arduino Nano имеет 6 аналоговых входов с разрядностью 10бит.
 

8 аналоговых входов.

Из даташита на ATMega328:

"– 8-channel 10-bit ADC in TQFP and QFN/MLF package

– 6-channel 10-bit ADC in PDIP Package"

Из спецификации на Arduino UNO:

"Аналоговые входы 6"

Из спецификации на Arduino Duemilanove:

"На платформе Duemilanove установлены 6 аналоговых входов, каждый разрешением 10 бит (т.е. может принимать 1024 различных значения)."

Arduino Mini:

"Аналоговые входы 8 (4 из которых имеют выводы)"

Nano:

"Аналоговые входы 8"

Arduino Mega 2560:

"Аналоговые входы 16"

и т.д.

Думаю, таки надо конкретизировать - какая из моделей имеется в виду.

Непонятно для чего нужно было повторятся?

maksim вроде написал раньше об этом

maksim
Offline
Зарегистрирован: 12.02.2012

 step962 просто не затил наверное...

11
Offline
Зарегистрирован: 10.03.2012

собрать эталонный усилитель на 10 с АРУ по выходу чтобы за 5в не выходило

подать сигнал на 2 вход 

уровень от 0 до 0,5 в смотреть по 2 выходу

а большой уровень смотреть первым выходом и умножать на 10 для сложения

Если нужна точность и в диапазоне выше 0,5 то сотварить такоеже преобразование но в последствии уменьшив амплитуду на константу.

ps я тупой , догадывайтесь сами что я написал.

step962
Offline
Зарегистрирован: 23.05.2011

maksim пишет:

Quazar же написал, что Arduino Nano:

Упс... Невольно вспоминается дедушка Иван Андреевич:

"А видел ли слона? Каков собой на взгляд!
Я чай, подумал ты, что гору встретил?" -
"Да разве там он?" - "Там".- "Ну, братец, виноват:
Слона-то я и не приметил".

 

Но, тем неменее, сводка, думаю, не помешает.

AlexFisher
AlexFisher аватар
Offline
Зарегистрирован: 20.12.2011

Если у Вас медленно меняющийся сигнал, то разрядность можно увеличить сглаживанием (усреднением) выборок. Теоретически усреднив 2^6 выборок увеличим на 6 бит разрядность. Реально можно получить 12 бит из 10 усреднив 8 выборок, или даже 16 (т.е. с запасом на 1 или 2 бита). Практически работает только при наличии шума или фона по входу больше минимального разряда (заодно и он убирается), иначе будет точно "местами" - около смены последнего разряда

Но если нужно мерять точно и быстро, то без внешнего АЦП - никак. Разве что организовать 16 битный цап и компаратор (метод последовательного приближения).

Еще можно поставить преобразователь напряжение/частота (с необходимым качеством, т.е не менее 16 бит) и измерять ардуиной частоту или период - здесь получить 16 бит нетрудно.

cerfer
Offline
Зарегистрирован: 01.04.2012

AlexFisher пишет:

Если у Вас медленно меняющийся сигнал, то разрядность можно увеличить сглаживанием (усреднением) выборок. Теоретически усреднив 2^6 выборок увеличим на 6 бит разрядность. Реально можно получить 12 бит из 10 усреднив 8 выборок, или даже 16 (т.е. с запасом на 1 или 2 бита). Практически работает только при наличии шума или фона по входу больше минимального разряда (заодно и он убирается), иначе будет точно "местами" - около смены последнего разряда

Как это сделать в виде кода на Си? Или поскажите пожалуйста ссылочку в инете!