Turinys:

„Nano ESP32 BLE“skaitytuvas: 14 žingsnių (su nuotraukomis)
„Nano ESP32 BLE“skaitytuvas: 14 žingsnių (su nuotraukomis)

Video: „Nano ESP32 BLE“skaitytuvas: 14 žingsnių (su nuotraukomis)

Video: „Nano ESP32 BLE“skaitytuvas: 14 žingsnių (su nuotraukomis)
Video: Изучите Arduino за 30 минут: примеры и проекты 2024, Lapkritis
Anonim
Nano ESP32 BLE skaitytuvas
Nano ESP32 BLE skaitytuvas

Šiose instrukcijose parodyta, kaip naudojant ESP32 sukurti belaidį BLE signalo skaitytuvą, visi nuskaityti duomenys bus siunčiami į HTTP serverį per „WiFi“.

1 žingsnis: Kodėl BLE skaitytuvas?

Kodėl BLE skaitytuvas?
Kodėl BLE skaitytuvas?

BLE („Bluetooth Low Energy“) signalas yra labai dažnas dabartiniam skaitmeniniam įrenginiui, mobiliajam telefonui, riešo juostai, „iBeacon“, turto žymai. Šis signalas ne tik padeda suporuoti įrenginius, bet ir gali pranešti apie įrenginio būseną, pvz., Akumuliatoriaus įkrovos lygį, širdies ritmą, judesius (vaikščiojimas, bėgimas, kritimas), temperatūrą, panikos mygtuką, apsaugos nuo nuostolių ir kt.

Tai vertingi dideli duomenys vietos stebėjimui, jei galime surinkti BLE signalą tam tikru pozicijų skaičiumi.

Ilgainiui BLE skaitytuvas turėtų užfiksuoti pasirinktą padėtį. Tačiau norint pasirinkti tinkamą vietą, reikia bandymų ir klaidų. Mažas belaidis BLE skaitytuvas yra patogus, kad padėtų jums patikrinti, kur yra tinkama vieta.

2 žingsnis: Paruošimas

Paruošimas
Paruošimas
Paruošimas
Paruošimas

ESP32 plokštė

Šį kartą naudoju ESP-WROOM-32 plokštę.

Mažas konteineris

Bet koks mažas konteineris turėtų būti tinkamas, aš turiu rankose mažą „TicTac“dėžutę ir ji tiesiog tilpo į ESP32 plokštę, koks sutapimas!

Lipo baterija

Didžiausia ESP32 srovė yra apie 250 mA. Kad „Lipo“akumuliatorius bet kuriuo metu netrauktų daugiau nei 1C srovės, jis turėtų viršyti 250 mAh talpos. 852025 yra maksimalus dydis, kuris gali tilpti į „Tictac“dėžutę, ir jis teigia, kad jame yra 300 mAh, tai pakankamai gerai.

Maitinimo reguliatoriaus grandinė

3,3 V LDO reguliatorius, kai kurie kondensatoriai, turiu HT7333A reguliatorių, 22 uf ir 100 uf kondensatorių rankoje

Kiti

10k omų SMD rezistorius, skirtas ištraukti EN kaištį, nedidelis universalios PCB gabalas, maitinimo jungiklis, kai kurie padengti laidai, 7 kaiščių antraštė

ESP32 „Dev Dock“

Programos procese taip pat reikalingas ESP32 kūrimo dokas, kaip tai padaryti, rasite ankstesnėse instrukcijose:

www.instructables.com/id/Battery-Powered-E…

3 žingsnis: nupjaukite PCB

Nupjaukite PCB
Nupjaukite PCB

Išmatuokite savo mažo konteinerio matmenis ir supjaustykite PCB, kad tilptų į jį.

4 žingsnis: litavimo kaiščio antraštė

Litavimo kaiščio antraštė
Litavimo kaiščio antraštė

Litavimo darbus pradėkime nuo 7 kaiščių antraštės ir PCB.

5 žingsnis: litavimo maitinimo grandinė

Litavimo galios grandinė
Litavimo galios grandinė
Litavimo galios grandinė
Litavimo galios grandinė
Litavimo galios grandinė
Litavimo galios grandinė

Čia yra ryšio santrauka:

LDO Vin -> Vcc kaiščio antraštė (1) -> maitinimo jungiklis -> Lipo V+, įkrovimo kaiščio antraštė (7)

LDO GND -> GND kaiščio antraštė (2), kondensatorių kaiščiai, ESP32 GND LDO išėjimas -> kondensatoriai V+ kaiščiai, ESP32 Vcc

6 žingsnis: litavimo ištraukimo rezistorius

Lituoti ištraukiamas rezistorius
Lituoti ištraukiamas rezistorius

Tai sunkiausias litavimo darbas šiame projekte, kaiščio plotis ESP32 plokštėje yra tik 1,27 mm. Laimei, Vcc ir EN kaištis yra netoliese, jis gali nukreipti litavimo rezistorių tarp abiejų kaiščių be laido.

ESP32 Vcc kaištis -> 10k omų rezistorius -> ESP32 EN kaištis

7 žingsnis: litavimo programos kaiščiai

Litavimo programos kaiščiai
Litavimo programos kaiščiai

Čia pateikiama ryšio santrauka:

Tx kaiščio antraštė (3) -> ESP32 Tx kaištis

Rx kaiščio antraštė (4) -> ESP32 Rx kaištis Programinės kaiščio antraštė (5) -> ESP32 GPIO 0 kontaktų RST kaiščio antraštė (6) -> ESP32 EN kaištis

8 žingsnis: išvalykite „TicTac“dėžutę

„TicTac“dėžutės valymas
„TicTac“dėžutės valymas
  • Valgykite visus saldumynus
  • Pašalinkite lipdukus

9 žingsnis: išspauskite į dėžutę

Suspauskite į dėžutę
Suspauskite į dėžutę
Suspauskite į dėžutę
Suspauskite į dėžutę
Suspauskite į dėžutę
Suspauskite į dėžutę

Suspauskite visus komponentus į „TicTac“dėžutę, būkite atsargūs, nenuplėškite jokių laidų.

10 žingsnis: Paruoškite programinę įrangą

Paruoškite programinę įrangą
Paruoškite programinę įrangą
Paruoškite programinę įrangą
Paruoškite programinę įrangą

„Arduino IDE“

Atsisiųskite ir įdiekite „Arduino IDE“, jei dar ne:

www.arduino.cc/en/Main/Software

arduino-esp32

Įdiekite ESP32 aparatinės įrangos palaikymą

Išsamios diegimo populiariose operacinėse sistemose instrukcijos.

„Linux“: https://www.arduino.cc/en/Guide/Linux (taip pat žr. „Arduino“žaidimų aikštelės puslapį

„MacOS X“:

„Windows“:

Nuoroda:

11 veiksmas: užprogramuokite ESP32

Užprogramuokite ESP32
Užprogramuokite ESP32
Užprogramuokite ESP32
Užprogramuokite ESP32
Užprogramuokite ESP32
Užprogramuokite ESP32
Užprogramuokite ESP32
Užprogramuokite ESP32
  • Atsisiųskite „Arduino“programą:
  • Keisti parametrus:

#define WIFI_SSID „YOURAPSSID“

#define WIFI_PASSWORD "YOURAPPASSWORD" #define POST_URL "https:// YOURSERVERNAMEORIP: 3000/"

  • Pasirinkite plokštę: bet kuri ESP32 plokštė
  • Pasirinkite skaidinį: Nėra OTA / minimalių SPIFFS
  • Įkelti

12 veiksmas: gaukite duomenis

Gauti duomenis
Gauti duomenis

Jei dar neturite HTTP serverio POST duomenims gauti, galite pabandyti naudoti šią paprastą „Node.js“programą:

Pateikiame gautus duomenų pavyzdžius:

2018 m. Kovo 20 d., 08:44:41 GMT+0000 (UTC): [{"Adresas": "6e: 3d: f0: a0: 00: 36", "Rssi": -65, "ManufacturerData": "4c0010050b1047f0b3"}, {"Adresas": "f8: 04: 2e: bc: 51: 97 "," Rssi ": -94," ManufacturerData ":" 75004204018020f8042ebc5197fa042ebc519601000000000000 "}, {" Adresas ":" 0c: 07: 4a: fa: 60: dd "," Rssi ": -96," ManufacturerData ": "4c0009060304c0a80105"}]

13 žingsnis: Galios matavimas

Galios matavimas
Galios matavimas
Galios matavimas
Galios matavimas
Galios matavimas
Galios matavimas

Programa nuskaito BLE signalą 30 sekundžių, tada giliai užmiega 300 sekundžių ir tada nuskaito dar kartą. Kiekvienai kilpai ji sunaudoja apie 3,9 mWh.

Teoriškai jis gali veikti: (vėliau atnaujinsiu bandymo rezultatą savo „Twitter“)

300 mAh Lipo / 3,9 mWh @ 330 sekundžių

= [(300 mA * 3,3 V) mWh / 3,9 mWh * 330] sekundės ~ 83769 sekundės ~ 23 valandos

2018-04-08 atnaujinimas:

Aš pakeičiau naudoti XC6503D331 LDO reguliatorių ir padariau 2 matavimus:

1 raundas: 12:43:28 - 16:42:10 (~ 20 valandų) 210 BLE nuskaitymo POST gautas

2 raundas: 10:04:01 - 05:36:47 (~ 19.5 valandos) 208 BLE nuskaitymas POST gautas

14 žingsnis: laimingas nuskaitymas

Laimingas nuskaitymas!
Laimingas nuskaitymas!

Atėjo laikas rasti vietą, kur susikurti BLE stebėjimo tinklą!

Rekomenduojamas: