Satura rādītājs:

Daudzkanālu Wifi sprieguma un strāvas mērītājs: 11 soļi (ar attēliem)
Daudzkanālu Wifi sprieguma un strāvas mērītājs: 11 soļi (ar attēliem)

Video: Daudzkanālu Wifi sprieguma un strāvas mērītājs: 11 soļi (ar attēliem)

Video: Daudzkanālu Wifi sprieguma un strāvas mērītājs: 11 soļi (ar attēliem)
Video: 3 простых изобретения с двигателем постоянного тока 2024, Jūlijs
Anonim
Daudzkanālu Wifi sprieguma un strāvas mērītājs
Daudzkanālu Wifi sprieguma un strāvas mērītājs

Maizes dēļā bieži vien ir jāuzrauga dažādas ķēdes daļas vienlaikus.

Lai izvairītos no sāpēm, kad multimetra zondes jāpielīmē no vienas vietas uz otru, es gribēju izveidot daudzkanālu sprieguma un strāvas mērītāju.

Adafruit Ina260 dēlis nodrošina ļoti efektīvu un efektīvu veidu, kā to izdarīt. Tas satur ļoti precīzu sprieguma un strāvas mērītāju ar integrētu I2C tiltu (ietaupot daudz tapas, apvienojot 3 no tām!).

Trūka tikai displeja. Līdz ar to tika pieņemts lēmums savienot dēļus ar ESP32 izstrādes paneli, kas var viegli nēsāt tīmekļa serveri, lai parādītu izmērītos vienumus datora/mobilā ekrānā.

Piegādes

3 x Ina260 adafruit dēlis

3 x galvenes tapas ar garām tapām

Vismaz 6 džemperu vadi

1 x ESP32 Wrover-B (vai jebkura cita Wifi plate ar I2C atbalstu)

2 x 19 kontaktu tapas (ja piemērojams)

1 x PCB vai perfboard

1 x 3,3 V barošanas avots

1. solis: lodējiet trīs INA dēļus

Lodējiet trīs INA dēļus
Lodējiet trīs INA dēļus

Pirmais solis ir salikt trīs INA260 plāksnes.

Ļoti labu instrukciju var atrast Adafruit vietnē. Izpildiet Adafruit montāžas instrukcijas.

Lai tās varētu salikt viena virs otras, izmantojiet garo tapu galviņas, nevis komplektā esošās tapas!

2. darbība: konfigurējiet trīs dažādas I2C adreses

Konfigurējiet trīs dažādas I2C adreses
Konfigurējiet trīs dažādas I2C adreses
Konfigurējiet trīs dažādas I2C adreses
Konfigurējiet trīs dažādas I2C adreses
Konfigurējiet trīs dažādas I2C adreses
Konfigurējiet trīs dažādas I2C adreses
Konfigurējiet trīs dažādas I2C adreses
Konfigurējiet trīs dažādas I2C adreses

I2C ir sērijveida protokols divu vadu interfeisam, lai savienotu zema ātruma ierīces nelielos attālumos. Var savienot līdz 127 vergiem. Vienā kopnē katra ierīce ir jāidentificē ar unikālu I2C adresi. Ierīces I2C adrese bieži ir cieši pieslēgta ierīces mikroshēmai. Lai savienotu vienas un tās pašas ierīces vienā kopnē, ražotājs bieži atstāj iespēju mainīt I2C adresi, kopā lodējot konfigurācijas tapas.

Tas attiecas arī uz trim INA260 plāksnēm. Ierīcei ir divas adatu tapas A0 un A1, kuras var savienot ar GND, VS, SCL vai SDA, lai iestatītu vēlamo adresi. Teksasas instrumentu INA260 mikroshēmas datu lapā var atrast kontaktu sarakstu katrai no 16 iespējamām adresēm.

Adafruit dēlis ierobežo to līdz 4 dēļiem, pakļaujot divus spilventiņus, kurus var izmantot, lai vilktu A0 un/vai A1 uz VS. INA260 plates noklusējuma adrese ir 0x40.

