...Замечание о точности измерений. В программе реализовано измерение напряжения на VD1 с точностью лучше 0,1 мВ... А как этого удалось добиться( АЦП 10 бит, опора 1.1 либо Vсс: т.е. минимальное разрешение порядка 1 мВ)?
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться.
#2808
ARV(Администратор)
Администратор
Постов: 2386
В ответ на: Индикатор температуры тела 08.07.2009 18:48
Репутация: 175  
pt200 писал(а): ...Замечание о точности измерений. В программе реализовано измерение напряжения на VD1 с точностью лучше 0,1 мВ... А как этого удалось добиться( АЦП 10 бит, опора 1.1 либо Vсс: т.е. минимальное разрешение порядка 1 мВ)?ключевое слово ОВЕРСЕМПЛИНГ (oversampling)
Не стыдно не знать, стыдно не учиться
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться.
#2826
pt200(Пользователь)
Новичок
Постов: 7
В ответ на: Индикатор температуры тела 09.07.2009 15:41
Содержимое поста отредактировано: pt200, в: 09.07.2009 16:08
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться.
#2827
pt200(Пользователь)
Новичок
Постов: 7
В ответ на: Индикатор температуры тела 09.07.2009 17:55
Репутация: 0  
ARV писал(а): pt200 писал(а): ...Замечание о точности измерений. В программе реализовано измерение напряжения на VD1 с точностью лучше 0,1 мВ... А как этого удалось добиться( АЦП 10 бит, опора 1.1 либо Vсс: т.е. минимальное разрешение порядка 1 мВ)?ключевое слово ОВЕРСЕМПЛИНГ (oversampling)
Так что пока не могу понять как удалось добиться честных 14ти бит ???
P.S. Я не злой, мне действительно интересно как с помощью программного кода увеличить точность измерения.
Содержимое поста отредактировано: pt200, в: 09.07.2009 18:53
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться.
#2830
ARV(Администратор)
Администратор
Постов: 2386
В ответ на: Индикатор температуры тела 09.07.2009 19:35
Репутация: 175  
во-первых, у вас ошибки в программе: вы делаете не 256 семплов, а 255. во-вторых, прочтите "теорию" - для качественного оверсемплинга необходимо, чтоыбв сигнале присутствовал "белый" шум с амплитудой 0,5 младшего бита. в-третьих, если белого шума нет, можно разогнать АЦП на частоту 1МГц, однако в этом случае шуметь будет уже не 1, а 2 или даже 3 младших бита, поэтому придется делать оверсемплинг до 15 бит, а верить только 12-13 битам. в-четвертых, очень хорошо помогает фильтр результатов оверсемблинга. даже простой типа "скользящее среднее".
Не стыдно не знать, стыдно не учиться
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться.
#2833
pt200(Пользователь)
Новичок
Постов: 7
В ответ на: Индикатор температуры тела 09.07.2009 21:03
Репутация: 0  
ARV писал(а): во-первых, у вас ошибки в программе: вы делаете не 256 семплов, а 255. Виноват, исправлюсь А это сильно принципиально в данном случае?
во-вторых, прочтите "теорию" - для качественного оверсемплинга необходимо, чтоыбв сигнале присутствовал "белый" шум с амплитудой 0,5 младшего бита. Возможно, но в тини13 какой есть АЦП, такой есть.
в-третьих, если белого шума нет, можно разогнать АЦП на частоту 1МГц, однако в этом случае шуметь будет уже не 1, а 2 или даже 3 младших бита, поэтому придется делать оверсемплинг до 15 бит, а верить только 12-13 битам.
т.е. разгон с ухушение и так не ахти параметров поможет??? Делал 4096 выборки. Тоже самое.
в-четвертых, очень хорошо помогает фильтр результатов оверсемблинга. даже простой типа "скользящее среднее". Возможно. ( хотя оно будет работать на 10 битах без ОВЕРСЭМПЛИНГА) Это сколько же результата ждать придется
P.S. А Вы проверяли метод? т.е удалось реально( на железе, не на бумажках) достич разрешения более 0.1 мВ на ATtiny13???
Содержимое поста отредактировано: pt200, в: 09.07.2009 21:08
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться.
#2836
ARV(Администратор)
Администратор
Постов: 2386
В ответ на: Индикатор температуры тела 09.07.2009 21:27
Репутация: 175  
реально в железе работает мой индикатор температуры. температурный коэффициент диода - примерно 2мв/градус. когда я отлаживал на тини26 алгоритм (делал вывод на ЖКИ), у меня получалось в разных версиях алгоритма от 12-15 до 60-70 единиц АЦП на 3-4 градуса. по расчетам это соответствует 0,03 мВ на единицу АЦП. реально вольтметром я не проверял, т.к. такого вольтметра у меня просто нет. возможно, я немного преувеличил, и реально достигнутая точность около 0,1 мВ (может 0,2)... реально мой индикатор фиксирует разницу температур в 0,1 градус (проверял медицинским термометром для жидкостей после калибровки), что так же соответствует в худшем случае 0.2 мВ. так что делайте выводы сами...
P.S. увеличение разрядности АЦП с 10 до 13 бит дает увеличение разрешения с 1мВ до 0,125 мВ - это как раз почти то, что я и сказал
Не стыдно не знать, стыдно не учиться
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться.
#2848
pt200(Пользователь)
Новичок
Постов: 7
В ответ на: Индикатор температуры тела 10.07.2009 13:02
Репутация: 0  
Чегото не выходит каменный цветок то. Идет все жуткими прыжками. Грубо говоря res ~ ADC * к; Да оно и немудрено АЦП впринципе не шумит
Как я понимаю нада к входному сигналу подмешать шум. А как Вам это удалось в той схеме?
Содержимое поста отредактировано: pt200, в: 10.07.2009 14:13
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться.
#2849
ARV(Администратор)
Администратор
Постов: 2386
В ответ на: Индикатор температуры тела 10.07.2009 14:52
Репутация: 175  
во-первых, не загромождайте форум огромными бессмысленными вставками - какой смысл в этом? во-вторых, я уже вам отвечал: если заставить АЦП работать на частоте поболее номинальной, он начнет шуметь сам. это, конечно, не совсем корректно, но эффект дает.
Не стыдно не знать, стыдно не учиться
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться.
#2853
pt200(Пользователь)
Новичок
Постов: 7
В ответ на: Индикатор температуры тела 10.07.2009 15:26
Репутация: 0  
ARV писал(а): во-первых, не загромождайте форум огромными бессмысленными вставками - какой смысл в этом? во-вторых, я уже вам отвечал: если заставить АЦП работать на частоте поболее номинальной, он начнет шуметь сам. это, конечно, не совсем корректно, но эффект дает. Задрал частоту по самый некуда. Нету шума про какой в книжках пишут. Единственное чего добился это минимальный шаг от 1 до 5 единиц может быть.
Мелкашки: ATtiny13-20PU ATtiny13V-10PU
P.S. Видел упоминае еще про одного человека который из 12бит - 16 честных получал. Жуть короче. Видать руки у меня не оттудова растут.
P.S2. Вставки типа [_code_]_[_/_code_] имеют скроллбары и автоматом обычно ужимаются до небольшого размера чтобы не загромождать форум, а здесь скролбары есть, но чегото недоделано.
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться.