Значения аналогового потенциометра Arduino Uno не гладкие
Мне надоел пример сглаживания Arduino, но мое аналоговое значение не остается постоянным, даже когда я не вращаю потенциометр. Я отображаю значения от 0 до> gt; от 1024 до 0-> 100. Я пробовал экспоненциальный фильтр, но результат тот же.
В основном значения изменяются на 2–3 балла. Есть идеи, как сделать показания более плавными.
@Arslan, 👍0
Обсуждение1 ответ
На выходе аналого-цифрового преобразователя (АЦП) всегда будет шум. р>
АЦП преобразует аналоговые сигналы с непрерывной амплитудой и временем сигнала в цифровой сигнал с дискретным временем и дискретной амплитудой. преобразование включает в себя квантование ввода, поэтому обязательно вносит небольшую ошибку или шум.
Все, что можно сделать, это уменьшить шум. Подумайте о очистке блока питания. Убедитесь, что ваше опорное напряжение хорошо отфильтровано. Осмотрите эти шины питания с помощью осциллографа, если таковой имеется. Также постарайтесь, чтобы вся проводка была как можно короче, и избегайте использования макетных плат, так как они создают помехи в чувствительных цепях.
При использовании экспоненциального усреднения учтите, что уравнение/код можно легко модифицировать для учета очень зашумленных сигналов в ущерб быстродействию. . Если приложение может допустить задержку, затухание исторических выборок может быть снижено, чтобы можно было отфильтровать то, что большинство считает шумом. Это можно сделать, выбрав очень маленькое значение альфы в следующем уравнении, найденном на wikipedia.org:
- Отправка значения с одного Arduino на другой
- Arduino непрерывно считывает значение АЦП с помощью прерывания
- Колебания показаний датчика температуры LM35 (+- 5°C) с Arduino UNO
- Проблема с открытием нескольких текстовых файлов одновременно/по порядку с использованием <SD.h>
- Динамически обновить масштаб виджета Tkinter из портов Arduino с помощью python и firmata
- Считанное значение не меняется при вращении потенциометра в Arduino?
- Отправка аналоговых входных данных из последовательного порта в Google Таблицы
- Проблема с мультиплексором CD74HC4067 при высоких значениях.
Добро пожаловать в Ардуино:SE. Вы можете найти этот пост на нашем мета-сайте полезным: [Как задать хороший вопрос для Arduino Stack Exchange] (https://arduino.meta.stackexchange.com/questions/2523/how-to-ask-a-good- вопрос для обмена стеками arduino)., @sempaiscuba
пожалуйста, включите схему цепи ... включите значение горшка, @jsotola
Разделение обычного (линейного 270 градусов) потенциометра на 100 секторов доводит до предела. Вы можете добавить гистерезис, чтобы он не блуждал между соседними значениями. Лучше использовать поворотный энкодер., @6v6gt
Не видя вашего кода фильтрации, мы не можем сказать, почему они недостаточно сгладили значения. Пожалуйста, поделитесь своим кодом. Это также зависит от шума, который получает ваша схема (и его частоты)., @chrisl
@ 6v6gt, можете ли вы помочь мне или поделиться ссылкой, как добавить гистерезис?, @Arslan
@chrisl я добавлю код сегодня, @Arslan
@Арслан Гистерезис. https://forum.arduino.cc/t/hysteresis/506190 Он включает пример с потенциометром, но, по опыту, 100 секторов — это внешний предел того, чего можно достичь., @6v6gt
Помогите себе, помогая нам помочь вам. Опубликуйте схему, а не запутанную картинку, показывающую, как она подключена, включая питание и заземление. Включите ссылки на техническую информацию для каждого из аппаратных средств. Причин для ссылок много, это помогает нам понять, какая часть у вас есть, есть много элементов с одинаковыми именами, но электрически не одинаковыми. Во-вторых, это экономит много времени на поиск и угадывание того, что правильно. Мы хотим помочь, но для этого нам нужна ваша помощь. Спасибо st2000!, @Gil
скоро поделюсь остальными подробностями, @Arslan