Jūs pabeidzat šo darbību, piešķirot abām pārējām plāksnēm dažādas adreses:

Lodējot otrās plāksnes A0 spilventiņu, jūs iestatāt viņa adresi uz: 0x41 (vai 1000001 BIN)

Lodējot trešās plāksnes A1 spilventiņu, jūs piešķirat adresi: 0x44 (vai 1000100 BIN)

3. darbība: pievienojiet Inas plāksnes ESP32

Pievienojiet Inas plāksnes ESP32
Pievienojiet Inas plāksnes ESP32

Tagad, kad katrai INA plāksnei esam piešķīruši dažādas I2C adreses, ir pienācis laiks tās savienot ar ESP32 plati!

Saskaņā ar iepriekš redzamo attēlu, izveidojiet savienojumu

1) VCC tapu uz 3.3V tapu

2) GND tapu uz GND tapu

3) SDA tapa līdz GPIO tapai 21

4) SCL tapa līdz GPIO tapai 22

Savienojumu izveidei esmu izmantojis PCB dizainu, jo tas ir daļa no lielāka projekta (WiFi regulējams sprieguma padeve ar regulējamu strāvas ierobežošanu - ceru, ka arī šim nolūkam būs iespējams pamācīties).

Savienošanai varat izmantot jebkādus citus veidus, piemēram, lodēšanas plāksni vai rīvdēli. Abi tie darbosies arī labi.

4. darbība: instalējiet ESP32 paneli Arduino IDE

Instalējiet ESP32 plati Arduino IDE
Instalējiet ESP32 plati Arduino IDE

Tagad, kad esam savienojuši dēļus savā starpā, ir pienācis laiks pārbaudīt savienojumu.

Mēs to darīsim, apkopojot Inas dēļu I2C adreses.

ESP32 tāfele lieliski darbojas ar Arduino IDE.

Tāpēc instalēsim ESP32 plāksni Arduino, izmantojot padomes pārvaldnieku.

5. darbība. Pārbaudiet savienojumu ar ESP32, izmantojot I2C skeneri

Pārbaudiet Ina līdz ESP32 savienojumu, izmantojot I2C skeneri
Pārbaudiet Ina līdz ESP32 savienojumu, izmantojot I2C skeneri

Mēs izmantosim vienkāršu I2C adrešu skeneri, lai nodrošinātu savienojumu starp ESP32 un Ina260 plates.

I2C adrešu skenera kodu var kopēt un ielīmēt tukšā Arduino projektā.

Kods ir ņemts no Arduino cc vietnes:

// -------------------------------------- // i2c_scanner // // Versija 1/ / Šo programmu (vai kodu, kas izskatās pēc tā) // var atrast daudzās vietās. // Piemēram, forumā Arduino.cc. // Sākotnējais autors nav zināms. // 2. versija, 2012. gada jūnijs, Arduino 1.0.1 izmantošana, Izmantojot Arduino 1.0.3 // Arduino.cc lietotājs Krodal. // Louarnold veiktās izmaiņas ir noņemtas. // Skenēšanas adreses mainītas no 0… 127 uz 1… 119, // saskaņā ar Nika Gammona i2c skeneri // https://www.gammon.com.au/forum/?id=10896 // 5. versija, marts 2013. gads, 28. // Kā 4. versija, bet adrese tiek skenēta līdz 127. // Šķiet, ka sensors izmanto adresi 120. // 6. versija, 2015. gada 27. novembris. // Pievienots, gaidot Leonardo sērijas sakarus. // Šī skice pārbauda standarta 7 bitu adreses // Ierīces ar augstāku bitu adresi, iespējams, netiek rādītas pareizi. // #include void setup () {Wire.begin (); Sērijas sākums (9600); kamēr (! Seriāls); // Leonardo: gaidiet sērijas monitoru Serial.println ("\ nI2C skeneris"); } void loop () {baitu kļūda, adrese; int nIerīces; Serial.println ("Skenēšana …"); nIerīces = 0; for (adrese = 1; adrese <127; adrese ++) {// I2c_skeneris izmanto // Write.endTransmisstion atgriešanas vērtību, lai noskaidrotu, vai // ierīce ir apstiprinājusi adresi. Wire.beginTransmission (adrese); kļūda = Wire.endTransmission (); ja (kļūda == 0) {Serial.print ("I2C ierīce atrasta adresē 0x"); ja (adrese <16) Serial.print ("0"); Serial.print (adrese, HEX); Serial.println ("!"); nIerīces ++; } cits if (kļūda == 4) {Serial.print ("Nezināma kļūda adresē 0x"); ja (adrese <16) Serial.print ("0"); Serial.println (adrese, HEX); }} if (nDevices == 0) Serial.println ("Nav atrasta neviena I2C ierīce / n"); else Serial.println ("darīts / n"); kavēšanās (5000); // pagaidiet 5 sekundes līdz nākamajai skenēšanai}

