Проблема с аналоговым выводом Arduino

введите описание изображения здесь

Прямо сейчас я пытаюсь измерить напряжение переменного тока с помощью Arduino. Итак, мой план состоял в том, чтобы преобразовать этот 230AC в 4,25 DC с этой схемой, и она работает, когда я читаю с помощью своего тестера, у меня есть 4,25V.


(Цель измерения напряжения переменного тока заключается в том, что я делаю ваттиметр с Arduino, и я хочу, чтобы он был максимально точным, я имею в виду, что здесь, в Испании, у нас должно быть 230 В, но у меня есть 235 В, а в некоторых домах 240 В, я хочу иметь возможность чтобы прочитать эту разницу, откалибруйте мой Arduino с моим домашним напряжением, поэтому, если аналоговое входное напряжение увеличивается, это означает, что напряжение переменного тока должно быть выше, и Arduino выполняет преобразование)


Проблема в том, что когда я подключаю его к Arduino, цифровые значения (0-1023) идут от 500-850, и это много ошибок.

Я не могу найти свою ошибку, может кто-нибудь объяснить мне это поведение. Я также рассчитал этот конденсатор, чтобы получить наиболее стабильную линию постоянного тока.

Есть ли у меня способ исправить это? Спасибо!

Как часто вы измеряете? Какую точность вы хотите?
Я измеряю каждую секунду, могу ли я получить значение для получения всегда одного и того же пятна волны? Я хочу, как ошибка 2 В переменного тока макс.
Хорошо, тогда вы бы предпочли среднее за 1 секунду или пиковое преобразование в среднее среднеквадратичное значение или ?.
может пики сработают
Много ошибок измерения и слишком мало анализа дизайна. Вы не понимаете, что вы показываете, как это работает?

Ответы (3)

Мультиметр может показать хорошее, стабильное и легко масштабируемое напряжение постоянного тока. Вы думаете, что в программном обеспечении измеряете постоянный ток и масштабируете его до текущего значения напряжения переменного тока.

К сожалению, постоянный ток не стабилен, он имеет заметную составляющую переменного тока из-за зарядки и разрядки C1. Смоделируйте это - источник переменного тока 6Vrms, выпрямитель, C1 и нагрузка 940 Ом. Вы должны сделать длинное усреднение в программном обеспечении или получить значительно больший C1.

Еще одна вещь:

Если вам нужны те же ватты, которые счетчики кВтч накапливают для выставления счетов, вы должны измерять мгновенную мощность. Это означает: значения синусоидального напряжения и синусоидального тока умножаются и интегрируются для получения среднего значения в течение одного периода цикла переменного тока. Это ватты. Измерение отдельно напряжения и тока и умножение среднеквадратичных значений — это не одно и то же. Частично или полностью реактивные нагрузки отмечаются по-разному.

ДОБАВИТЬ: Как получить необходимый C1, если флуктуацию нужно поддерживать на низком уровне, увеличив емкость C1:

Мы можем рассчитать, насколько C1 разряжается после зарядки до пикового напряжения. Пиковое напряжение должно учитывать падение на диодах выпрямителя. Это делает масштабирование в программе немного сложным, умножения недостаточно! Еще есть смещение.

Вот грубый расчет для C1: (=отсканированная бумага)

введите описание изображения здесь

Период разряда консервативно предполагается равным 10 мс (дает слишком большую емкость). Мы избегаем необходимости решать, где восходящая синусоида встречается с падающим напряжением.

Мы увидим, что в первом комментарии предполагаемые 700 мкФ слишком малы. Это показывает, что для выявления ошибок необходимо проводить моделирование. Мы можем сделать это здесь:

введите описание изображения здесь

В NODE1 показано напряжение, нижнее изображение в большом увеличении:

введите описание изображения здесь

введите описание изображения здесь

Мы видим колебания 15 мВ. Это в NODE1. Напряжение C1 колеблется в пределах 30 мВ. Это меньше, чем мы ожидали, из-за консервативной продолжительности периода разрядки.

