только что было всё ок - и вот все шумит и не могу победить беру напругу с обычного провода-концевика через резистор 10к (другого нет) на +5 на А5, подтягивающий внутри выключен. Просто торчат из платы два провода по 30 см. если провода не замыкать, сигнал на pin A5 гуляет от 0 до 1023 с периодичностью. если замкнуть - 1023 стабильно. я конечно зафильтровал его программно, но что это? сдох АЦП?
Шумит когда вход просто висит в возухе или когда подключен к цепи из резистора и еще чего то? Как-то вы немного сумбурно описали схему включения... можно точнее изложить?
pin A5 <------[20кОм]-----------/ _---------+5v вход, провод, резистор, концевик ... провод, Vin поведение: - если замкнуть концевик, выдает 1023 - если разомкнуть, - синусоида вот такая arduino вообще способно мерить напряжение +5 через 20 килоом?
Всё дуина способна. Исходя из вашей схемы, пока концевик разомкнут, у вас на аналоговый вход идёт «ничто». Даже интересно, что получилась такая стройная картина. Не понимаю точно, что именно вы хотите сделать, но если вам нужен ноль при разомкнутом концевике и данные при замкнутом: притяните вход Arduino к земле. То есть вашим резистором соедините вход и GND.
так в том и дело, что случайный шум "ничего" на порте я видел! он не такой. Не синусоидой. Иначе б чего я на форум полез Второе. Как притянуть, я до конца не понимаю. Полагаю, например 100 кОм на землю, 20 кОм на концевик? И при замыкании концевика ток пойдет через 120кОм - греть лес? третье. Беспокоит больше всего. У меня 4 источника питания: USB (активный хаб), и 5,12,18 вольт. Землёй я их все стянул. Но не может ли синусоида по земле идти, все источники разные... Как бы это все отфильтровать?
Источники допустим разные, но я не знаю что за источниками они должны быть, чтобы землю так сильно портить. Дело не в них. Опять же, возвращаюсь к своей мысли: изображённая вами схема и не должна выдавать ровный ноль: pin A5 болтается. А вот улавливать помехи от работы импульсного блока питания он вполне может. Можете, как сказали, 100 кОм на землю. И да, когда концевик замкнётся ток будет греть лес, но это нормально: выделяемая мощность = P = U²/R = 0.2 мВт. Не считается. И да, зачем вам таки резистор последовательно с переключателем? У входа на Arduino очень большой импеданс, то есть через порт ток не пойдёт.
импеданс на входе ардуино надо еще включить! а я выключил - хотел бОльшую точность (концевики с разными резисторами типа). Если включить внутренний резистор, болтанка меньше, но тогда и точность мизерная, к примеру 20кОм + переменник 27кОм (другая схема) вообще не отслеживается. в общем, вылечил проблему: буду замыкать концевики на землю, плюс включенный внутренний резистор. Все заработало, точность на отлично, в том числе и переменником. Кстати, искал осциллограф на ком-порт, перепробовал 4 программы, всё кошмарно, заморочено или тупо не идет. Накидал собственный софт, максимально простой, выкладываю: SVAO: Simple Visual Arduino Oscilloscope Взял кусок иконки Амперки, есличо, уберу
А что-нибудь еще, кроме измерения напруги на A5 параллельно происходит? Фиктивные колебания запросто могут регистрироваться если просаживается напряжение питания МК. Но колебания с полной амплитудой при плавающем входе скорее всего как-то связаны с особенностями работы АЦП.
знаю про просадку, уже столкнулся. Нет, ничего не дергаю. И моторы запитаны от внешних БП. Другое дело, что обвязка - уже кошмарный веник, совокупная длина проводов пару метров будет Когда провожу рукой около ардуины - синусоида меняется наполовину. Или всё это может потому что комп - на UPSе, а все БП - в розетке, и по юсб прёт след разности фаз... Потому и спрашиваю, как их зафильтровать, может какие кондюшки?
Для этого придется независимым методом узнать, что именно "плывёт". Ну или атаковать проблему "в лоб" - экранировать все, менять кабели на коаксиальные и витуху с экраном и вдобавок садить всё на дифференциальные шины ну или еще какое извращение городить. А что за девайс такой большой и страшный собираете?
экранировать - и куда "землить"? вот в чем вопрос. Не в розетку же на землю. собираю то, что обычно делают новички, - турель с управлением по езернету . Из подручных средств типа DC-мотора от принтера и рассыпухи от старых плат. Мотору нужно определить границы, а лучше - позицию. Конечно можно заказать и купить, но лучше сразу не искать легких путей, тогда покупные отъюстированные элементы покажутся раем
Влезу в дискуссию )) Это однозначно поможет? Та же проблема. Подключен к УНО переменный резистор BK100 - данные пляшут. Стабильно практически только на максималке и минималке - 1023 и 0 то бишь. А в другом положении... разлет эдак в 15% думаю, ну точно не 1-2%. И как быть. Завтра притащу экранированные провода, с магазина... Может поможет. Еще читал, что с питания внешнего на дуинку могут быть помехи, тут как быть тоже пока не знаю, и не вычитал. Ну вот и Ваш ответ - подвести резистор. Резисторы у меня подведены на выключатели, где 0 и +5В, на цифровые порты, а про аналоговый и не знал, что тоже можно резистор цеплять от помех. Но я и не электронщик, теорию жизни электронов и все отсюда прочее практически не знаю, не изучал...
Длина провода какая? Если меньше или порядка метра, то не должно ничего плясать ни на 15, ни на 1%. Резистор какой номинал? Берите 5-10 к.
Странно. Какая может быть точность у делителя напряжения, в котором сопротивление верхнего плеча лежит в вилке 20 - 50 kOm? Rpu I/O Pin Pull-up Resistor 20 50 kOm 0.1 мсек на чтение концевика не многовато? Отключайте встроенный PULLUP и ставьте внешний резистор с известным номиналом.