Ещё один ваттметр на Arduino

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Вот набросал LCD ваттметр:

#include <LiquidCrystal.h>  
#define interval 330 // обновление дисплея мс 

LiquidCrystal lcd(2, 3, 4, 5, 6, 7);// подправьте под свою схему
long previousMillis = 0;   

void setup() {
  lcd.begin(16, 2);
  lcd.print("    Wattmetr"); // приветствие
  lcd.setCursor(0,1);
  lcd.print("      V0.3"); // версия 0.3
  delay(1000);
  lcd.clear();
}

void loop() { 
  //////////////////////////////////////////////////////
  int Voltmeter = analogRead(A0); // A0 вольтметр
  int Ampermeter = analogRead(A1); // A1 амперметр
  float Volt = Voltmeter * (20.0 / 1023.0); // 20 В макс
  float Amp = Ampermeter * (10.0 / 1023.0); // 10 А макс
  float Watts = Volt * Amp;
  //////////////////////////////////////////////////////
  
  unsigned long currentMillis = millis(); 
  if(currentMillis - previousMillis > interval) {
    previousMillis = currentMillis;  
    lcd.clear(); // очистим лсд дисплей
    lcd.setCursor(0, 0);
    lcd.print(Volt);
    lcd.print(" V");
    lcd.setCursor(9,0);
    lcd.print(Amp);
    lcd.print(" A");
    lcd.setCursor(0,1);
    lcd.print(Watts);
    lcd.print(" W");
  }
}

 

 

Может потом добавлю несколько плюшек.

 

 

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Видео роботы:

http://www.youtube.com/watch?v=PYt_gBaUVVY

Ищу тестера, так как мне собирать схему леньки, да и датчика тока нету, а делать свой - леньки.

Вообщем если кого заинтересует пишите тут.

Araris
Araris аватар
Offline
Зарегистрирован: 09.11.2012

HWman пишет:

Ищу тестера, так как мне собирать схему леньки, да и датчика тока нету, а делать свой - леньки.

У меня есть датчик тока

http://www.aliexpress.com/item/Brand-New-3-5mm-Output-AC-Current-Sensor-Transformer-SCT-013-030-Built-in-Diode-ST038/548288665.html

и токовый трансформатор

http://www.aliexpress.com/item/Free-Shipping-5A-scale-AC-current-transformer-module-current-sensor-module/1305018612.html

ненужные, если надо - обращайся.

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Спасибо, но эти датчики для переменного тока, а у меня первоприоритетный постоянный.

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Проверка на железе:

http://www.youtube.com/watch?v=LKyh8LfCorg

Код пока дорабатываю.

maxi_10
Offline
Зарегистрирован: 05.01.2012
#include <LiquidCrystal.h>  
#define interval 330 // обновление дисплея мс 

LiquidCrystal lcd(2, 3, 4, 5, 6, 7);// подправьте под свою схему
long previousMillis = 0;   
int Voltmeter; // A0 вольтметр
int Ampermeter; // A1 амперметр
float Volt;
float Amp;
float Watts;

void setup() {
  lcd.begin(16, 2);
  lcd.print("    Wattmetr"); // приветствие
  lcd.setCursor(0,1);
  lcd.print("      V0.3"); // версия 0.3
  delay(1000);
  lcd.clear();
}

void loop() { 
  //////////////////////////////////////////////////////
  Voltmeter = analogRead(A0);
  Ampermeter = analogRead(A1);
  Volt = Voltmeter * (20.0 / 1023.0); // 20 В макс
  Amp = Ampermeter * (10.0 / 1023.0); // 10 А макс
  Watts = Volt * Amp;
  //////////////////////////////////////////////////////
  
  unsigned long currentMillis = millis(); 
  if(currentMillis - previousMillis > interval) {
    previousMillis = currentMillis;  
    lcd.clear(); // очистим лсд дисплей
    lcd.setCursor(0, 0);
    lcd.print(Volt);
    lcd.print(" V");
    lcd.setCursor(9,0);
    lcd.print(Amp);
    lcd.print(" A");
    lcd.setCursor(0,1);
    lcd.print(Watts);
    lcd.print(" W");
  }
}

 

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Думаю эсли сделать переменные глобальными это только скушает больше памяти.

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Используя функцию analogReference() если использовать мегу 328/168-ю то там можно выставить опорное напряжение в 1.1 В, это даст точность в 1 мВ + оферсемплинг для повышения битносни АЦП(хотябы до 11 бит) дадут шаг АЦП в пол миливольта(если я всё верно подсчитал), что в свою чергу позволит обходится без каких либо ОУ и измерять падение напряжение непосредственно дуиной.