6. darbība: HTML tīmekļa servera mapes izveide

HTML tīmekļa servera mapes izveide
HTML tīmekļa servera mapes izveide

ESP32 nodrošina iespēju palaist tīmekļa serveri. Tas arī nodrošina diezgan lielu RAM atmiņu dažu tīmekļa lapu glabāšanai. (Tas automātiski saspiež tīmekļa lapas failus).

Arduino IDE nodrošina funkcionalitāti izveidoto tīmekļa lapu augšupielādei tieši ESP32 RAM.

Lai to izdarītu, jums ir jāizveido mape “dati” zem Arduino projekta mapes. Manā gadījumā tie ir / Arduino / esp32_Power_supply_v1_implemented / dati.

Ir svarīgi, lai mape tiktu nosaukta tieši kā “dati”, jo tas ir mapes nosaukums, ko Arduino meklēs, augšupielādējot tīmekļa lapas failus ESP.

7. darbība: izveidojiet Power Monitor tīmekļa vietni

HMTL ir valoda, kas ļauj parādīt tekstu tīmekļa pārlūkprogrammā. HTML fails tiek saglabāts ar paplašinājumu htm (l). Tīmekļa lapas formatējums parasti tiek ievietots atsevišķā failā (piemēram, css failā). Programmas funkcionalitāte, kas jāpiedāvā tīmekļa lapai, parasti tiek ievietota citā failā (piemēram, js failā, JavaScript gadījumā).

Savā HTML dokumentā es vienā failā iekļāvu tekstu, formatējumu un Javascript. Tāpēc tas nav labs piemērs tam, kā izveidot tīmekļa lapu, bet tas kalpo mērķiem. Es nosaucu HTML dokumentu par 'Index.htm'.

Manā datu mapē ir iekļauts otrs fails, ti. PicoGraph.js. PicoGraph bibliotēku nodrošina Vishnu Shankar B no RainingComputers, un tā nodrošina ļoti vienkāršu, tomēr efektīvu un elastīgu veidu, kā grafikus parādīt tīmekļa vietnē. Es nedaudz mainīju kodu, lai tas labāk kalpotu manam mērķim.

Jūs pamanīsit, ka HTML tīmekļa vietnē ir arī kods sprieguma padeves kontrolei manā PCB plāksnē. Sprieguma padeves kods kontrolē 5 I/O tapu sprieguma līmeni. Jūs varat mainīt kodu, lai to izslēgtu, vai arī atstāt to bez ietekmes.

Šim solim html kods ir pievienots kā txt fails (jo instrukcijas neļauj augšupielādēt htm kodu).

Lai izmantotu HTML kodu, kopējiet un ielīmējiet to teksta redaktorā (es izmantoju Notepad ++) un saglabājiet to mapē “Dati” kā “Index.htm”. Jūs darāt to pašu ar failu picograph.txt, bet pārdēvējat to par picograph.js

Attiecībā uz HTML failu:

Funkcija SndUpdate tiek izmantota, lai nosūtītu ziņojumus uz priekšu un atpakaļ no ESP uz tīmekļa lapu.

