Мазмұны:

Көп арналы Wifi кернеуі мен ток өлшегіші: 11 қадам (суреттермен)
Көп арналы Wifi кернеуі мен ток өлшегіші: 11 қадам (суреттермен)

Бейне: Көп арналы Wifi кернеуі мен ток өлшегіші: 11 қадам (суреттермен)

Бейне: Көп арналы Wifi кернеуі мен ток өлшегіші: 11 қадам (суреттермен)
Бейне: Использование Juntek VAT 4300 Wireless 300A Многофункциональный измеритель тока Current Power 2024, Шілде
Anonim
Көп арналы Wifi кернеуі мен ток өлшегіші
Көп арналы Wifi кернеуі мен ток өлшегіші

Нанға отырғызу кезінде тізбектің әр түрлі бөліктерін бірден бақылау қажет.

Мультиметрлік зондтарды бір жерден екінші жерге жабыстырып ауыртпау үшін мен көп каналды кернеу мен ток есептегішін жасағым келді.

Adafruit компаниясының Ina260 тақтасы бұл үшін өте тиімді және тиімді әдісті ұсынады. Онда интеграцияланған I2C көпірі бар өте дәл кернеу мен ток есептегіші бар (олардың 3 -ін біріктіргенде көп түйреуіштерді үнемдейді!).

Тек дисплей жетіспеді. Тақталарды компьютерге/мобильді экранда өлшенген элементтерді жеткізу үшін веб -серверді оңай тасымалдай алатын ESP32 әзірлеу тақтасына қосу туралы шешім қабылданды.

Жабдықтар

3 x Ina260 adafruit тақтасы

Ұзын түйреуіштері бар 3 х тақырыптық түйреуіш

Мин 6 секіргіш сымдар

1 x ESP32 Wrover-B (немесе I2C қолдауымен кез келген басқа Wifi тақтасы)

2 x 19 істікшелі бастық (бар болса)

1 x ПХД немесе жетілдірілген тақта

1 x 3,3 В қуат көзі

1 -қадам: INA үш тақтасын дәнекерлеңіз

INA үш тақтасын дәнекерлеңіз
INA үш тақтасын дәнекерлеңіз

Бірінші қадам - үш INA260 тақтасын жинау.

Adafruit веб -сайтында өте жақсы нұсқаулықты табуға болады. Adafruit құрастыру нұсқауларын орындаңыз.

Оларды бір -бірінің үстіне қою үшін жеткізілген түйреуіштерді емес, ұзын түйреуіштерді пайдаланыңыз!

2 -қадам: Үш түрлі I2C адрестерін конфигурациялау

Үш түрлі I2C адрестерін конфигурациялаңыз
Үш түрлі I2C адрестерін конфигурациялаңыз
Үш түрлі I2C адрестерін конфигурациялаңыз
Үш түрлі I2C адрестерін конфигурациялаңыз
Үш түрлі I2C адрестерін конфигурациялаңыз
Үш түрлі I2C адрестерін конфигурациялаңыз
Үш түрлі I2C адрестерін конфигурациялаңыз
Үш түрлі I2C адрестерін конфигурациялаңыз

I2C-қысқа арақашықтықта төмен жылдамдықты құрылғыларды қосуға арналған екі сымды интерфейске арналған сериялық хаттама. 127 құлға дейін қосуға болады. Бір автобуста әрбір құрылғы бірегей I2C адресімен анықталуы керек. Құрылғының I2C адресі көбінесе құрылғының чипіне қатты қосылады. Бір автобуста бірдей құрылғыларды қосу үшін өндіруші түйреуіштердің конфигурациясын дәнекерлеу арқылы I2C адресін өзгерту мүмкіндігін жиі қалдырады.

Бұл INA260 үш тақтасына да қатысты. Құрылғыда қажетті адресті орнату үшін GND, VS, SCL немесе SDA қосылатын A0 және A1 екі адрестік түйреуіштері бар. INA260 микросхемасының мəліметтер кестесінде texas құралдарынан 16 ықтимал мекенжайлардың әрқайсысы үшін түйіспелі қосылыстар тізімін табуға болады.