Peacemaker
Offline
Зарегистрирован: 16.03.2014

HWman пишет:

Проверка на железе:

http://www.youtube.com/watch?v=LKyh8LfCorg

Код пока дорабатываю.

На сколько я понимаю, амперметр у Вас подключен не к АКБ а к другому источнику? При токе в 30 ампер практически отсутствует просадка по напряжению...

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Амперметра нету, вместо него просто ручка потенциометра. Протсто тестировал.

Bazar Dabynov
Offline
Зарегистрирован: 15.02.2015

Zdrastvui HWman

Menia zovut Bazar  i hotel svami prokonsultirovatsia. Ia  hotel  izmerit mownost  moiego rezervnogo istochnika toka zavisimo ot vremeni ili energiu s pomowiu arduino. Izvesno amper i volt .  Problema takaia . U plati Arduino skorost obrabotka informasii namnogo medlenne i ne vozmojno obrabotat informasiu . Esli prinimat signalov (amper  i volt ) s pomowiu arduino i otpravit PC(computer) vozmojno li izmeriat mownost ili energiu rezervnogo istochnika toka ? 

Mne kajetsia zdes nado napisat programmu ne tolko dlia arduina no i dlia kompuitera toje. Potomu wto v komputere idet proses obrabotki informassi . Kak vi dumaete /? ia zhdu ot vas kritiki ili  soveta . Zaranee spasibo 

lazy-fox
Offline
Зарегистрирован: 22.08.2014

Bazar Dabynov пишет:
 Izvesno amper i volt 

Зачем измерять то что известно? Зная ток и напряжение не сложно вычислить мощность.

Bazar Dabynov пишет:
 U plati Arduino skorost obrabotka informasii namnogo medlenne i ne vozmojno obrabotat informasiu.

Медленнее чего? Почему не возможно? Сколько раз в секунду нужно выводить информацию о мощности? Ардуине не хватает разрядности АЦП для повышения точности и ширины диапазона измерений. Часто возникает желание мерять токи от мили(микро)ампера до десятков ампер. И как раз погрешность при минимальных и максимальных токах в данном случае не позволяет корректно рассчитать мощность.

 

 

Bazar Dabynov
Offline
Зарегистрирован: 15.02.2015

Spasibo za otveta . Vi mne chem to pomogli . 

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Схемотехнику и кое какие решения заимствовал отсюда http://easymcu.ru/publ/10-1-0-117
Скоро соберу в железе.

lazy-fox
Offline
Зарегистрирован: 22.08.2014

Слежу за направлением ибо мастерю лабораторный блок питания. 

В основе БП ATX от ПК на 450 Ватт, и такой пластиковый корпус:

Терморегуляция и вентиляция были в блоке питания штатно, но пришлось заменить кулер. Защиты от КЗ встроены. Запускается без нагрузочных сопротивлений. Наиболее востребованные напряжения 3.3, 5, 12 вольт являются основными для блока. Вывел эти напряжения на бананах по нижней линии лицевой панели. Справа разместил зажимные разъёмы (как в аккустических колонках). Слева поставил тумблер питания, под ним в круглое отверстие вывел провода с молексами разных видов. В угол затолкал USB разъём дежурки, для зарядки различных гаджетов. Кроме того сколхозил зарядное устройство для Li-Ion, Li-Polymer аккумуляторов на MCP73831T-2ACI/OT. Отлично заряжает акумы крокодилами с индикацей процесса.

Когда начинал курить идею мыслил о микропроцессорным управлением изменения ВАХ от нагрузки на каждую линию питания, индикацию потребления каждой линии, защиты по току (так как токами в 20А легко все дорожки пожечь на подопытных) и прочее. Но суровая действительность и сжатые сраки как обычно упростили задачу. Конечно сделал последовательно/параллельный провод с бананами по середине и PLD в термоусадке для макетки, втыкая который в старый мультиметр и выбирая предел всё удобно измерить. Кстати место по центру блока как раз оставил под индикатор 1602 для будущих идей.

Теперь же на досуге подумываю о динамической индикации нагрузок. Как раз сегодня от 12 вольт запитывал автомобильный телевизор и видеокамеру. В сумме потребляли польше ампера, при этом плата телевизора оставалась холодной, а камера обжигала пальцы. На практике оказалось что тв лопал 1.8А, камера 0.15А. 

Как думаете - сильно усложнится схема если будет три контролируемых линии? 

