|
Снова АЦП |
|
|
|
Feb 21 2007, 18:24
|
Частый гость
 
Группа: Новичок
Сообщений: 110
Регистрация: 8-01-07
Из: Украина
Пользователь №: 24 216

|
ЕСТЬ РЯД ВОПРОСОВ  : 1) При измерении напряжение встроеным АЦП (ATmega8) без подачи на вход напряжения показания состовляют 0,2-0,3В, а при закорачиванеи входа на корпус - 0В. Это свидетильствует о сильных наводках? Как можно уменьшить их на минемум? 2) Как сильно влияют на точность преобразования шумы самого МК? 3) Усредняя результат преобразования способом Z=(Z1+Z2+...+Zn)/n, каким бедет оптимальное значение n?
|
|
|
|
|
Feb 21 2007, 19:39
|
Группа: Новичок
Сообщений: 11
Регистрация: 3-02-07
Пользователь №: 25 006

|
Цитата 1) .. без подачи на вход напряжения Надо понимать так - вход НЕ подключен к источнику сигнала?! а вход высокоомный, и на входе АЦП МК присутствует указанная вами "наводка". Цитата 2) Как сильно влияют на точность преобразования шумы самого МК? Влияют, зависит от конкрентного проекта - рассматривают конкретно в каждом случае, например, используют режимы частичного отключения узлов МК на время измерений.. Цитата 3) Усредняя результат преобразования способом Z=(Z1+Z2+...+Zn)/n, каким бедет оптимальное значение n? Чем больше n - тем не хуЖе, n выбирают кратно 2. Например, n=8.
|
|
|
|
|
Feb 21 2007, 21:30
|
Частый гость
 
Группа: Новичок
Сообщений: 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 будет нормально?... для измерения выходного напряжения БП.
|
|
|
|
|
Feb 21 2007, 21:49
|
Местный
  
Группа: Свой
Сообщений: 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. Или ваш БП так шумит, что требует таких гигантских усреднений?
|
|
|
|
|
Feb 21 2007, 22:22
|
Частый гость
 
Группа: Новичок
Сообщений: 110
Регистрация: 8-01-07
Из: Украина
Пользователь №: 24 216

|
Цитата(Сергей Борщ @ Feb 21 2007, 18:09)  1) притянуть вход резистором к земле, чтобы не "болтался". А каким номиналом? А то я где-то на форуме читал что входное сопротивление источника сигнала не должно превышать 10кОм, минимальное значение есть?
|
|
|
|
|
Feb 21 2007, 22:38
|

Гуру
     
Группа: Модераторы
Сообщений: 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)
|
|
|
|
|
Feb 22 2007, 01:44
|
Гуру
     
Группа: Свой
Сообщений: 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 байт при более высоком качестве усреднения(фильтрации).
|
|
|
|
|
Feb 22 2007, 02:17
|

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

|
Цитата(SasaVitebsk @ Feb 22 2007, 01:44)  ... Для n=256 Придётся по правильному хранить 255 байт (в 8-ми битном режиме) или соответственно 512. А зачем? Просто суммировать измеренные значения (8 бит), а после 256 циклов взять старший байт суммы. Это для простого усреднения.
--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
|
|
|
|
|
Feb 22 2007, 13:45
|
Гуру
     
Группа: Свой
Сообщений: 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 старших дадут искомый результат.  Или вы не подумали, - или я вас не понял. Берём 256 выборок. Тут два варианта. 1) Если как вы (то есть не хранить каждую выборку), то тогда у вас результат получится один раз за 256 выборок. То есть усреднение будет в 256 раз медленнее чем частота выборок. 2) Если по моему, то надо хранить 256 выборок и сумму. при каждой выборке вычитать 256 и прибавлять текущую. Если я в чём то не прав - поясните.
|
|
|
|
|
Feb 22 2007, 15:32
|
Знающий
   
Группа: Свой
Сообщений: 709
Регистрация: 3-05-05
Пользователь №: 4 693

|
Цитата(SasaVitebsk @ Feb 22 2007, 13:45)   Или вы не подумали, - или я вас не понял. Берём 256 выборок. Тут два варианта. 1) Если как вы (то есть не хранить каждую выборку), то тогда у вас результат получится один раз за 256 выборок. То есть усреднение будет в 256 раз медленнее чем частота выборок. 2) Если по моему, то надо хранить 256 выборок и сумму. при каждой выборке вычитать 256 и прибавлять текущую. Если я в чём то не прав - поясните. Ну и у вас будет один результат на 256 выборок. ;О) Просто результат будет выдаваться со скоростью сэмплирования. А оно вам надо? Вернее, стоит ли это 256 байт ОЗУ?
|
|
|
|
|
Feb 22 2007, 17:10
|
Гуру
     
Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521

|
Цитата(mse @ Feb 22 2007, 16:32)  Ну и у вас будет один результат на 256 выборок. ;О) Просто результат будет выдаваться со скоростью сэмплирования. А оно вам надо? Вернее, стоит ли это 256 байт ОЗУ? Ответ неверный. У меня будет с частотой выборок усреднённое значение по ПОСЛЕДНИМ 256 выборкам. Что значит "оно вам надо"? Если вы работаете с постоянным сигналом, то это понятно, но если сигнал всётаки меняющийся, пусть и медленный, то это важно. В этом случае просто будет запаздывание отклика, в тоже время сигнал будет плавно меняться от выборки к выборке. В вашем же случае он может меняться скачкообразно. Например при обработке стрелок в стрелочном приборе это будет выглядеть некрасиво.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|