Вольтметр. Разница показаний при разном питании

samael9
Offline
Зарегистрирован: 08.02.2015

Есть арудуино нано на 328.

Собрал вольтметр по типовой схеме. В качестве опорного напряжения используется внутренний источник .

При запитывании ардуины от usb - всё нормально. Как только я ардуину запитываю от пина +5в показания не совпадают. Причём показания на входе по мультиметру одинаково при любом питании, но при выводе 

Serial.print(analogRead(A1));

видно что уровень при питании от усб скажем 755, а при питании через пин +5 - 720.

 

Вот кусок кода для снятия показаний:

  float R1 = 6750.0;    // !! resistance of R1 !!
  float R2 = 505.0;     // !! resistance of R2 !!
  int value = 0;


void setup(){


  pinMode(3, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(9, OUTPUT);
  pinMode(10, OUTPUT);
  analogReference(INTERNAL);
  Serial.begin(9600);
}


void loop(){

  vout = (analogRead(A1) * 1.1) / 1024.0;
  vin = (vout / (R2/(R1+R2)));

 

samael9
Offline
Зарегистрирован: 08.02.2015

Ещё поправка. Дуина запитывается от того же источника, с которого измеряется напряжение. Это аккумулятор 12в. 5 вольт с него получаю через DC-DC конвертер, измеряю 12в.

std
Offline
Зарегистрирован: 05.01.2012

Домножьте на 1.0486111111, проблема то...

gena
Offline
Зарегистрирован: 04.11.2012

  Измерьте напряжение питания на самом микроконтроллере при питании от USB. Измерьте это же напряжение при питании от Вашего преобразователя. Вероятно, что при запитывании от USB используется диод развязки и на микроконтроллере напряжение питания на 0,3...0,5 В меньше, чем при работе от преобразователя, и это влияет на внутренний источник опорного напряжения (ИОН). Т.о. :   а) можно попробовать запитать плату от преобразователя через аналогичный диод;  б) использовать внешний источник опорного нарпяжения, напрмер MCP1525 или аналогичные.

samael9
Offline
Зарегистрирован: 08.02.2015

При питании от усб на выводе +5 - 3,6в.

При питании от Vin - 4.84в

Опорное напряжение в обоих случаях одинаковое - 1,09в

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

samael9, где-то у вас косяк в подключении, такого быть не должно. И кстати напряжение с шины +5 при питании от usb слишком занижено, должно быть не меньше 4,5в.

drinkins
Offline
Зарегистрирован: 07.02.2015

Понижающий преобразователь с 12В импульсный? Возможно, создаваемый им уровень помех и наводок таков, что сбивает АЦП. Пытайтесь давить помеху RC фильтром по питанию. Желательно наличие осциллографа, чтобы понять что там происходит.

 

UPD: сложнее всего бороться с помехами от однотактных инверторов...

gena
Offline
Зарегистрирован: 04.11.2012

  Если опорное напряжение одинаковое при разных питающих источниках (см. напряжение на выводе 20 микроконтроллера), то тогда и результат АЦП преобразования должен быть одинаковый. Разве что при запитке от преобразователя помехи идут или ещё какие-то подключения (переключения) в схеме происходят при смене источника питания.

samael9
Offline
Зарегистрирован: 08.02.2015

Так результат преобразования верный. Не верное значение то что от 0 до 1023. Я пробовал и без DCDC Преобразователя. Подавал сразу 12 вольт на плату от аккумулятора. Попробую сейчас всё собрать на другой ардуине. 

samael9
Offline
Зарегистрирован: 08.02.2015

В общем, попробовал две разные дуинки. При питании от одного источника, а замере другого - всё нормально. При питании и замере от одного источника - показания отличаются.

std
Offline
Зарегистрирован: 05.01.2012

drinkins пишет:
Понижающий преобразователь с 12В импульсный? Возможно, создаваемый им уровень помех и наводок таков, что сбивает АЦП (...) сложнее всего бороться с помехами от однотактных инверторов

Плюсую, но от себя добавлю рассказ про преобразователь на 34063, собранный на коленке из говна и палок - пашет на ура и никаких помех. Понижаю им 24 до 5 для pro mini. Осциллографа кстати нету.

Но у меня и 0.1 мкФ возле каждого корпуса. И фильтр на AVCC.

Тем не менее глюки замера крайне странные. Что-то на плате отъедает довольно большой ток, если напряжение так проседает. Идея сходу - пощупать. Есть ли при работе от USB (и замере напряжения с USB) что-то тёплое?

samael9
Offline
Зарегистрирован: 08.02.2015

На других ардуинках с напряжением всё нормально.

Да я пробовал и без преобразователя 12 вольт с аккумулятора. Преобразователь по идее малошумящий (на чём не знаю), но вывод основан на оом, что это BEC от регулятора оборотов бесколлекторного двигателя, на котором написано, что он лоу нойз.

Факт в том, что если на любой аналоговый вход подать напряжение с того же источника, с которого запитана ардуина - показания будут отличаться от ситуации, когда источники разные. Причём отличается именно уровень, из которого рассчитывается напряжения (я не знаю как называется этот уровень это число от 0 до 1024)

Tomasina
Tomasina аватар
Offline
Зарегистрирован: 09.03.2013

std пишет:
Но у меня и 0.1 мкФ возле каждого корпуса. И фильтр на AVCC.

а схемку можно? Пригодится на будущее.

Barny
Offline
Зарегистрирован: 23.01.2015

Кстати, вот тут рекомендуют использовать внутреннее опорное напряжение, а не внешнее питание.

И периодически всплывает, что делить надо на 1023. Тоже сейчас вожусь с измерителем мощности.

samael9
Offline
Зарегистрирован: 08.02.2015

Я опороное и использую.