Мощности кстати сами по себе мало информативны. Если речь идёт о нагрузке то чаще контролируешь токи и напряжения. Если разработывается аккумуляторное устройство, то скорее будет интересна таблица потребеления в различных режимах. Если есть переходные процессы - нужны графики. Про замер емкости аккума - отдельная статья. Конечно хорошо бы точно знать что сколько нагрузки на 3.3 вольта не повесь - останется 3.3, при этом ограничил схему расчётным током (скажем 150 мА) и спокоен что схема не выгорит, отладил и прикидываешь по приборам сколько хавает энергии в разных режимах и какие бывают пиковые токи (тут уже таблица и график) - удобнее к компу подключить и на мониторе в релтайме сравнивать с даташитами изменяя режимы модулей схемы.

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

lazy-fox пишет:

Как думаете - сильно усложнится схема если будет три контролируемых линии? 

Если делать как я хочу то надо будет 3 делителя напряжения 3 ОУ или 2 сдвоеных, например LM358N.

lazy-fox
Offline
Зарегистрирован: 22.08.2014

Пару штук LM358 и несколько smd резисторов звучит уже интересно. Кстати четвертая линия - как раз для контроля зарядки литиевых батарей.

А что скажете по сохранению таблицы значений на флеш и представление их графически, как тут?

Хотя по прежнему думается что оперативно нужны только текущие показатели, а толковый график потребует дисплея от 0 до 15 вольт с шагом 00.01 для напряжений, а токи придётся показывать 00.001 , что в общем то уже задача для excel.

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

lazy-fox пишет:

А что скажете по сохранению таблицы значений на флеш и представление их графически, как тут?

Если я правильно понял то данные сначала записываются в оперативку а потом уже считываются оттуда и выводятся на дисплей, не вижу тут ничего необычного.

Если честно я тут ничего посоветовать не могу, опыта не хватает, да и знаний.

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013
Характеристики следующие:
Диапазон измеряемых напряжений: 0 до  25 В;
Диапазон измеряемых токов: 0 до 9 А;
Погрешность: +/- 0.1 В и +/- 0.05А.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

при 9А какое напряжение на выходе операционника?

при 0А какое?

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

jeka_tm пишет:

при 9А какое напряжение на выходе операционника?

при 0А какое?

9 А должно быть при 2.56 В.
При нуле я хз, пока ещё не собирал в железе, но у меня есть корректировка, даже если и больше нуля то пофиг.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

на всякий случай, вдруг забыл

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

jeka_tm пишет:

на всякий случай, вдруг забыл

В протеусе напряжение 0.01 В а в железе хз.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

к нулю ближе. там попроще. а вот к напряжению питания опреционника хуже, если бы операционник питал от 5В и при 9А должно было быть 5В на выходе

lazy-fox
Offline
Зарегистрирован: 22.08.2014

А если использовать операционник LM358P
[DIP-8] ОУ общего применения 1 МГц, 2 мВ, 3...32В

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

lazy-fox пишет:

А если использовать операционник LM358P[DIP-8] ОУ общего применения 1 МГц, 2 мВ, 3...32В

У меня в закромах только LM358N.

lazy-fox
Offline
Зарегистрирован: 22.08.2014

16рублей/штука. Главного не понимаю: как без шунта померять текущий в схеме ток и напряжение? Сравнить можно операционником, а измерить как?

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

lazy-fox пишет:

Главного не понимаю: как без шунта померять текущий в схеме ток и напряжение? Сравнить можно операционником, а измерить как?

Чёт у меня плохой день сегодня, не совсем понял о чём Вы.
 

Измерить ток без шунта довольно таки проблематично, так как нужна разница напряжений, то есть падение напряжение на выходе относительно входа. А как я хочу делать корректировку? Я просто при старте замеряю напряжение без нагрузки, то есть то которое будет давать сам ОУ - константа, которую я потом вычитаю при расчётах тока.

Пока не соберу, в железе, то не уверен что я делаю так как хочу, так что держите руку на пульсе этой темы...

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Вот это поворот да?

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013
lazy-fox
Offline
Зарегистрирован: 22.08.2014

Думается в моём случае уместно будет применить 20 символьный индикатор MT-20S4, ибо за раз можно будет вывести все показатели по трем цепям и ещё доп.строку, например с показаниями температуры.

Хотя в таком (как выяснилось весьма сложном) вопросе всегда найдётся что добавить по исследуемой цепи: например интересно знать сопротивление цепи молчу про ёмкость и индуктивность, а понимание направления ЭДС при включении электродвигателя/генератора или заряде/разряде включенной  в цепь батареи даст представление о протекающих в цепи процессах. И это хорошо что речь идёт только о постоянном токе.

А надписи по строкам слева "Напряжение U, Ток I, Мощность P" и справа "Вольт, Ампер, Ватт" можно выгравировать на лицевой части корпуса, разместив экран как раз над кругдыми разъёмами (banana).

К слову сказать девайс получился недорогим, простым и удобным как топор. Плата из старого системного блока as is, произвольный корпус, пригоршня разъёмов и выключатель. Имеем 3.3, 5, 12 вольт с токами по 20, 15, 10 ампер; защиту от КЗ; защиту от перегрева с градусником и вентилятором; и как бонус usb на контрольке (когда БП включен в сеть, но выключен тумблер на передней панели).  Ещё бы ограничители тока..., но пока юзаю провод с smd-самовостанавливающимся в разрыв питаемой цепи на нужный ток. Хорошо бы сделать отдельно из 12В регулируемую по напряжению линию, для полного фарша. А добавив вышеописанный контроллер с дисплеем можно будет смело считать его универсальным блоком питания для отладки любых схем на любых МК, в том числе с управлением силовыми нагрузками, например двигателями и пр.

P.S.: Мне в радиомагазине tixer.ru желательно купить железяк на 1000р. Если там есть что для проекта - с удовольствием закажу.

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Дороговат такой дисплей... я думал конечно же про него...
А что за прога в которой происходит эмуляция лсд?

lazy-fox
Offline
Зарегистрирован: 22.08.2014

Думал поискать аналог. Основная цена за руссификацию контроллера нашими производителями. 

Прога называется MS Paint. Шрифт точечный в командной строке. Копипастом поверх тестовой картинки экрана. Хотя на проги для эмуляции натыкался...

Immortal
Offline
Зарегистрирован: 28.12.2013

Вот еще проект: ATMEGA328 DIY USB Line Power Meter Stick

Схему можно упростить забрав усилитель тока и используя встроенную опору

yul-i-an
yul-i-an аватар
Offline
Зарегистрирован: 10.12.2012

Практиковал я оверсемплинг, очень даже неплохо получаеться. http://arduino.ru/forum/programmirovanie/povyshenie-razresheniya-atsp-s-...

dimax
dimax аватар
Онлайн
Зарегистрирован: 25.12.2013

Immortal пишет:

Вот еще проект: ATMEGA328 DIY USB Line Power Meter Stick

Схему можно упростить забрав усилитель тока и используя встроенную опору

Там всё продумано, без усиления при шунте 0,01Ом  и опоре 1,1в полная шкала будет 110 ампер. 1 LSB будет 0,1А. Без усиления можно измерять только микроамперы, увеличив сопротивление шунта до сотни ом.

Immortal
Offline
Зарегистрирован: 28.12.2013

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

dimax
dimax аватар
Онлайн
Зарегистрирован: 25.12.2013

Если увеличить сопр. шунта, то упадёт напряжение на выходе. При сопротивлении шунта 1 ом и токе 1а на выходе будет уже 4 вольта вместо пяти. Какие-то устройства могу отказаться работать. Зарядки начнут заряжать не за час, а за два.. И это не считая потерь в проводах.

Vinegret
Offline
Зарегистрирован: 25.01.2015

Приветствую, аццы. А где можно посмотреть электрическую схему сего ваттметра?

Bazar Dabynov
Offline
Зарегистрирован: 15.02.2015

Такое устроиство сколько стоить, интересно ? Если я закажу у Вас?. 

Bazar Dabynov
Offline
Зарегистрирован: 15.02.2015

Мне нужен ватметр . Хочу заказать.

Характеристики следующие:
Диапозон измеряемых напряжения: 0 до 25 В;
Диапазон измеряемых токов: 0 до 9 А;
Погрешность: +/- 0.01 В и +/- 0.005А.
Если есть дайте мне знать. и цену тоже . 
Заранее спасибо!!!
trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Заказывайте:  http://www.ebay.com/itm/DC-90V-30A-Amp-Volt-Combo-Meter-Battery-Capacity-Power-Charge-Discharge-Monitor-/151573667969

Только не путайте погрешность и разрешение......

Bazar Dabynov
Offline
Зарегистрирован: 15.02.2015

Spasibo Trembo !!!!

Bazar Dabynov
Offline
Зарегистрирован: 15.02.2015

я нашел ватметр и стоит он примерно $ 12. Высылаю сылку: 

http://www.ebay.com/sch/i.html?_odkw=wattmeter+for&_osacat=92074&_from=R...

aleks_22
Offline
Зарегистрирован: 18.04.2016

Поделитесь проектом в протеусе пожалуйста!