No ESP sūtītie ziņojumi kalpo strāvas padeves funkcionalitātei, un uz šo pamācību neattiecas. ziņojumi ESP kalpo Ina260 plates mērījumiem.

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;

Iepriekš minētais kods nolasa 6 ciparus no ESP32 plates, ti. sprieguma mērīšana, strāvas mērīšana no pirmās plates, kam seko divi mērījumi no otrās un tā tālāk.

Diagrammas ir iestrādātas tā sauktajos elastīgajos konteineros, kas ļauj elastīgi mainīt tīmekļa lapas izmērus.

.flex-container {displejs: flex; fona krāsa: cadetblue; flex-wrap: ietīšana; }.flex-container> div {background-color: #f1f1f1; mala: 10 pikseļi; polsterējums: 20 pikseļi; fonta izmērs: 20 pikseļi; font-family: "Septiņi segmenti"; fonta svars: treknraksts; }

Katra elastīgā konteinera saturs tiek veidots šādi, ieskaitot iegultos grafikus.

(ņemiet vērā, ka noņemšanas vieta)

div label for "" PG1_scale "Scale:/label input name =" PG1_scale "value =" 10 "brbr!-Canvas for thr graph-canvas style =" height: 100px; border: 2px solid #000000; background-color: #fafafa; " /audekls

!-div leģendām/etiķetēm-

div /div div /div /div

Pēdējā svarīgā HTML faila sadaļa darbojas kopā ar PicoGraph bibliotēku, lai parādītu skaitļus:

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"); / * Atjauniniet vērtības katru sekundi */ setInterval (updateEverySecond, 1000); function updateEverySecond () { / * Iegūt jaunas vērtības * / SndUpdate ();

/ * Atjaunināt diagrammu */PG1_demograph.update ([PG1_yrand0], parseInt (byID ("PG1_scale"). Vērtība)+ parseInt (byID ("PG1_scale"). Vērtība)/10, "#e52b50"); PG2_demograph.update ([PG2_yrand0], parseInt (byID ("PG2_scale"). Vērtība)+ parseInt (byID ("PG2_scale"). Vērtība)/10, "#e52b50"); PG3_demograph.update ([PG3_yrand0], parseInt (byID ("PG3_scale"). Vērtība)+ parseInt (byID ("PG3_scale"). Vērtība)/10, "#008000"); PG4_demograph.update ([PG4_yrand0], parseInt (byID ("PG4_scale"). Vērtība)+ parseInt (byID ("PG4_scale"). Vērtība)/10, "#008000"); // PG5_demograph.update ([PG5_yrand0], parseInt (byID ("PG5_scale"). Vērtība)+ // parseInt (byID ("PG5_scale"). Vērtība)/10, "#0000ff"); PG6_demograph.update ([PG6_yrand0], parseInt (byID ("PG6_scale"). Vērtība)+ parseInt (byID ("PG6_scale"). Vērtība)/10, "#0000ff"); var Vats = Matemātiskais (PG1_yrand0 * PG2_yrand0 * 100)/100; byID ("PG1_wattLabel"). internalHTML = `WATT: $ {Watts} mW`; var Vats = Matemātiskā (PG3_yrand0 * PG4_yrand0 * 100)/100; byID ("PG3_wattLabel"). internalHTML = `WATT: $ {Watts} mW`; // var Watts = Math.round (PG5_yrand0 * PG6_yrand0 * 100)/100; // byID ("PG5_wattLabel"). internalHTML = `WATT: $ {Watts} mW`; byID ("PG1_scale"). value = Math.floor (parseInt (byID ("PG1_scale"). value)/2+PG1_yrand0); byID ("PG2_scale"). vērtība = Math.floor (parseInt (byID ("PG2_scale"). vērtība)/2+PG2_yrand0); byID ("PG3_scale"). value = Math.floor (parseInt (byID ("PG3_scale"). value)/2+PG3_yrand0); byID ("PG4_scale"). vērtība = Math.floor (parseInt (byID ("PG4_scale"). vērtība)/2+PG4_yrand0); // byID ("PG5_scale"). value = Math.floor (parseInt (byID ("PG5_scale"). value)/2+PG5_yrand0); byID ("PG6_scale"). value = Math.floor (parseInt (byID ("PG6_scale"). value)/2+PG6_yrand0);

Pētot kodu, jūs pamanīsit, ka savam mērķim izmantoju tikai 5 grafikus no 6. Noņemot pareizo rindu komentārus, tiks iespējota sestā diagramma.

Tiem, kam nav pieredzes ar html, šis solis var būt tik grūts. Tomēr tas var kalpot kā jauks ievads HTML pasaulē. Es zinu, jo šī bija pirmā lapa, ko es jebkad izveidoju. Tāpēc nebaidieties. Tiem, kas ir pieredzējuši zem mums, esiet piedodoši.

Jūsu darba rezultātus tīmekļa vietnē var pārskatīt, atverot savu html, tas tiks ielādēts jūsu pārlūkprogrammā un parādīs tā izskatu. Jūs varat pārbaudīt iespējamās kļūdas, pārlūkprogrammā nospiežot taustiņu F12, parādīsies atkļūdošanas logs. Pilns skaidrojums par atkļūdošanu ir ārpus šīs pamācības darbības jomas, taču tīmekļa lapa var būt noderīga kā pirmais solis tīmekļa lapas / javascript atkļūdošanā.

Nākamais solis ir ielādēt izveidotās tīmekļa lapas ESP32.

8. solis: ielādējiet tīmekļa lapu ESP32

Ielādējiet tīmekļa lapu ESP32
Ielādējiet tīmekļa lapu ESP32

Pēc apmierinoša rezultāta iegūšanas ir pienācis laiks augšupielādēt tīmekļa lapu ESP32.

Lai to izdarītu, saglabājiet “Index.htm” (jūsu tīmekļa vietne) un “PicoGraph.js” mapē “dati”, kas atrodas jūsu Arduino projektā.

Nākamais solis ir savienot ESP32 plati ar datoru. Kad esat izvēlējies pareizo dēli un COM portu, Arduino IDE izvēlnē Rīki izvēlieties ESP32 skiču datu augšupielādi.

Jūs redzēsit, ka IDE sāks augšupielādes procesu, kas novedīs pie veiksmīgas ielādes.

Blakus šim solim ir konfigurēt ESP32 mikrokontrolleru kā tīmekļa serveri.

9. darbība: konfigurējiet ESP32 kā tīmekļa serveri

Pievienots atradīsit Arduino Ino skici, kas konfigurēs ESP32 kā tīmekļa serveri.

Jums būs jāaizstāj SSID un ar to saistītā parole ar maršrutētāja paroli.

Kā jau minēts, šajā skicē ir arī kods, lai konfigurētu tīmekļa lapu kā kontrolieri PCB barošanas puses pusē (faktiski 5 IO tapas konfigurējot kā PWM tapas un kontrolējot tās, izmantojot ziņu straumi no tīmekļa lapas).

Skice ir balstīta uz standarta Web servera skici, ko izstrādājis Hristo Gočkovs.

Daži skaidrojumi par kodu.

Visas šīs funkcijas ir saistītas ar tīmekļa servera iestatīšanu.

String formatBytes (size_t bytes) String getContentType (String filename) bool is (String path) bool handleFileRead (String path) void handleFileUpload () void handleFileDelete () void handleFileCreate () void handleFileList ()

Arī pirmais iestatīšanas () funkcijas kods ir saistīts ar PWM un tīmekļa servera iestatīšanu.

Šis kods nosaka funkciju Pārtraukt, kas apkalpo ziņu straumes uz tīmekļa lapu un no tās:

(jums vajadzētu atpazīt identifikatorus no tīmekļa lapas izveides)

server.on ("/SndUpdate", HTTP_GET, () {

String Msg = "{"; Msg+ = "\" PG1_yrand0 / ":"+ (String) Vina [1]; Msg+ = ", \" PG2_yrand0 / ":"+ (String) Iina [1]; Msg+ = ", \" PG3_yrand0 / ":"+ (String) Vina [0]; Msg+ = ", \" PG4_yrand0 / ":"+ (String) Iina [0]; Msg+ = ", \" PG5_yrand0 / ":"+ (String) Vina [2]; Msg+ = ", \" PG6_yrand0 / ":"+ (String) Iina [2]; Msg+= "}";

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

Tas palaiž serveri:

server.begin ();

Nākamais koda bloks inicializē INA260 plates:

// INA260 inicializācija, ja (! Ina260_0x40.begin (0x40)) {Serial.println (F ("Nevarēja atrast INA260 0x40 mikroshēmu")); // kamēr (1); } Serial.println (F ("Atrasta INA260 mikroshēma 0x40")); if (! ina260_0x41.begin (0x41)) {Serial.println (F ("Nevarēja atrast 0x41 INA260 mikroshēmu")); // kamēr (1); } Serial.println (F ("Atrasta INA260 0x41 mikroshēma")); if (! ina260_0x44.begin (0x44)) {Serial.println (F ("Nevarēja atrast INA260 0x44 mikroshēmu")); // kamēr (1); } Serial.println (F ("Atrasta INA260 mikroshēma 0x44"));

ina260_0x40.setAveverageCount (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.setAveverageCount (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.setAveverageCount (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);

Cilpas kodā šāds paziņojums nodrošina pārtraukuma koda apstrādi:

server.handleClient ();

Šis kods cilpas paziņojumā ir saistīts ar barošanas avota funkcionalitāti.

Šis kods ciklā () atkal ir interesants:

Vina [0] = ina260_0x40.readBusVoltage ()/1000.0f; Iina [0] = ina260_0x40.readCurrent (); Vina [1] = ina260_0x41.readBusVoltage ()/1000.0f; Iina [1] = ina260_0x41.readCurrent (); Vina [2] = ina260_0x44.readBusVoltage ()/1000.0f; Iina [2] = ina260_0x44.readCurrent ();

Šie paziņojumi apkopo un sagatavo mērījumus pārsūtīšanai uz tīmekļa lapu, izmantojot serveri. Par pārtrauktajiem zvaniem (notiek ik pēc 1000 ms, iestatīts tīmekļa lapas html java skriptā).

10. solis: esat pabeidzis

Tu esi pabeidzis!
Tu esi pabeidzis!

Augšupielādējot skici ESP32 panelī, jāpabeidz iestatīšana, un jaudas monitoram jābūt galīgam!

Jūs, iespējams, pamanījāt, ka ESP32 barošana tagad tiek veikta, izmantojot USB portu, tādējādi tiek paaugstināta liela daļa no WiFi savienojuma priekšrocībām ar jūsu sprieguma / strāvas mērītājiem. Tādējādi es ESP32 esmu izveidojis vienkāršu uz spriegumu regulējamu LM317 barošanas avotu. Es to atstāju ārpus šīs pamācības darbības jomas, bet, ja ir interese, tā varētu kļūt par nākamo pamācību.

Nākamajā solī es jau esmu nodrošinājis barošanas avota elektronisko shēmu, kas varētu kalpot par iedvesmu.

11. darbība. ESP32 barošana

Barošana ESP32
Barošana ESP32

Ar šo jūs iedvesmojat izveidot atsevišķu enerģijas avotu savam ESP32, ja jums tāda nav.

Strāvas ķēde darbojas ar 19 V klēpjdatora barošanas avotu. Tas prasa divpakāpju sprieguma samazināšanu, lai kontrolētu LM317 jaudas izkliedi. (Pat ar siltuma izlietnēm!). Tāpat neaizmirstiet ievietot 100uF kondensatoru VCC_ESP līnijas priekšā, jo šiem mikrokontrolleriem, uzsākot WiFi savienojumu, noteikti ir lielas strāvas svārstības.

Ņemiet vērā, ka ESP32 nedrīkst barot ar vairākiem barošanas avotiem vienlaikus!

Turklāt parastās atbildības atrunas, bet galvenokārt

Izklaidējieties!

Visus failus var atrast manā GitHub:

Ieteicams: