Конденсатор на аналоговый вход - нужен или нет?
- Войдите на сайт для отправки комментариев
Вс, 19/11/2017 - 17:58
Подключаю к ардуине датчик давления. Сигнал датчика - аналоговый, в диапазоне 0-5в. Длина провода от контроллера до датчика будет 4-6м- боюсь, провод будет собирать всякие наводки, тем более что вокруг мощные электромоторы.
Вопрос к опытным - поможет ли в этом случае установка конденсатора между входом ардуино и землей? Предполагаю что-то вроде керамики 0.1 - 1 мкФ.
С другой стороны, ведь для измерения уровня аналогового сигнала в ардуино используется тестовый конденсатор - не помешает ли дополнительный кондер на входе, не исказит ли результат измерений?
Конденсатор на налоговый вход - нужен или нет?
А на сайте налоговой службы не пробовали спросить? :)))
а почему бы сразу возле датчика не отцифровать сигнал? поставить дигиспарк например и в RS485. Надёжнее должно быть.
b707, однозначно ответить на Ваш вопрос невозможно, т.к. ответ существенно зависит от того, насколько быстро, как Вы предполагаете, может изменяться сигнал на выходе датчика, а также какая Вам нужна точность при быстро меняющемся сигнале.
И, строго говоря, на входе нужен не конденсатор, а RC-цепочка.
b707, однозначно ответить на Ваш вопрос невозможно, т.к. ответ существенно зависит от того, насколько быстро, как Вы предполагаете, может изменяться сигнал на выходе датчика, а также какая Вам нужна точность при быстро меняющемся сигнале.
сигнал меняется медленно - не быстрее нескольких процентов в минуту. Точность в процент от полной шкалы вполне устроит.
пара волшебных словосочетаний: "экранированный провод", он же "микрофонный кабель" и ещё "витая пара" просто обязаны вам помочь. Если нет, то выше "RC цепь на входе". :)
сигнал меняется медленно - не быстрее нескольких процентов в минуту. Точность в процент от полной шкалы вполне устроит.
Тогда, вероятно, Вам нужна RC-цепочка с постоянной времени порядка 10 с.
У датчиков обычно на выходе уже есть резистор (значение или в даташите, или измерить) как защита "от дурака", да и сам выходной каскад обладает конечным сопротивлением. Всегда между разьёмом и входом МК ставлю резистор 4.7-10 кОм, чтоб при случайной подаче скажем +12В не попалить защитные диоды.
10кОм NTC подключен на 5-8 м кабеле КММ 2х0.12 - наводок нет и без кондера. Есть КММ 4х0.35. Оплетку сажать на массу только со стороны МК.
Ок, спасибо всем ответившим. Однако один из вопросов так и остался без ответа. Конденсатор 0.1мкФ, напаянный между аналоговым входом ардукино и GND - может мешать правильному измерению сигнала или нет?
на этом датчике нет. А что за датчик? вообще чем меньше сопротивление резистра(притягивающего, стягиваюшего) тем меньше возможные помехи
датчик вот такой
Скорее всего ток на выходе датчика не должен превышать 0.1mA
Скорее всего ток на выходе датчика не должен превышать 0.1mA
И какой вывод? - нужна подтяжка или нет? - я так понимаю, что чем меньше ток, тем более чувствителен датчик к наводкам.
Кстати. у других продавцов на такие же датчики указан ток до 20мА
10mA указан ток потребления, а ток на выходе это другое
вот для mpxv7002 например
Output Source Current at Full Scale Output IO+ — 0.1 —- mAdc
и в нем уже приенен конденсатор 470pf на выходе
не датчик к наводкам, а чем выше сопртивление между нулем и выходом датчика(входом дуины) тем меньше гасятся помехи в проводе от индуктивной помехи.
натурно смотреть наличие помех и при надобности применить резистор с конденсатором, но не превышая мах ток 0.1, как вариант использовать усилитель по току (так наверное называется) чтобы напряжение на выходе было такое же как на входе а резистор можно меньше ставить,
пара волшебных словосочетаний: "экранированный провод", он же "микрофонный кабель" и ещё "витая пара" просто обязаны вам помочь. Если нет, то выше "RC цепь на входе". :)
а если и это не поможет, то
а почему бы сразу возле датчика не отцифровать сигнал? поставить дигиспарк например и в RS485. Надёжнее должно быть.
Правильнее было бы сваять тестовый скетч с выводом в комп по сериалу и поглядеть на стабильность результатов. А потом уже решать, надо ли бороться с помехами или ими можно пренебречь. На худой конец, усреднить десяток измерений. И поделиться тут результатами.
Правильнее было бы сваять тестовый скетч с выводом в комп по сериалу и поглядеть на стабильность результатов.
это я уже давно проделал, в лабораторных тестах результаты стабильны и никаких помех нет. Однако реальная схема будет работать на 2х-киловаттном компрессоре в окружении мощного промышленного оборудования. Испытывать в этих условиях поделку на проводочка и бредборде - не вариант. К натурным испытаниям нужно идти с работающим прототипом. Вот я и решаю, где и какую ставить защиту от помех. Понятно, что практическое использование внесет попрравки - но хочется заранее учесть максимум нюансов.
Б707! Ну точно не помешает. Просто замедлит измерения. Если сильно беспокоишься, то зашутнтируй его резистором в 1-2Мом.
Хуже он не может сделать, просто снизит возможные частоты измерений, но они тебе безразличны.Если конденсатор большой, то последовательно поставь резистор в 1-2К. Датчик цепляй по "Святой Паре" кат5, плюс с землей - одна пара и сигнал с земоей - другая.
У меня такой же датчик в подвале на насос водяной стоит. Схему все к нему придумываю... испытал, а дальше лень стало. Это "прокрастинация" назыввается. ;) Вроде и без автоматики все работает... а наворот ради наворота - мне уже не солидно....
Так вот по опыту - на даллас больше наводок, чем на него.
Для оцифровки медленно меняющегося зашумленного сигнала проще всего использовать оверсемплинг -- большое количество АЦП-преобразований с последующим усреднением результата. Все помехи в этом случае равномерно размазываются по спектру и в изрядной степени компенсируют друг друга. Эффект присутствия антиалайзингового кондера на входе АЦП в этом случае так же нивелируется. Он и не мешает ничему, но и смысла его туда ставить тоже особого нет.
влезу и я со своими 5 копейками.
делаем буфер из n измерений, заполняем его, вычисляем среднее, выкидываем значения среднее отклонение которых на x% не вписываются, еще раз усредняем оставшиеся данные, и считаем это "истиной в последней инстанции".
влезу и я со своими 5 копейками.
делаем буфер из n измерений, заполняем его, вычисляем среднее, выкидываем значения среднее отклонение которых на x% не вписываются, еще раз усредняем оставшиеся данные, и считаем это "истиной в последней инстанции".
Это прямой путь ограсти где-нибудь систематическую ошибку.
За примером далеко ходить не надо: если Вы будете обрабатывать таким образом милисекунды Ардуино, то при идеальном кварце получите, что в 1 мс не 1000 мкс, а 1024.
влезу и я со своими 5 копейками.
делаем буфер из n измерений, заполняем его, вычисляем среднее, выкидываем значения среднее отклонение которых на x% не вписываются, еще раз усредняем оставшиеся данные, и считаем это "истиной в последней инстанции".
Зачем все так сложно, не проще какой нибудь простой Калман фильтр, оно само и на помеху настроится и памяти сожет меньше и мосх парить не придется, тем более о быстродействии речи не идет. Вот например http://www.arduinolibraries.info/libraries/kalman-filter-library , только с этой библиотекой поосторожнее, она отрицательные и нулевые показания не любит, за то простая как три копейки.
Отчитываюсь. Подключил датчик на витой паре длиной 4м, в кабеле использовал 2 пары - одна VCC + GND. в другой сигнал + GND. На входе в ардуину поставил керамику 0.1мкф между сигналом и землей.
Сегодня тестировал на компрессоре (проект - реле давления) - все работает устойчиво, наводки, если и есть - похоже не мешают. Правда точно про отсутсвие наводок сказать не могу, так как экран OLED 0.96 категорически отказался что-либо показывать рядом с компрессором - и никакого диагностического вывода я увидеть не смог :) Но компрессор включается и выключается по давлению, так как и должен - значит датчик работает.
Еще вариант- П-фильтр из дросселя на частоту ниже 50 герц. Отфильтруется все, кроме постоянки и помех 50- герц, которых и так мало.
Подниму тему, поскольку опыт работы с такими датчиками у меня сейчас некоторый накопился. :) Конденсатор ставить смысл есть, не только из-за наводок, но и из-за того, что в насосных системах пульсации давления неизбежны. Программный фильтр безусловно помогает, но все паразитные пульсации отсеивать достаточно сложно, особенно если у нас небольшое количество сэмплов. А если оно большое - тратим много времени. Конденсатор решает вопрос с "паразитными" пульсациями на ура.
Скажем, если порыть даташиты на подобные датчики в сети (их мало, но есть, в основном по подключению к автомобильным мозгам), то в рекомендованной схеме конденсатор будет, обычно десятки нанофарад.
По итогу, я использую как конденсатор, так и программный фильтр на небольшом количестве замеров.
1. Конденсатор параллельно входу.
Остался открытым вопрос: Какое выходное сопротивление детчика?
Если сопротивление достаточно низкое - можно включить последовательно входу резистор, чтобы получился на входе RC- фильтр.
2. витая пара в экране от дачика:
- экран изолировать от корпуса!!!
- экране НЕ соединяется с Общим датчика на датчике !!!
- экран соединяется с Общим только в ОДНОЙ точке (на входе платы ардуино)
3. програмное скользящее среднее:
Vin_ср = Vin*(alpha) + Vin_ср (1-alpha)
, где Vin - напряжение с датчика
здесь параметр alpha подобрать.
Наверное подойдет в диапазоне 0,05...0,2
(зависит от частоты считывания сигнала и от нужной програмной реакции на изменение)
Вопрос: какое время цикла между измерениями?
Нужно посмотреть есть ли помеха от 50/100Гц?
Хорошо бы посмотреть осцилографом по входу (что там)?
to b707
А не проще датчик поближе к ардуине и трубку к датчику на соответствующее давление?И проблемы с наводками будут сведены к минимуму.Конечно ,если есть такая возможность .
Конденсатор ставить смысл есть
На вход АЦП ставится ФНЧ (конденсатор или RC, или LC), если нет серьёзного обоснования для отказа от него.
Больше того, RC фильтр должен ставиться всегда. Частота среза должна быть равна половине частоты оцифровки или меньше, если верхние частоты не нужны. В этом случае результат будет "плавнее".
Два жирных плюса двум последним комментариям.
Тема конденсатора на входе АЦП очень непростая. Он и нужен и ненужен одновременно :) Всё зависит от ряда факторов, как то тип входного сигнала, импенданс входного сигнала, скорость оцифровки. Кто хочет углубиться можно почитать статью Л.И. Демоны АЦП
Многие считают конденсатор панацеей от всех помех
забывая о выходном сопротивлении источника и входном сопротивлении нагрузки этого фильтра и необходимости выбора его полосы пропускания.
Ну а на входе АЦП стабильное напряжение во время измерения только приветствуется.
Обычно это делается с помощью схемы выборки-хранения (или кондёра как частный случай этого)
есть много внешних УВХ, но к интегратору они не имеют отношение - там принцип другой.