- Потребни материјали
- Кружни дијаграм
- Мерна јединица
- Јединица за рачунање и приказ
- Програмирање Ардуина
- Како мерити са више тачности?
- Рад и тестирање
Као електронички инжењери, увек зависимо од бројила / инструмената за мерење и анализу рада кола. Почевши од једноставног мултиметра до сложених анализатора квалитета енергије или ОДС-а, све има своје јединствене апликације. Већина ових бројила су лако доступна и могу се купити на основу параметара који се мере и њихове тачности. Али понекад бисмо могли доћи у ситуацију да морамо сами да изградимо своја бројила. Рецимо да на пример радите на соларном ПВ пројекту и желели бисте да израчунате потрошњу енергије вашег оптерећења, у таквим сценаријима можемо да изградимо сопствени ватметар користећи једноставну платформу микроконтролера као што је Ардуино.
Изградња сопствених бројила не само да смањује трошкове тестирања, већ нам пружа и простор да олакшамо процес тестирања. Слично томе, ватметар изграђен помоћу Ардуина може се лако прилагодити за праћење резултата на серијском монитору и исцртавање графа на серијски плотер или додавање СД картице за аутоматско бележење вредности напона, струје и снаге у унапред дефинисаним интервалима. Звучи занимљиво зар не !? Па кренимо…
Потребни материјали
- Ардуино Нано
- ЛМ358 Оп
- 7805 Регулатор напона
- ЛЦД екран од 16 * 2
- 0,22 охм отпорник на 2В ват
- 10к лонац за тример
- Отпорници 10к, 20к, 2,2к, 1к
- Кондензатори 0.1уФ
- Пробно оптерећење
- Перф боард или бреадбоард
- Комплет за лемљење (опционално)
Кружни дијаграм
Комплетна шема кола пројекта ардуино ватметра дата је у наставку.
Ради лакшег разумевања, коло ардуино ватметра подељено је у две целине. Горњи део кола је мерна јединица, а доњи део кола је јединица за рачунање и приказ. За људе који су нови у овој врсти кола следили су ознаке. Пример + 5В је налепница, што значи да све пинове на које је налепница повезана треба сматрати онако како су повезани. Ознаке се обично користе како би шема кола изгледала уредно.
Коло је дизајнирано да се уклопи у системе који раде између 0-24В са тренутним опсегом 0-1А имајући у виду спецификацију соларне ПВ. Али домет можете лако проширити након што схватите рад кола. Основни принцип иза кола је мерење напона на оптерећењу и струје кроз њега да би се израчунала снага коју он троши. Све измерене вредности биће приказане на алфанумеричком ЛЦД екрану 16 * 2.
Даље испод поделимо коло на мале сегменте како бисмо могли да добијемо јасну слику о томе како је склоп увучен да ради.
Мерна јединица
Мерна јединица се састоји од потенцијалног разделника који нам помаже да меримо напон, а затворени отпорник са неинвертујућим опционим појачалом користи се за мерење струје кроз коло. Потенцијални делилац из горњег кола приказан је доле
Овде улазни напон представља Вцц, као што је раније речено, дизајнирамо коло за опсег напона од 0В до 24В. Али микроконтролер попут Ардуина не може да измери тако високе вредности напона; може мерити напон само од 0-5В. Дакле, морамо мапирати (претворити) распон напона од 0-24В до 0-5В. То се лако може урадити коришћењем потенцијалног преградног кола, као што је приказано доле. Отпорник 10к и 2.2к заједно чине потенцијални дјелитељски круг. Излазни напон разделника потенцијала може се израчунати помоћу следећих формула. Исте ће се користити за одређивање вредности ваших отпорника, помоћу нашег мрежног калкулатора можете израчунати вредност отпорника ако поново дизајнирате коло.
Воут = (Вин × Р2) / (Р1 + Р2)
Мапирано 0-5В може се добити из средњег дела који је означен као Напон. Овај мапирани напон се затим може напајати на аналогни пин Ардуино касније.
Даље морамо мерити струју кроз ОПТЕРЕЋЕЊЕ. Као што знамо да микроконтролери могу читати само аналогни напон, тако да морамо некако претворити вредност струје у напон. То се може учинити једноставним додавањем отпорника (ранжирни отпорник) на путању која ће према Охмовом закону спустити вредност напона на њему пропорционална струји која кроз њега тече. Вредност овог пада напона биће врло мања, па за појачавање користимо оптичко појачало. Коло за исто је приказано испод
Овде је вредност ранжирног отпорника (СР1) 0,22 Охма. Као што је раније речено, дизајнирамо коло за 0-1А, тако да на основу Омсовог закона можемо израчунати пад напона на овом отпорнику који ће бити око 0,2В када кроз терет пролази максимална струја од 1А. Овај напон је врло мали за очитавање микроконтролера, користимо Оп-појачало у режиму неинвертујућег појачала да бисмо повећали напон са 0,2 В на виши ниво за читање Ардуина.
Оп-појачало у неинвертујућем режиму је приказано горе. Појачало је дизајнирано да има појачање од 21, тако да је 0,2 * 21 = 4,2В. Формуле за израчунавање појачања Оп-појачала дате су у наставку, овај калкулатор појачања на мрежи можете да користите и да бисте добили вредност вашег отпора ако поново дизајнирате коло.
Добитак = Воут / Вин = 1 + (Рф / Рин)
Овде је у нашем случају вредност Рф 20к, а вредност Рин 1к, што нам даје гианску вредност 21. Појачани напон из оп-амп се затим даје РЦ филтеру са отпорником 1к и кондензатором 0.1уФ до филтрирајте било који шум који је повезан. Напокон се напон напаја на аналогни пин Ардуино.
Последњи део који је остао у мерној јединици је део регулатора напона. Будући да ћемо дати променљиви улазни напон, потребан нам је регулисани + 5 В за рад Ардуина и Оп-појачала. Овај регулисани напон обезбедиће регулатор напона 7805. На излазу се додаје кондензатор за филтрирање буке.
Јединица за рачунање и приказ
У мерној јединици дизајнирали смо коло за претварање напонских и струјних параметара у 0-5В који се могу напајати на аналогне пинове Ардуино. Сада ћемо у овом делу кола повезати ове напонске сигнале са Ардуином и такође повезати алфанумерички приказ 16 × 2 са Ардуином како бисмо могли да видимо резултате. Коло за исто је приказано испод
Као што видите, напонски пин је повезан на аналогни пин А3, а тренутни пин на аналогни пин А4. ЛЦД се напаја са + 5В из 7805 и повезан је на дигиталне пинове Ардуина да би радио у 4-битном режиму. Такође смо користили потенциометар (10к) повезан на Цон пин да бисмо разликовали контраст ЛЦД-а.
Програмирање Ардуина
Сад кад смо добро разумели хардвер, отворимо Ардуино и започнимо са програмирањем. Сврха кода је очитавање аналогног напона на пин А3 и А4, израчунавање вредности напона, струје и снаге и коначно га приказати на ЛЦД екрану. Комплетни програм који ће урадити исто дат је на крају странице који се као такав може користити за хардвер о коме је раније било речи. Даље је код подељен на мале исечке и објашњен.
Као и сви програми са којима започињемо, дефинишемо игле које смо користили. У нашем пројекту, пин А3 и А4 користе се за мерење напона и струје, а дигитални пинови 3,4,8,9,10 и 11 користе се за повезивање ЛЦД-а са Ардуином
инт Реад_Волтаге = А3; инт Реад_Цуррент = А4; цонст инт рс = 3, ен = 4, д4 = 8, д5 = 9, д6 = 10, д7 = 11; // Наведите број пина за ЛЦД везу ЛикуидЦристал лцд (рс, ен, д4, д5, д6, д7);
Такође смо укључили заглавље под називом течни кристал како бисмо повезали ЛЦД са Ардуином. Затим унутар функције подешавања иницијализујемо ЛЦД екран и приказујемо уводни текст као „Ардуино Ваттметер“ и чекамо две секунде пре него што га обришемо. Код за исти је приказан у наставку.
воид сетуп () { лцд.бегин (16, 2); // Инитиалисе 16 * 2 ЛЦД лцд.принт ("Ардуино Ваттметер"); // Увод у линију поруке 1 лцд.сетЦурсор (0, 1); лцд.принт ("- Цирцуитдигест"); // Увод у поруци реда за одлагање 2 (2000); лцд.цлеар (); }
Унутар функције главне петље користимо аналогну функцију читања за очитавање вредности напона са пина А3 и А4. Као што знамо Ардуино АДЦ излазну вредност од 0-1203, јер има 10-битни АДЦ. Затим се ова вредност мора претворити у 0-5В, што се може множити са (5/1023). Затим смо раније у хардверу мапирали стварну вредност напона од 0-24В до 0-5В и стварну вредност струје од 0-1А до 0-5В. Дакле, сада морамо да користимо мултипликатор да вратимо ове вредности на стварну вредност. То се може учинити множењем са множитељем. Вредност множитеља може се израчунати теоретски користећи формуле дате у одељку о хардверу или ако имате познати скуп вредности напона и струје можете га практично израчунати.Следио сам последњу опцију јер је тачнија у стварном времену. Дакле, овде је вредност множитеља 6,46 и 0,239. Отуда код изгледа као доле
флоат Волтаге_Валуе = аналогРеад (Реад_Волтаге); флоат Цуррент_Валуе = аналогРеад (Реад_Цуррент); Волтаге_Валуе = Волтаге_Валуе * (5.0 / 1023.0) * 6.46; Цуррент_Валуе = Цуррент_Валуе * (5.0 / 1023.0) * 0.239;
Како мерити са више тачности?
Горњи начин израчунавања вредности стварног напона и струје функционисаће сасвим у реду. Али пати од једног недостатка, то јест, однос измереног напона АДЦ и стварног напона неће бити линеаран, па један мултипликатор неће дати врло тачне резултате, исто што се односи и на струју.
Тако да бисмо побољшали тачност можемо да нацртамо скуп измерених вредности АДЦ са стварним вредностима користећи вредности познатог скупа вредности, а затим користимо те податке за цртање графа и извођење једначине множитеља применом методе линеарне регресије. Можете упутити Ардуино дБ метар у којем сам користио сличан метод.
Коначно, након што израчунамо вредност стварног напона и стварне струје кроз оптерећење, можемо израчунати снагу користећи формуле (П = В * И). Затим приказујемо све три вредности на ЛЦД дисплеју помоћу доњег кода.
лцд.сетЦурсор (0, 0); лцд.принт ("В ="); лцд.принт (Волтаге_Валуе); лцд.принт (""); лцд.принт ("И ="); лцд.принт (Цуррент_Валуе); плутајућа Повер_Валуе = Волтаге_Валуе * Цуррент_Валуе; лцд.сетЦурсор (0, 1); лцд.принт ("Снага ="); лцд.принт (Повер_Валуе);
Рад и тестирање
Ради водича користио сам перф плочу за лемљење свих компонената као што је приказано у кругу. Користио сам вијчани прикључак Пхоеник за повезивање терета и нормални прикључак за једносмерну струју за повезивање извора напајања. Ардуино Нано плоча и ЛЦД монтирани су на женски Бергстик тако да се могу поново користити ако је потребно касније.
Након што припремите хардвер, отпремите Ардуино код на своју Нано плочу. Подесите тример како бисте контролисали ниво контраста ЛЦД-а док не видите јасан уводни текст. Да бисте тестирали плочу, прикључите терет на конектор завртња и извор на прикључак цеви. Да би овај пројекат могао радити, напон извора требао би бити већи од 6В, јер је за рад Ардуина потребно + 5В. АКО све функционише у реду, у првом реду ЛЦД-а требали бисте видети вредност напона на оптерећењу и струју кроз њега и израчунату снагу приказану у другом реду ЛЦД-а, као што је приказано испод.
Забавни део изградње нечега лежи у његовом тестирању да бисте проверили колико ће радити исправно. Да бих то урадио, користио сам 12В аутомобилске показиваче као оптерећење и РПС као извор. Будући да сам РПС може да мери и приказује вредност струје и напона, биће нам лако да унакрсно проверимо тачност и перформансе нашег кола. И да, такође сам користио свој РПС за калибрацију вредности множитеља тако да се приближим тачној вредности.
Комплетан рад можете пронаћи на видео снимку датом на крају ове странице. Надам се да сте разумели склоп и програм и научили нешто корисно. Ако имате било каквих проблема с постизањем овог резултата, објавите то у одељку за коментаре испод или пишите на нашим форумима за више техничке помоћи.
Овај пројекат Ваттметра заснован на Ардуину има много више надоградњи које се могу додати како би се повећале перформансе аутоматског евидентирања података, цртања графикона, обавештавања о напону или тренутним ситуацијама итд. Зато будите знатижељни и јавите ми за шта бисте ово користили.