Съдържание:
- Консумативи
- Стъпка 1: Събиране на необходимите компоненти
- Стъпка 2: Принципът на работа
- Стъпка 3: Обединяване на частите
- Стъпка 4: Добавяне на части за мрежата с напрежение
- Стъпка 5: Добавяне на части за мрежата Current Sense
- Стъпка 6: Завършване на останалите връзки и завършване на изграждането
- Стъпка 7: Свързване на модула с Arduino
- Стъпка 8: Код на проекта и електрическа схема
- Стъпка 9: Урок за видео
Видео: Модул за измерване на мощност за Arduino: 9 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:51
Здравейте на всички, надявам се да се справяте отлично! В тази инструкция ще ви покажа как направих този модул за измерване на мощност/ ватметър за използване с дъска Arduino. Този измервателен уред може да изчисли консумираната мощност от и DC натоварване. Заедно със захранването, този модул може да ни даде и точни показания на напрежение и ток. Той може лесно да измерва ниско напрежение (около 2V) и ниски токове, до 50 mA с грешка не повече от 20mA. Точността зависи от избора на компоненти въз основа на вашите изисквания.
Консумативи
- IC LM358 двоен OP-AMP
- 8 -пинова IC база
- Шунтиращ резистор (8,6 милиома в моя случай)
- Резистори: 100K, 10K, 2.2K, 1K (1/2 вата)
- Кондензатори: 3 * 0,1uF керамични кондензатори
- Veroboard или нулева дъска
- Винтови клеми
- Поялник и спойка
- Arduino Uno или друга съвместима платка
- OLED дисплей
- Свързване на жични кабели
Стъпка 1: Събиране на необходимите компоненти
Този проект използва много прости и лесни за получаване компоненти: те включват резистори, керамични кондензатори, операционен усилвател и вероборд за прототипиране.
Изборът и стойността на компонентите зависят от вида на приложението и обхвата на мощност, който искате да измерите.
Стъпка 2: Принципът на работа
Работата на захранващия модул се основава на две концепции на теорията на веригата и основното електричество: Концепцията на делителя на напрежение за измерване на входното напрежение и Закона на Ом за изчисляване на тока, протичащ през веригата. Използваме шунтиращ резистор, за да създадем много малък спад на напрежението върху него. Този спад на напрежението е пропорционален на количеството ток, протичащ през шунта. Това малко напрежение, когато се усилва от операционен усилвател, може да се използва като вход към микроконтролер, който може да бъде програмиран да ни даде текущата стойност. Операционният усилвател се използва като неинвертиращ усилвател, където усилването се определя от стойностите на обратната връзка резистор R2 и R1. Използването на неинвертираща конфигурация ни позволява да имаме обща основа като измервателна отправна точка. За тази цел токът се измерва от долната страна на веригата. За моето приложение избрах печалба от 46, като използвах 100K и 2.2K резистор като мрежа за обратна връзка. Измерването на напрежението се извършва с помощта на верига с делител на напрежение, която разделя входното напрежение пропорционално на използваната резисторна мрежа.
Както текущата стойност от OP-усилвателя, така и стойността на напрежението от разделителната мрежа могат да се подават в два аналогови входа на arduino, така че да можем да изчислим консумираната мощност от товар.
Стъпка 3: Обединяване на частите
Нека започнем изграждането на нашия захранващ модул, като решим позицията на винтовите клеми за входно и изходно свързване. След маркиране на подходящите позиции, запояваме винтовите клеми и шунтиращия резистор на място.
Стъпка 4: Добавяне на части за мрежата с напрежение
За измерване на входното напрежение използвам мрежа от делители на напрежение от 10K и 1K. Добавих и 0,1 uF кондензатор към 1K резистора, за да изгладя напреженията.
Стъпка 5: Добавяне на части за мрежата Current Sense
Токът се измерва чрез изчисляване и усилване на спада на напрежението върху шунтиращия резистор с предварително дефинирано усилване, зададено от резисторната мрежа. Използва се режим на неинвертиращо усилване. Желателно е следите от спойката да са малки, за да се избегне нежелан спад на напрежението.
Стъпка 6: Завършване на останалите връзки и завършване на изграждането
Когато мрежите за напрежение и ток са свързани и запоени, е време да запоявате щифтовете на мъжкия хедър и да направите необходимите връзки на изходи за захранване и сигнал. Модулът ще се захранва от стандартното работно напрежение от 5 волта, което лесно можем да получим от платка arduino. Двата изхода за измерване на напрежението ще бъдат свързани към аналоговите входове на arduino.
Стъпка 7: Свързване на модула с Arduino
Тъй като модулът е завършен, най -накрая е време да го свържете с Arduino и да го стартирате. За да видя стойностите, използвах OLED дисплей, който използва I2C протокол за комуникация с arduino. Показаните на екрана параметри са напрежение, ток и мощност.
Стъпка 8: Код на проекта и електрическа схема
В тази стъпка съм приложил схемата на веригата и кода на захранващия модул (преди това бях прикачил.ino и.txt файла, съдържащ кода, но някаква грешка на сървъра причини кода да бъде недостъпен или нечетлив за потребителите, затова написах целия код в тази стъпка. Знам, че това не е добър начин за споделяне на кода:(). Чувствайте се свободни да промените този код според вашите изисквания. Надявам се този проект да ви е бил полезен. Моля, споделете отзивите си в коментарите. Наздраве!
#включва
#включва
#включва
#включва
#define OLED_RESET 4 Adafruit_SSD1306 дисплей (OLED_RESET);
поплавък val = 0;
поплавъчен ток = 0;
плаващо напрежение = 0;
плаваща мощност = 0;
void setup () {
pinMode (A0, INPUT);
pinMode (A1, INPUT);
display.begin (SSD1306_SWITCHCAPVCC, 0x3C); // инициализираме с I2C addr 0x3C (за 128x32) display.display ();
забавяне (2000);
// Изчистване на буфера.
display.clearDisplay ();
display.setTextSize (1);
display.setCursor (0, 0);
display.setTextColor (БЯЛ);
Serial.begin (9600); // За да видите стойностите на серийния монитор
}
void loop () {
// вземане на средната стойност за стабилни показания
for (int i = 0; i <20; i ++) {
ток = ток + analogRead (A0);
напрежение = напрежение + аналогово четене (A1); }
ток = (ток/20); ток = ток * 0,0123 * 5,0; // калибрираща стойност, която се променя според използваните компоненти
напрежение = (напрежение/20); напрежение = напрежение * 0,0508 * 5,0; // калибрираща стойност, която се променя според използваните компоненти
мощност = напрежение*ток;
// отпечатване на стойностите на серийния монитор
Serial.print (напрежение);
Serial.print ("");
Serial.print (текущ);
Serial.print ("");
Serial.println (мощност);
// отпечатване на стойностите на OLED дисплея
display.setCursor (0, 0);
display.print ("Напрежение:");
display.print (напрежение);
display.println ("V");
display.setCursor (0, 10);
display.print ("Текущ:");
display.print (текущ);
display.println ("A");
display.setCursor (0, 20);
display.print ("Захранване:");
display.print (захранване);
display.println ("W");
display.display ();
забавяне (500); // честота на опресняване, зададена от закъснението
display.clearDisplay ();
}
Препоръчано:
Измерване на времето (часовник за измерване на лента): 5 стъпки (със снимки)
Time Measure (Tape Measure Clock): За този проект ние (Alex Fiel & Anna Lynton) взехме ежедневен измервателен инструмент и го превърнахме в часовник! Първоначалният план беше да се моторизира съществуваща рулетка. Като направихме това, решихме, че ще бъде по -лесно да създадем своя собствена черупка, с която да работим
Diy Dc Модул за измерване на мощност за Arduino: 8 стъпки
Diy Dc модул за измерване на мощност за Arduino: В този проект ще видим как да направим модул за измерване на постоянен ток с помощта на Arduino
Модул за измерване на RMS на Arduino: 3 стъпки
Arduino RMS измервателен модул: Това е малък Arduino модул за измерване на TrueRMS напрежение. Измервателният уред показва средноквадратичното напрежение в mV с цифри и скала за аналогово ниво. Модулът е предназначен като "вграден" модул за наблюдение на сигнал
Модул за захранване на IoT: Добавяне на функция за измерване на мощност на IoT към моя контролер за слънчево зареждане: 19 стъпки (със снимки)
Модул за захранване на IoT: Добавяне на функция за измерване на мощност на IoT към моя контролер за слънчево зареждане: Здравейте всички, надявам се, че всички сте страхотни! В тази инструкция ще ви покажа как направих модул за измерване на мощност на IoT, който изчислява количеството енергия, генерирано от моите слънчеви панели, което се използва от моя слънчев контролер за зареждане t
Проектиране на PDB с висока мощност (разпределителна платка за мощност) за Pixhawk: 5 стъпки
Проектиране на PDB с висока мощност (Power Distribution Board) за Pixhawk: PCB за захранване на всички! В момента повечето материали, от които се нуждаете, за да създадете дрон, са евтини в интернет, така че идеята за създаване на самостоятелно разработена печатна платка изобщо не си заслужава, с изключение на няколко случая, когато искате да направите странно и