Не получается вольтметр

spialv
Offline
Зарегистрирован: 23.12.2014

Доброго времени суток,

Наигравшись со светодиодами, дисплеями и датчиками, я решил сделать нечто полезное - вольтметр, благо вещица простая, и в интернете её не делал только что ленивый. Однако все оказалось не так просто, как я расчитывал.

Исходные данные: Ардуина измеряет напряжение на аналогом входе А0 и передает его на ПК, который принятое значение умножает на 4мВ и рисует график от времени и текущее напряжение.

Проблема: Если на А0 подавать "землю" или 5В с самой ардуины - то все работает замечательно, однако при измерении 3.3 В, на ПК отображается значение 3.52В. Измерения поверенным вольтметром говорят, что напряжение действительно 3.3В, а не 3.52В, что наводит на мысль о том, что сам Ардуино вносит ошибку измерения.

Вопрос: С чем на самом деле связан данный эффект, и как его победить?

 

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

spialv, подберите множитель, ваша плата питается не ровно от 5 вольт, отсюда идёт ошибка.  Ещё почитайте про опорное напряжение http://arduino.ru/Reference/AnalogReference

 

OlegK
OlegK аватар
Offline
Зарегистрирован: 26.11.2014

Как считаете? Почему к 4мВ привязались? Почему на стороне ПК, а не в МК?

Обычно делается как-то так -

value * 5.0 / 1024

Скорее всего вы считаете из расчёта, что опорное у вас  ровно 5 вольт, а это может быть и не так.

Нужно определить его реальную величину...

Или вот таким способом.

spialv
Offline
Зарегистрирован: 23.12.2014

OlegK пишет:

Обычно делается как-то так -

value * 5.0 / 1024

Именно так и делаю, только это делает ПК, почему не МК затрудняюсь ответить если честно, скорее всего потому что все равно график строить, да и отправлять числа от 0 до 1023 по RS232 как-то понятнее, чем допустим минус 15 (если вдруг захочется улучшить вольтметр =). А 4мВ это я образно написал, извиняюсь, что запутал.

С опорным я кажется игрался, а вот действительно ли оно и питание +5В не обратил внимание. Буду пробовать, спасибо, ребята!