Adafruit тақтасы оны 4 тақтаға шектейді, олар A0 және/немесе A1 -ді VS -ге тартуға болатын екі жастықшаны шығарады. INA260 тақтасының әдепкі мекенжайы - 0x40.

Сіз бұл қадамды басқа екі тақтаға әртүрлі мекенжайлар тағайындау арқылы аяқтайсыз:

Екінші тақтаның A0 тақтасын дәнекерлеу арқылы сіз оның мекенжайын: 0x41 (немесе 1000001 БСН) орнатасыз.

Үшінші тақтаның A1 тақтасын дәнекерлеу арқылы сіз адресті тағайындайсыз: 0x44 (немесе 1000100 БСН)

3 -қадам: Ina тақталарын ESP32 -ге қосыңыз

Ina тақталарын ESP32 -ге қосыңыз
Ina тақталарын ESP32 -ге қосыңыз

Енді біз INA тақталарының әрқайсысына әр түрлі I2C адрестерін тағайындадық, оларды ESP32 тақтасына қосу уақыты келді!

Жоғарыдағы суретке сәйкес, қосылыңыз

1) VCC түйреуішін 3.3В істікшеге

2) GND түйреуішін GND түйреуішіне

3) SDA түйрегішін GPIO PIN 21 -ге

4) SCL түйрегішін GPIO PIN 22 -ге

Мен қосылыстарды жасау үшін ПХД дизайнын қолдандым, себебі бұл үлкен жобаның бөлігі (токтың реттелуі шектеулі WiFi реттелетін кернеу көзі - бұл үшін де нұсқаулық болады деп үміттенемін).

Сіз қосылу үшін кез келген басқа әдісті қолдана аласыз, бұл сіз дәнекерлеуге арналған тақта немесе нан тақтасы болуы мүмкін. Олардың екеуі де жақсы жұмыс істейді.

4 -қадам: ESP32 тақтасын Arduino IDE -ге орнатыңыз

ESP32 тақтасын Arduino IDE -ге орнатыңыз
ESP32 тақтасын Arduino IDE -ге орнатыңыз

Енді біз тақталарды бір -бірімен байланыстырдық, қосылымды тексеретін уақыт келді.

Біз мұны Ina тақталарының I2C адрестерін жинау арқылы жасаймыз.

ESP32 тақтасы Arduino IDE -мен тамаша жұмыс істейді.

Ендеше, тақта менеджерінің көмегімен ESP32 тақтасын Arduino -да орнатамыз.

5 -қадам: I2C сканері арқылы ESP32 қосылымын тексеріңіз

I2C сканері арқылы Ina -дан ESP32 қосылымын тексеріңіз
I2C сканері арқылы Ina -дан ESP32 қосылымын тексеріңіз

Біз ESP32 мен Ina260 тақталары арасындағы байланысты қамтамасыз ету үшін қарапайым I2C мекен -жай сканерін қолданамыз.

I2C мекен -жай сканерінің кодын бос Arduino жобасына көшіру мүмкін.

Код Arduino cc веб -сайтынан алынды:

