Страница 3 из 14

Re: ATmega + 12bit ADC

Добавлено: Ср авг 11, 2021 17:30:35
goldmen8
slav0n писал(а):...совершенно не въехал в идею...
Всё нормально он там въехал. И вполне понятно объясняет и показывает какой эффект при этом получается.
Никого не заставляю этим заниматься, и ни коим образом не настаиваю. :wink:

Re: ATmega + 12bit ADC

Добавлено: Ср авг 11, 2021 19:02:35
slav0n
goldmen8 писал(а):Всё нормально он там въехал.
ну, и зачем он 240 выборок суммировал можешь пояснить?

Добавлено after 1 hour 38 seconds:
а если-бы он действительно въехал, то суммировал бы 256 выборок и получил 14 бит

Re: ATmega + 12bit ADC

Добавлено: Ср авг 11, 2021 19:52:38
Dimon456
slav0n писал(а):то суммировал бы 256 выборок и получил 14 бит
мечтай
СпойлерИзображение
Даю отсчеты
Спойлерна входе 0,336091

Код: Выделить всё

adc_data[0]		74
adc_data[1]		75
adc_data[2]		76
adc_data[3]		76
adc_data[4]		74
adc_data[5]		76
adc_data[6]		69
adc_data[7]		73
adc_data[8]		76
adc_data[9]		68
adc_data[10]		69
adc_data[11]		74
adc_data[12]		69
adc_data[13]		72
adc_data[14]		76
adc_data[15]		68
Сумма 1165
1165 / 16 = 72,81
1165 / 4 = 291,25

72,81 * 5000 / 1024 = 355,52
291,25 * 5000 / 4096 = 355,52
Спойлерна входе 0,334702

Код: Выделить всё

adc_data[0]		76
adc_data[1]		69
adc_data[2]		69
adc_data[3]		68
adc_data[4]		69
adc_data[5]		71
adc_data[6]		76
adc_data[7]		69
adc_data[8]		76
adc_data[9]		68
adc_data[10]		76
adc_data[11]		71
adc_data[12]		76
adc_data[13]		69
adc_data[14]		76
adc_data[15]		68
Сумма 1147
1147 / 16 = 71,69
1147 / 4 = 286,75

71,69 * 5000 / 1024 = 350,04
286,75 * 5000 / 4096 = 350,04

А теперь шаг
355,52 - 350,04 = 5,48
355,52 - 350,04 = 5,48

(0,336091 - 0,334702) * 1000 = 1,38 вот который должен быть шаг.
Хоть так крути, хоть эдак, результат один. Захотел он 14 бит. :tea:

Re: ATmega + 12bit ADC

Добавлено: Ср авг 11, 2021 20:45:07
slav0n
Dimon456 писал(а):Даю отсчеты
"умник", а где ты взял дробные числа при сдвиге суммы?
1165/16 = 72
1165/4 = 291

1147/16 = 71
1147/4 = 286

Re: ATmega + 12bit ADC

Добавлено: Ср авг 11, 2021 20:46:36
charchyard
мде. туповатый всёж модератор на соседском форуме. а тут такие батлы корифейские из-за никчёмной темы :o пойду ка я повнимательнее апноут почитаю, что умный малчик перевёл с латиницы. уже склоняюсь, что оверсемплинг мне как нельзя лучшее подойдёт, но исчё очкую маленько :)))

Re: ATmega + 12bit ADC

Добавлено: Ср авг 11, 2021 20:57:16
Starichok51
подойдет, не сомневайся.
тут всё до предела просто:
сумма 4 выборок добавляет 1 бит.
сумма 16 выборок добавляет 2 бита.
сумма 64 выборок добавляет 3 бита.
сумма 256 выборок добавляет 4 бита.
сумма 1024 выборок добавляет 5 бит.

Re: ATmega + 12bit ADC

Добавлено: Ср авг 11, 2021 21:24:01
Dimon456
slav0n писал(а):"умник", а где ты взял дробные числа при сдвиге суммы?
А может ты float решишь использовать.
Ну да ладно, что там у тебя:

Код: Выделить всё

1165/16 = 72
1165/4 = 291
72 * 5000 / 1024 = 351
291 * 5000 / 4096 = 355

1147/16 = 71
1147/4 = 286
71 * 5000 / 1024 = 346
286 * 5000 / 4096 = 349

А теперь шаг
351 - 346 = 5
355 - 349 = 6

А должен быть 1,38
где твои 12 бит?

А теперь, "умник", 16 * 1024 = 16384 и 4 * 4096 = 16384, хоть так крути хоть эдак, результат один. :tea:

Re: ATmega + 12bit ADC

Добавлено: Ср авг 11, 2021 21:42:37
Starichok51
если мы проверяем оверсемплинг, то первое деление (на 16) вообще не имеет смысла проводить. соответственно, и все остальные вычисления после деления на 16 делать не нужно.
и при работе с целыми числами нет проблемы сделать округление после деления (сдвига).
тогда в первом случае получим 291, а во тором случае - 287.
Dimon456, и еще не известно, что ты в своей схеме подмешал в качестве шума. но по результатам выборок это вообще не похоже на пилу, о которой говорится в вышеупомянутом апноте. поэтому твои результаты бессмысленны. и неправильность твоего эксперимента хорошо видна, так как у тебя вместо 336 мВ в расчете получилось 355 мВ.
Dimon456 писал(а):А должен быть 1,38
а откуда родилось это число?

Re: ATmega + 12bit ADC

Добавлено: Ср авг 11, 2021 21:47:15
slav0n
от беда с этими "умниками"...

(72 - 71) * 5.0 / 1024 = 0.0049
(291 - 286) *5.0 / 4096 = 0.0061

6.1 - 4.9 = 1.2

Re: ATmega + 12bit ADC

Добавлено: Ср авг 11, 2021 22:13:02
Starichok51
выше я показал, что при округлении получится 287, и результат будет точно таким же:
(291 - 287) * 5 / 4096 = 0,0049.
но так как его эксперимент полностью ошибочен, то с оверсемплингом нужно делить 1 * 5 / 4096 = 0,00122.
и для проверки оверсемплинга нужно подавать на вход два напряжения, отличающиеся на 0,00122 Вольта.
а также нужно подмешивать правильный шум.

Re: ATmega + 12bit ADC

Добавлено: Ср авг 11, 2021 22:26:19
slav0n
Starichok51 писал(а):а также нужно подмешивать правильный шум.
да в железе будет видно - нужно или нет

Re: ATmega + 12bit ADC

Добавлено: Ср авг 11, 2021 23:30:16
parovoZZ
[uquote="Starichok51",url="/forum/viewtopic.php?p=4074597#p4074597"]тут всё до предела просто:
сумма 4 выборок добавляет 1 бит.
сумма 16 выборок добавляет 2 бита.
сумма 64 выборок добавляет 3 бита.
сумма 256 выборок добавляет 4 бита.
сумма 1024 выборок добавляет 5 бит.[/uquote]
это теорема какая-то или что? Откуда взяты эти цифры?

Re: ATmega + 12bit ADC

Добавлено: Чт авг 12, 2021 05:01:58
slav0n
Starichok51 писал(а):Dimon456, и еще не известно, что ты в своей схеме подмешал в качестве шума.
а он просто подмешал какую-то каку амплитудой ~40 mV и предлагает выделить сигнал 1.5 мВ
ну, я ж говорю - настоящий "умник"

Re: ATmega + 12bit ADC

Добавлено: Чт авг 12, 2021 12:46:16
Dimon456
Starichok51 писал(а):что ты в своей схеме подмешал в качестве шума
Эта ваша схема, это не моя схема.
Смотри
СпойлерИзображение
Наверное не тот шум, может на тон выше или ниже?
Starichok51 писал(а):а также нужно подмешивать правильный шум.
ага, а еще и войти в резонанс с космосом.

Вот ведь какая красивая таблица получается
СпойлерИзображение
Чего только стоит "разгон" 10 битного АЦП до 16 бит.
Просто слов нет, люди ставят чуть ли не "атомные" источники опорного напряжения, типа REF195,
а тут шум собираются подмешивать.
Вопросик один, а если шума не будет то оверсемплинг работать не будет?

Re: ATmega + 12bit ADC

Добавлено: Чт авг 12, 2021 14:03:59
charchyard
я собираюсь использовать "атомнобомбический" Aref
СпойлерИзображение
надеюсь шума будет достаточное колво :solder:

Re: ATmega + 12bit ADC

Добавлено: Чт авг 12, 2021 15:16:08
slav0n
засимулил в шпротеусе
без шума не работает.
дал на опору наобум синус 100кГц 5 мВ - заработало

Re: ATmega + 12bit ADC

Добавлено: Чт авг 12, 2021 16:10:02
Starichok51
без шума и не должно работать.

Re: ATmega + 12bit ADC

Добавлено: Чт авг 12, 2021 16:30:12
slav0n
та это я для сомневающихся "умников" написал.
использовал модель топикстартера.
у меня при подключении шума динамическая индикация в симуляторе превращается в лютое слайдшоу.
как побороть?

Re: ATmega + 12bit ADC

Добавлено: Чт авг 12, 2021 17:00:07
goldmen8
slav0n писал(а):динамическая индикация в симуляторе превращается в лютое слайдшоу.
slav0n писал(а):и зачем он 240 выборок суммировал
а потом посчитал и вывел на табло, с большим таким усреднением и замедлением чтоб табло не мельтешило. И больше ни чем контроллер не занимается.
Это просто был опыт, получится или нет увеличить точность (разрядность) измерения.

Re: ATmega + 12bit ADC

Добавлено: Чт авг 12, 2021 19:19:13
slav0n
goldmen8 писал(а):а потом посчитал и вывел на табло, с большим таким усреднением и замедлением чтоб табло не мельтешило. И больше ни чем контроллер не занимается.
та забыли уже про того чувака с его 240

Добавлено after 24 minutes 6 seconds:
симуляция и сыр.
сыр с коментами топикстартера, я просто его немного покромсал

Добавлено after 1 hour 34 minutes 37 seconds:
charchyard писал(а):я собираюсь использовать "атомнобомбический" Aref
кстати, если здесь использовать калиброванную опору 4.096, то можно избавиться от float в вычислениях