реклама на сайте
подробности

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Снова АЦП
Яrik
сообщение Feb 21 2007, 18:24
Сообщение #1


Частый гость
**

Группа: Новичок
Сообщений: 110
Регистрация: 8-01-07
Из: Украина
Пользователь №: 24 216



ЕСТЬ РЯД ВОПРОСОВ smile.gif :

1) При измерении напряжение встроеным АЦП (ATmega8) без подачи на вход напряжения показания состовляют 0,2-0,3В, а при закорачиванеи входа на корпус - 0В. Это свидетильствует о сильных наводках? Как можно уменьшить их на минемум?

2) Как сильно влияют на точность преобразования шумы самого МК?

3) Усредняя результат преобразования способом Z=(Z1+Z2+...+Zn)/n, каким бедет оптимальное значение n?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Feb 21 2007, 19:09
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



1) притянуть вход резистором к земле, чтобы не "болтался".
2) В цифрах не скажу, но если вы не получите заявленных в даташите характеристик, то можно вводить процессор на время преобразования в спящий режим.
3) бесконечность.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
giv2
сообщение Feb 21 2007, 19:39
Сообщение #3





Группа: Новичок
Сообщений: 11
Регистрация: 3-02-07
Пользователь №: 25 006



Цитата
1) .. без подачи на вход напряжения

Надо понимать так - вход НЕ подключен к источнику сигнала?!
а вход высокоомный, и на входе АЦП МК присутствует указанная вами "наводка".

Цитата
2) Как сильно влияют на точность преобразования шумы самого МК?

Влияют, зависит от конкрентного проекта - рассматривают конкретно в каждом случае,
например, используют режимы частичного отключения узлов МК на время измерений..

Цитата
3) Усредняя результат преобразования способом Z=(Z1+Z2+...+Zn)/n, каким бедет оптимальное значение n?

Чем больше n - тем не хуЖе, n выбирают кратно 2. Например, n=8.
Go to the top of the page
 
+Quote Post
Яrik
сообщение Feb 21 2007, 21:30
Сообщение #4


Частый гость
**

Группа: Новичок
Сообщений: 110
Регистрация: 8-01-07
Из: Украина
Пользователь №: 24 216



Цитата(giv2 @ Feb 21 2007, 18:39) *
Цитата
3) Усредняя результат преобразования способом Z=(Z1+Z2+...+Zn)/n, каким бедет оптимальное значение n?

Чем больше n - тем не хуЖе, n выбирают кратно 2. Например, n=8.

n=256 будет нормально?... для измерения выходного напряжения БП.
Go to the top of the page
 
+Quote Post
Dopler
сообщение Feb 21 2007, 21:49
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 437
Регистрация: 23-04-05
Из: Таганрог
Пользователь №: 4 425



Цитата(Яrik @ Feb 21 2007, 21:30) *
Цитата(giv2 @ Feb 21 2007, 18:39) *

Цитата
3) Усредняя результат преобразования способом Z=(Z1+Z2+...+Zn)/n, каким бедет оптимальное значение n?

Чем больше n - тем не хуЖе, n выбирают кратно 2. Например, n=8.

n=256 будет нормально?... для измерения выходного напряжения БП.


Вообще-то ADC нормально работает при n=1. Или ваш БП так шумит, что требует таких гигантских усреднений?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Feb 21 2007, 22:02
Сообщение #6


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(Яrik @ Feb 21 2007, 20:30) *
n=256 будет нормально?... для измерения выходного напряжения БП.
Зависит от того, какую точность вы хотите получить, какой уровень шума на выходе вашего БП, как часто вам надо проводить измерения. Попробуйте, будут "скакать" показания - увеличите, будут медленно обновляться - уменьшите.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Яrik
сообщение Feb 21 2007, 22:22
Сообщение #7


Частый гость
**

Группа: Новичок
Сообщений: 110
Регистрация: 8-01-07
Из: Украина
Пользователь №: 24 216



Цитата(Сергей Борщ @ Feb 21 2007, 18:09) *
1) притянуть вход резистором к земле, чтобы не "болтался".

А каким номиналом? А то я где-то на форуме читал что входное сопротивление источника сигнала не должно превышать 10кОм, минимальное значение есть?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Feb 21 2007, 22:38
Сообщение #8


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(Яrik @ Feb 21 2007, 21:22) *
Цитата(Сергей Борщ @ Feb 21 2007, 18:09) *

1) притянуть вход резистором к земле, чтобы не "болтался".

А каким номиналом? А то я где-то на форуме читал что входное сопротивление источника сигнала не должно превышать 10кОм, минимальное значение есть?
Нет, выходное сопротивление источника сигнала чем меньше, тем лучше. А этот резистор при наличии источника сигнала будет работать его нагрузкой. Поэтому его желательно делать побольше. Но ведь у вас в конечной схеме вход будет все время подключен к измерительной цепи, и значит резистор будет не нужен.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
gormih
сообщение Feb 21 2007, 23:11
Сообщение #9