// -------------------------------------- // i2c_scanner // // 1 нұсқа/ / Бұл бағдарламаны (немесе оған ұқсайтын кодты) // көптеген жерден табуға болады. // Мысалы, Arduino.cc форумында. // Түпнұсқа авторы белгісіз. // 2 -нұсқа, 2012 ж. Маусым, Arduino 1.0.1 көмегімен // Arduino.cc қолданушысы Krodal мүмкіндігінше қарапайым етіп бейімделген // 3 -нұсқа, 26 ақпан 2013 ж./ V3 by louarnold // 4 -нұсқа, 3 -наурыз, 2013 ж., Arduino 1.0.3 пайдалану // Arduino.cc қолданушысы Krodal. // Лоарнольд өзгертулері жойылды. // Сканерлеу мекенжайлары 0… 127 -ден 1… 119 -ға өзгертілді, // Ник Гаммонның i2c сканеріне сәйкес // https://www.gammon.com.au/forum/?id=10896 // 5 -нұсқа, наурыз 28, 2013 // 4 -нұсқа ретінде, бірақ адрес 127 -ге дейін сканерленеді. // Сенсор 120 мекенжайын қолданатын сияқты. // 6 -нұсқа, 27 -қараша, 2015. // Леонардоның сериялық байланысын күту қосылды. // // // Бұл эскиз стандартты 7 биттік адрестерді тексереді // Биттік адресі жоғары құрылғылар дұрыс көрінбеуі мүмкін. // #include void setup () {Wire.begin (); Serial.begin (9600); while (! сериялық); // Леонардо: сериялық мониторды күтіңіз Serial.println («\ nI2C сканері»); } void loop () {байт қатесі, адрес; int nDevices; Serial.println («Сканерленуде…»); nDevices = 0; үшін (адрес = 1; адрес <127; адрес ++) {// i2c_scanner // құрылғының адресті мойындағанын білу үшін // Write.endTransmisstion қайтару мәнін пайдаланады. Wire.beginTransmission (мекенжай); қате = Wire.endTransmission (); if (error == 0) {Serial.print («0x мекенжайында I2C құрылғысы табылған»); if (адрес <16) Serial.print («0»); Serial.print (мекен -жай, HEX); Serial.println («!»); nDevices ++; } if if (error == 4) {Serial.print («0x мекенжайындағы белгісіз қате»); if (адрес <16) Serial.print («0»); Serial.println (мекен -жай, HEX); }} if (nDevices == 0) Serial.println («I2C құрылғылары табылмады / n»); else Serial.println («жасалды / n»); кешіктіру (5000); // келесі қарап шығуды 5 секунд күтіңіз}

6 -қадам: HTML веб -сервер қалтасын құру

HTML Webserver қалтасын құру
HTML Webserver қалтасын құру

ESP32 веб -серверді іске қосуға мүмкіндік береді. Ол сонымен қатар кейбір веб -беттерді сақтау үшін өте үлкен жедел жадымен қамтамасыз етеді. (Ол веб -беттің файлдарын автоматты түрде қысады).

Arduino IDE құрылған веб -беттерді ESP32 жедел жадына тікелей жүктеу функциясын ұсынады.

Мұны істеу үшін сізге Arduino жобасының қалтасының астында «деректер» қалтасын жасау қажет. Менің жағдайда бұл / Arduino / esp32_Power_supply_v1_implemented / data.

Қалтаны дәл «деректер» деп атау маңызды, себебі Arduino қалта атауы веб -сайт файлдарын ESP -ке жүктеу кезінде іздейді.

7 -қадам: Power Monitor веб -бетін жасаңыз

HMTL - бұл веб -шолғышқа мәтінді енгізуге мүмкіндік беретін тіл. HTML файлы htm (l) кеңейтімі астында сақталады. Веб -бетті пішімдеу әдетте бөлек файлға орналастырылады (мысалы, CSS файлы). Веб -бетте ұсынылатын бағдарлама функциясы әдетте басқа файлға орналастырылады (мысалы, javascript үшін js файлы).

HTML құжатыма мәтінді, форматтауды және Javascript -ті бір файлға енгіздім. Бұл веб -бетті жасаудың жақсы мысалы емес, бірақ ол мақсаттарға қызмет етеді. Мен HTML құжатын 'Index.htm' деп атадым.

Екінші файл менің деректер қалтасына кіреді, яғни. PicoGraph.js. PicoGraph кітапханасын RainingComputers -тен Вишну Шанкар В қамтамасыз етеді және веб -бетке графиктерді ұсынудың өте қарапайым, бірақ тиімді және икемді әдісіне мүмкіндік береді. Мен өз мақсатыма жету үшін кодты сәл өзгерттім.