В симуляторе легко тестировать разные варианты. Затем я бы увеличил R1 и R2, чтобы уменьшить C1. 2000 мкФ - это довольно большой кусок. По той же причине я бы добавил еще один C параллельно с R2

ПРИМЕЧАНИЕ: Не учитываются

  • неидеальность трансформатора
  • реально используемый выпрямитель; моделирование использует универсальный тип
Какой С1 посоветуете?
@Pol Если вы допускаете колебания, скажем, 0,5%, вам нужно 700 мкФ с текущими значениями резистора. Смоделируйте это, чтобы увидеть! Это бесплатный и простой в использовании инструмент, позволяющий избежать основных ошибок. Вы также можете увеличить R1 и R2 или добавить многоступенчатую фильтрацию или и то, и другое, в простейшей форме добавить конденсатор параллельно с R2 (имейте R1 и R2 больше, чем 470 Ом, чтобы поддерживать необходимую емкость на низком уровне). Надеюсь, вы заметили, что падение напряжения на диоде следует рассматривать как смещение, а не как масштабирование во всех версиях.
Я попытаюсь получить конденсатор на 700 мкФ и заменить тот, который у меня есть сейчас, можете ли вы сказать мне, какой расчет вы сделали, чтобы получить это значение?
@Pol Эти 700 мкФ рассчитаны не точно, это приблизительное значение в моей голове. Он легко может иметь еще десятки процентов ошибки. Я добавлю правильный расчет к ответу через 1 час.
@Pol Ответ завершен. Мы видим, что угаданное C1=700 мкФ было довольно плохим предположением. Извините за потраченное время.
Спасибо за ваше время. У меня два вопроса... Почему емкость конденсатора должна меняться, если я увеличиваю резисторы? И какова будет полезность конденсатора параллельно с R2? Спасибо!
@Pol Замена резисторов не влияет на емкость конденсатора - она ​​остается неизменной, пока вы не разбьете конденсатор. Но имея большее сопротивление, вы можете получить такую ​​же стабильность при меньшей емкости, потому что конденсатор разряжается меньшим током. Другой конденсатор параллельно R2 или, что еще лучше, на правом конце R3 создает вторую ступень фильтрации, которая эффективно снижает колебания, но также замедляет реакцию. Вы избавитесь от кратковременных пиков напряжения и отсечек. Я считаю, что это не очень вредно. ДЕЛАЙТЕ СИМУЛЯЦИИ!
Какую программу вы мне порекомендуете для моделирования?
@Pol На этом сайте есть один. Он доступен для ответов и вопросов из редактора схем. Я использовал это в своем ответе. Я включил скриншоты. У него ограниченная библиотека компонентов, и это действительно демо-версия платной версии. Но это легкое начало (не публикуйте свои тренировки). Доступно множество реализаций SPICE. Проверьте бесплатное программное обеспечение для анализа цепей и их обзоры. Извините, я не могу продвигать коммерческие продукты в качестве самостоятельных рекомендаций. Меня бы уволили как спамера.
О, не знал, что здесь есть симулятор! попробую

У вас нет фильтрации нижних частот выпрямленного сигнала, поэтому Arduino увидит нестационарную форму волны. Ваш «тестер» будет иметь встроенный фильтр нижних частот, поэтому он работает.

В качестве первого прохода вы можете добавить 4700R перед C1, чтобы они сформировали RC-фильтр нижних частот, чтобы уменьшить колебания выпрямленного сигнала, подаваемого на оставшуюся часть схемы.

Вы имеете в виду, что я могу поставить резистор последовательно на положительной стороне после мостового выпрямителя?

Недостатки дизайна

  • ошибки в коэффициенте трансформации, так как номинальное Vвых соответствует номинальной нагрузке ВА.
  • смещение от падения диода моста 2
  • чрезмерная пульсация 40% от RC = 15 мс для выпрямленного 10 мс 50 Гц

Простое исправление ошибки пульсации

  • Изменение R1, R2 на 22 кОм с C = 15 мкФ даст RC = 660 мс
  • Для f = 100 Гц, когда RC = 66T (T = 10 мс), выпрямленные пики будут иметь ошибку пульсаций < 1%.