nofb
***

Группа: Свой
Сообщений: 430
Регистрация: 18-05-06
Из: Москва, Зеленоград
Пользователь №: 17 218



Бороться с наводкми на ножке, которая висит в воздухе мягко говоря некорректно. Это как с ветряными мельницами :-)


--------------------
Это не то что вы подумали ...

Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Feb 22 2007, 01:44
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(Яrik @ Feb 21 2007, 22:30) *
Цитата(giv2 @ Feb 21 2007, 18:39) *

Цитата
3) Усредняя результат преобразования способом Z=(Z1+Z2+...+Zn)/n, каким бедет оптимальное значение n?

Чем больше n - тем не хуЖе, n выбирают кратно 2. Например, n=8.

n=256 будет нормально?... для измерения выходного напряжения БП.


Для n=256 Придётся по правильному хранить 255 байт (в 8-ми битном режиме) или соответственно 512. Используя примитивный фильтр 2-го порядка я добился затрат в 9 байт при более высоком качестве усреднения(фильтрации).
Go to the top of the page
 
+Quote Post
=GM=
сообщение Feb 22 2007, 02:08
Сообщение #11


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(SasaVitebsk @ Feb 21 2007, 22:44) *
Для n=256 придётся по правильному хранить 255 байт (в 8-ми битном режиме) или соответственно 512. Используя примитивный фильтр 2-го порядка я добился затрат в 9 байт при более высоком качестве усреднения(фильтрации).

Зачем для усреднения хранить 255 байт? Для хранения суммы достаточно 3 байт, 2 старших дадут искомый результат.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
Nanobyte
сообщение Feb 22 2007, 02:17
Сообщение #12


За битами по регистрам гоняюсь
***

Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446



Цитата(SasaVitebsk @ Feb 22 2007, 01:44) *
... Для n=256 Придётся по правильному хранить 255 байт (в 8-ми битном режиме) или соответственно 512.

А зачем? Просто суммировать измеренные значения (8 бит), а после 256 циклов взять старший байт суммы. Это для простого усреднения.


--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Feb 22 2007, 13:45
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(=GM= @ Feb 22 2007, 03:08) *
Цитата(SasaVitebsk @ Feb 21 2007, 22:44) *

Для n=256 придётся по правильному хранить 255 байт (в 8-ми битном режиме) или соответственно 512. Используя примитивный фильтр 2-го порядка я добился затрат в 9 байт при более высоком качестве усреднения(фильтрации).

Зачем для усреднения хранить 255 байт? Для хранения суммы достаточно 3 байт, 2 старших дадут искомый результат.


blink.gif Или вы не подумали, - или я вас не понял.

Берём 256 выборок. Тут два варианта.
1) Если как вы (то есть не хранить каждую выборку), то тогда у вас результат получится один раз за 256 выборок. То есть усреднение будет в 256 раз медленнее чем частота выборок.
2) Если по моему, то надо хранить 256 выборок и сумму. при каждой выборке вычитать 256 и прибавлять текущую.

Если я в чём то не прав - поясните.
Go to the top of the page
 
+Quote Post
mse
сообщение Feb 22 2007, 15:32
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 709
Регистрация: 3-05-05
Пользователь №: 4 693



Цитата(SasaVitebsk @ Feb 22 2007, 13:45) *
blink.gif Или вы не подумали, - или я вас не понял.

Берём 256 выборок. Тут два варианта.
1) Если как вы (то есть не хранить каждую выборку), то тогда у вас результат получится один раз за 256 выборок. То есть усреднение будет в 256 раз медленнее чем частота выборок.
2) Если по моему, то надо хранить 256 выборок и сумму. при каждой выборке вычитать 256 и прибавлять текущую.

Если я в чём то не прав - поясните.

Ну и у вас будет один результат на 256 выборок. ;О) Просто результат будет выдаваться со скоростью сэмплирования. А оно вам надо? Вернее, стоит ли это 256 байт ОЗУ?
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Feb 22 2007, 17:10
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(mse @ Feb 22 2007, 16:32) *
Ну и у вас будет один результат на 256 выборок. ;О) Просто результат будет выдаваться со скоростью сэмплирования. А оно вам надо? Вернее, стоит ли это 256 байт ОЗУ?


Ответ неверный. У меня будет с частотой выборок усреднённое значение по ПОСЛЕДНИМ 256 выборкам.

Что значит "оно вам надо"?

Если вы работаете с постоянным сигналом, то это понятно, но если сигнал всётаки меняющийся, пусть и медленный, то это важно. В этом случае просто будет запаздывание отклика, в тоже время сигнал будет плавно меняться от выборки к выборке. В вашем же случае он может меняться скачкообразно. Например при обработке стрелок в стрелочном приборе это будет выглядеть некрасиво.
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 26th June 2025 - 03:15
Рейтинг@Mail.ru


Страница сгенерированна за 0.0151 секунд с 7
ELECTRONIX ©2004-2016