Сіз HTML веб -бетінде менің ПХД тақтасындағы кернеуді бақылау коды бар екенін байқайсыз. Кернеудің берілу коды 5 енгізу -шығару түйреуіштерінің кернеу деңгейін бақылайды. Сіз оны болдырмау үшін кодты өзгерте аласыз немесе әсер етпесе, оны қалдыра аласыз.

Html коды бұл қадамға txt файлы ретінде қосылады (нұсқаулықтар htm кодын жүктеуге мүмкіндік бермейді).

HTML кодын пайдалану үшін сіз оны мәтіндік редакторға көшіріп, қойыңыз (Notepad ++ қолданамын) және оны «Деректер» қалтасында «Index.htm» ретінде сақтаңыз. Сіз picograph.txt файлы үшін солай жасайсыз, бірақ оның атын picograph.js деп өзгертіңіз

HTML файлына қатысты:

SndUpdate функциясы ESP -тен веб -бетке хабарларды кері және кері жіберу үшін қолданылады.

ESP -ден жіберілетін хабарламалар электрмен жабдықтау функциясын орындайды және бұл нұсқаулыққа сәйкес келмейді. ESP хабарламалары Ina260 тақтасының өлшемдеріне қызмет етеді.

var Msg = JSON.parse (xh.responseText); PG1_yrand0 = Msg. PG1_yrand0; PG2_yrand0 = Msg. PG2_yrand0; PG3_yrand0 = Msg. PG3_yrand0; PG4_yrand0 = Msg. PG4_yrand0; PG5_yrand0 = Msg. PG5_yrand0; PG6_yrand0 = Msg. PG6_yrand0;

Жоғарыда келтірілген код ESP32 тақтасынан 6 нөмірді оқиды, яғни. кернеуді өлшеу, бірінші тақтадан ток өлшеу, содан кейін екіншісінен екі өлшеу және т.б.

Графиктер икемді контейнерлер деп аталады, бұл веб-беттің икемді өлшемін өзгертуге мүмкіндік береді.

.flex-контейнер {дисплей: икемділік; өң түсі: кадет көк; икемді орау: орау; }.flex-container> div {background-color: #f1f1f1; маржа: 10 пиксель; толтыру: 20 пиксель; қаріп өлшемі: 20 пиксель; font-family: «Жеті сегмент»; қаріптің салмағы: қалың; }

Иілгіш контейнерлердің әрқайсысының мазмұны ендірілген графиктерді қоса, келесі түрде жасалады.

(жойылған жерді ескеріңіз)

div label for = «PG1_scale» Scale:/label input name = «PG1_scale» value = «10» brbr!-Thr graph үшін кенеп-кенеп стилі = «биіктігі: 100px; жиек: 2px қатты #000000; фон түсі: #fafafa; « /кенеп

!-аңыздарға/белгілерге арналған div-

div /div div /div /div

HTML файлындағы маңызды соңғы бөлім сандарды көрсету үшін PicoGraph кітапханасымен жұмыс істейді:

var PG1_demograph = createGraph («PG1_graphDemo», [«Ch1»], «V», «PG1_graphLabels», 20, 11, false, false, 11, «#e52b50»); var PG2_demograph = createGraph («PG2_graphDemo», [«Ch1»], «mA», «PG2_graphLabels», 20, 11, false, false, 11, «#e52b50»); var PG3_demograph = createGraph («PG3_graphDemo», [«Ch2»], «V», «PG3_graphLabels», 20, 11, false, false, 11, «#008000»); var PG4_demograph = createGraph («PG4_graphDemo», [«Ch2»], «mA», «PG4_graphLabels», 20, 11, false, false, 11, «#008000»); // var PG5_demograph = createGraph («PG5_graphDemo», [«Ch3»], «V», «PG5_graphLabels», 20, 11, false, false, 11, «#0000ff»); var PG6_demograph = createGraph («PG6_graphDemo», [«Ch3»], «mA», «PG6_graphLabels», 20, 11, false, false, 11, «#0000ff»); / * Әр секунд сайын мәндерді жаңартыңыз */ setInterval (updateEverySecond, 1000); updateEverySecond () функциясы { / * Жаңа мәндерді алу * / SndUpdate ();

/ * Жаңарту графигі */PG1_demograph.update ([PG1_yrand0], parseInt (byID («PG1_scale»). Мән)+ parseInt (byID («PG1_scale») мәні)/10, «#e52b50»); PG2_demograph.update ([PG2_yrand0], parseInt (byID («PG2_scale»). Мән)+ parseInt (byID («PG2_scale»). Мән)/10, «#e52b50»); PG3_demograph.update ([PG3_yrand0], parseInt (byID («PG3_scale»). Мән)+ parseInt (byID («PG3_scale»). Мән)/10, «#008000»); PG4_demograph.update ([PG4_yrand0], parseInt (byID («PG4_scale»). Мән)+ parseInt (byID («PG4_scale»). Мән)/10, «#008000»); // PG5_demograph.update ([PG5_yrand0], parseInt (byID («PG5_scale»). Мән)+ // parseInt (byID («PG5_scale»). Мән)/10, «#0000ff»); PG6_demograph.update ([PG6_yrand0], parseInt (byID («PG6_scale»). Мән)+ parseInt (byID («PG6_scale»). Мән)/10, «#0000ff»); var Watts = Math.round (PG1_yrand0 * PG2_yrand0 * 100)/100; byID («PG1_wattLabel»). innerHTML = `WATT: $ {Ватт} мВт`; var Watts = Math.round (PG3_yrand0 * PG4_yrand0 * 100)/100; byID («PG3_wattLabel»). innerHTML = `WATT: $ {Ватт} мВт`; // var Watts = Math.round (PG5_yrand0 * PG6_yrand0 * 100)/100; // byID («PG5_wattLabel»). innerHTML = `WATT: $ {Ватт} мВт`; byID («PG1_scale»). мән = Math.floor (parseInt (byID («PG1_scale»). мән)/2+PG1_yrand0); byID («PG2_scale»). мән = Math.floor (parseInt (byID («PG2_scale») мәні)/2+PG2_yrand0); byID («PG3_scale»). мән = Math.floor (parseInt (byID («PG3_scale») мәні)/2+PG3_yrand0); byID («PG4_scale»). мән = Math.floor (parseInt (byID («PG4_scale») мәні)/2+PG4_yrand0); // byID («PG5_scale»). мән = Math.floor (parseInt (byID («PG5_scale»). мән)/2+PG5_yrand0); byID («PG6_scale»). мән = Math.floor (parseInt (byID («PG6_scale») мәні)/2+PG6_yrand0);

Кодты зерттей отырып, мен өз мақсатым үшін 6 -ның 5 графигін ғана қолданатынымды байқайсыз. Дұрыс жолдарға түсініктеме бермеу 6-шы графикті қосады.

Html тәжірибесі жоқ адамдар үшін бұл қадам қиын болуы мүмкін. Дегенмен, бұл HTML әлеміне жақсы кіріспе бола алады. Мен білемін, себебі бұл мен жасаған бірінші бет. Сондықтан қорықпаңыз. Біздің қол астында тәжірибесі бар адамдар үшін кешірімді болыңыз.

Сіздің веб -беттегі жұмысыңыздың нәтижесін html ашу арқылы қарауға болады, ол сіздің шолғышқа жүктеледі және оның сыртқы түрін көрсетеді. Мүмкін болатын қателерді шолғыштағы F12 пернесін басу арқылы тексеруге болады, отладтау терезесі пайда болады. Қатені қалай түзетуге болатыны туралы толық түсініктеме бұл нұсқаулықтың шеңберінен тыс, бірақ веб -бет / javascript отладтаудың алғашқы қадамы ретінде пайдалы болуы мүмкін.

Келесі қадам - құрылған веб -беттерді ESP32 -ге жүктеу.

8 -қадам: ESP32 -ге веб -бетті жүктеңіз

ESP32 ішіне веб -бетті жүктеңіз
ESP32 ішіне веб -бетті жүктеңіз

Қанағаттанарлық нәтиже алғаннан кейін, веб -бетті ESP32 -ге жүктеу уақыты келді.

Сіз мұны 'Index.htm' (сіздің веб -бетіңіз) мен 'PicoGraph.js' файлдарын Arduino жобасының астындағы 'деректер' қалтасына сақтау арқылы жасайсыз.

Келесі қадам - ESP32 тақтасын компьютерге қосу. Дұрыс тақта мен COM портын таңдағаннан кейін, Arduino IDE құралдар мәзірінің астынан ESP32 Sketch деректерді жүктеуді таңдаңыз.

Сіз IDE жүктеу процесін бастайтынын көресіз, бұл сәтті жүктеуге әкеледі.

Бұл қадамның жанында - ESP32 микроконтроллерін веб -сервер ретінде конфигурациялау.

9 -қадам: ESP32 веб -сервер ретінде конфигурациялаңыз

Сізге ESP32 -ді веб -сервер ретінде конфигурациялайтын Arduino Ino нобайы табылған.

Сізге SSID мен парольді маршрутизатордың паролімен ауыстыру қажет.

Жоғарыда айтылғандай, бұл эскизде веб -бетті ПХД қуат көзінің контроллері ретінде конфигурациялау коды да бар (шын мәнінде, 5 IO түйреуішін PWM түйреуіші ретінде конфигурациялау және оларды веб -беттен хабар ағыны арқылы басқару).

Эскиз Христо Гочков жасаған стандартты Webserver эскизіне негізделген.

Код бойынша бірнеше түсініктеме.

Келесі функциялардың барлығы веб -серверді орнатуға байланысты.

String formatBytes (size_t байт) String getContentType (String файл атауы) bool бар (String жолы) bool handleFileRead (Жол жолы) void handleFileUpload () void handleFileDelete () void handleFileCreate () void handleFileList ()

Сондай -ақ, setup () функциясындағы бірінші код PWM мен Webserver қондырғысына қатысты.

Келесі код веб -бетке және одан хабар ағындарына қызмет ететін Үзіліс функциясын орнатады:

(веб -бетті құрудан идентификаторларды тану керек)

server.on («/SndUpdate», HTTP_GET, () {

Жол Msg = «{»; Msg+ = «\» PG1_yrand0 / «:»+ (Жол) Вина [1]; Msg+ = «, \» PG2_yrand0 / «:»+ (Жол) Айна [1]; Msg+ = «, \» PG3_yrand0 / «:»+ (Жол) Вина [0]; Msg+ = «, \» PG4_yrand0 / «:»+ (Жол) Айна [0]; Msg+ = «, \» PG5_yrand0 / «:»+ (Жол) Вина [2]; Msg+ = «, \» PG6_yrand0 / «:»+ (Жол) Айна [2]; Msg+= «}»;

server.send (200, «text/json», Msg);

Бұл серверді іске қосады:

server.begin ();

Келесі код блогы INA260 тақталарын инициализациялайды:

// INA260 инициализациясы, егер (! Ina260_0x40.begin (0x40)) {Serial.println (F («INA260 0x40 чипі табылмады»)); // кезінде (1); } Serial.println (F («INA260 чипі 0x40 табылды»)); if (! ina260_0x41.begin (0x41)) {Serial.println (F («0x41 INA260 чипі табылмады»)); // кезінде (1); } Serial.println (F («INA260 0x41 чипі табылды»)); if (! ina260_0x44.begin (0x44)) {Serial.println (F («INA260 0x44 чипі табылмады»)); // кезінде (1); } Serial.println (F («INA260 чипі 0x44 табылды»));

ina260_0x40.setAveragingCount (INA260_COUNT_256);

ina260_0x40.setVoltageConversionTime (INA260_TIME_1_1_ms); ina260_0x40.setCurrentConversionTime (INA260_TIME_1_1_ms); ina260_0x40.setMode (INA260_MODE_CONTINUOUS); ina260_0x41.setAveragingCount (INA260_COUNT_256); ina260_0x41.setVoltageConversionTime (INA260_TIME_1_1_ms); ina260_0x41.setCurrentConversionTime (INA260_TIME_1_1_ms); ina260_0x41.setMode (INA260_MODE_CONTINUOUS); ina260_0x44.setAveragingCount (INA260_COUNT_256); ina260_0x44.setVoltageConversionTime (INA260_TIME_1_1_ms); ina260_0x44.setCurrentConversionTime (INA260_TIME_1_1_ms); ina260_0x44.setMode (INA260_MODE_CONTINUOUS);

Циклдік кодта келесі мәлімдеме үзіліс кодының өңделуін қамтамасыз етеді:

server.handleClient ();

Цикл мәлімдемесіндегі келесі код Қуат беру функциясымен байланысты.

Циклдағы () келесі код тағы да қызықты:

Вина [0] = ina260_0x40.readBusVoltage ()/1000.0f; Iina [0] = ina260_0x40.readCurrent (); Вина [1] = ina260_0x41.readBusVoltage ()/1000.0f; Айна [1] = ina260_0x41.readCurrent (); Вина [2] = ina260_0x44.readBusVoltage ()/1000.0f; Iina [2] = ina260_0x44.readCurrent ();

Бұл мәлімдемелер Server.on үзіліс қоңыраулары арқылы веб -бетке көшу үшін өлшемдерді жинайды және дайындайды (әрбір 1000 мс сайын, html Java java сценарийінде орнатылады).

10 -қадам: Сіз дайынсыз

Сіз Дайынсыз!
Сіз Дайынсыз!

Эскизді ESP32 тақтасына жүктеу, орнатуды аяқтау керек, ал сіздің Power мониторыңыз түпкілікті болуы керек!

Сіз ESP32 -ді қосу USB порты арқылы жүзеге асырылатынын байқаған боларсыз, бұл сіздің кернеу / ток есептегіштерімен WiFi негізіндегі қосылыстың артықшылықтарын арттырады. Осылайша, мен ESP32 үшін қарапайым LM317 кернеуімен реттелетін қуат көзін жасадым. Мен оны осы нұсқаулықтың шеңберінен шығардым, бірақ егер қызығушылық болса, келесі нұсқаулыққа айналуы мүмкін.

Келесі қадамда мен шабыт бола алатын электрмен жабдықтаудың электронды схемасын ұсындым.

11 -қадам: ESP32 жүйесін қосу

ESP32 қуат көзі
ESP32 қуат көзі

Егер сізде жоқ болса, ESP32 үшін жеке қуат көзін құруға шабыт береді.

Қуат тізбегі ноутбуктің 19В қуат көзінен жұмыс істейді. Бұл LM317 -дің энергияны таратуын бақылауда ұстау үшін кернеудің екі фазалы төмендеуін талап етеді. (Тіпті жылу қабылдағыштарда да!). Сондай -ақ, VCC_ESP желісінің алдына 100uF конденсаторды қосуды ұмытпаңыз, себебі бұл микроконтроллерлерде WiFi қосылымын қосқанда үлкен ток өзгерісі болады.

ESP32 бір уақытта бірнеше қуат көзінен қуат алмайтынын ескеріңіз!

Кәдімгі жауапкершіліктен бас тарту, бірақ бәрінен бұрын

Масайрау!

Барлық файлдарды менің GitHub сайтынан табуға болады:

Ұсынылған: