Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
Sveiki visi, šiandien noriu pasidalinti su jumis projektu, kurį neseniai padariau, ieškojau įrenginio, kuris prijungtų jį patalpoje/lauke ir leistų žmonėms prisijungti prie jo naudojant savo išmanųjį telefoną ir suteikti jiems galimybę apsilankyti konkrečioje svetainėje arba reklamuoti jiems skirtą produktą.
geriausias sprendimas buvo naudoti kažką vadinamo „Eddystone“, kuris leidžia siųsti URL į kliento įrenginius „Smartphone /Tablet“.
taigi šiame straipsnyje žingsnis po žingsnio parodysiu, ką naudojau ir kaip viską sujungiau bei programinę įrangą/programas, kurias naudoju šiame projekte.
Pirma: iliustruokite problemą
jei norite naudoti bet kokį prietaisą patalpose / lauke, turite tai padaryti:
- atsparus vandeniui.
- maitinkite jį iš akumuliatoriaus
- baterijos veikimo laiką kuo ilgiau
- lengvai įkrauti akumuliatorių „, pavyzdžiui, per„ micro USB “
kad jis taptų atsparus vandeniui, geriausias sprendimas buvo rasti 3D spausdintą objektą, galintį laikyti prietaisą viduje, lengvai jį atidaryti ir vėl uždaryti, ir tikrai neleisti vandeniui patekti į prietaiso vidų ir jį sugadinti.
Naudojant ličio jonų polimerų akumuliatorių buvo geriausias pasirinkimas, mažas dydis, didelė talpa ir lengva jį įkrauti, nes „Adafruit nRF52“plunksna turi įmontuotą ličio jonų akumuliatoriaus įkrovimo grandinę.
pradėkime nuo 3D spausdinto objekto, radau šį dizainą thingiversewebsite, kurį sukūrė: Jorg Jorgensen "ačiū Jorg" Aš atspausdinau 100% masteliu, bet jis buvo labai mažas, kad tilptų visi jame esantys komponentai, todėl aš jį spausdinu 200% skalę ir duokite man tai, ko tiksliai noriu
Man patinka šis dizainas, nes gerai uždarius, vanduo nepatenka į vidų.
atsisiųskite dizainą iš šios nuorodos žemiau
https://www.thingiverse.com/thing:2246144
1 žingsnis: šio projekto komponentai
šiam projektui atlikti reikia tik kelių komponentų:
- „Adafruit nRF52“plunksnų lenta tiekiama su „nRF52832 BE“.
- Smeigtuko antraštė, antraštė moterims ar vyrams „ir tai neprivaloma“.
- Ličio jonų polimerinė baterija, aš naudoju 3,7 V / 1000 mA bateriją, jei baterija yra be jungties, būtinai nusipirkite JST 2 kontaktų lizdą.
- mini duonos lenta.
- UHU klijai.
2 žingsnis: Techninės įrangos / programinės įrangos paruošimas
nėra labai sunku viską sujungti, tačiau pirmiausia turime įrengti mini kepimo lentą ir akumuliatorių įrenginio viduje, naudodami UHU klijų klijus, ir užtikrinkite, kad jis išdžiūtų bent valandą.
įkrauti ličio jonų akumuliatorių, mano atveju aš lituosiu laidus prie akumuliatoriaus, kad prijungčiau jį prie JST jungties.
Dabar pereikime prie programinės įrangos:
pirmiausia turite turėti „Arduino IDE“„atsisiųskite jį iš čia“, tada eikite į failą >> Nuostatos
Pridėkite https://www.adafruit.com/package_adafruit_index.js… kaip „Papildomą valdybos vadovo URL“(žr. Paveikslėlį žemiau).
Tada eikite į įrankių >> lentos >> lentų tvarkyklę ir suraskite nRF52 ir įdiekite
dabar iš naujo paleiskite arduino IDE ir iš lentų pasirinkite adafruit nRF52.
programinė įranga yra paruošta naudoti ir galite įkelti eskizus į „nRF52“plokštę
3 žingsnis: švyturėlio režimas
iš „Wikipedia I citata“„Bluetooth“švyturėliai yra aparatūros siųstuvai - „Bluetooth“mažos energijos (LE) įrenginių klasė, kuri perduoda savo identifikatorių į netoliese esančius nešiojamuosius elektroninius įrenginius. Ši technologija leidžia išmaniesiems telefonams, planšetiniams kompiuteriams ir kitiems įrenginiams atlikti veiksmus, esančius šalia švyturėlio ", kad galėtume perduoti UUID" visuotinai unikalų identifikatorių "į netoliese esančius įrenginius
galite siųsti UUID, pagrindinį ir mažąjį numerius ir nustatyti tx galią ir RSSI @ 1 metrą.
įkelkite šį kodą į savo nRF52 plokštę
galite ATSISIŲSTI iš „github“
/************************************************ ******************** MIT licencija, daugiau informacijos ieškokite LICENCIJOJE Visas tekstas ir toliau pateiktas ekranas turi būti įtraukti į bet kokį perskirstymą
Originalus kodas paimtas iš „Adafruit Bluefruit“pavyzdžio
Pakeitė: Mohannad Rawashdeh https://mb-raw.blogspot.com/ šis kodas veiks „Android“/ „iOS“įrenginiuose
„Android“programos pavadinimas: švyturėlių skaitytuvas
„Apple“programos pavadinimas: pagrindiniai švyturiai eina į švyturėlio programą ir pamatysite įrenginio pavadinimą („ibeacon“/„Rawashdeh“) UUID: B3D6F818-DA71-09ED-EA80-F3C45FB19A50 Major = 0x01 Minor = 0x08 Beacon_RSSI -73db; ************************************************* *******************/ #įtraukimas
#define MANUFACTURER_ID 0x004C // „Apple“galiojantis gamintojo ID
int Major = 0x01;
int Minor = 0x08; int Švyturys_RSSI = -73; int Tx_power = 4; // „AirLocate“UUID: B3D6F818-DA71-09ED-EA80-F3C45FB19A50 uint8_t beaconUuid [16] = {0xB3, 0xD6, 0xF8, 0x18, 0xDA, 0x71, 0x09, 0xED, 0xEA, 0x0, 0x0, 0x0, 0x50,}; BLEBeacon švyturys (beaconUuid, Major, Minor, Beacon_RSSI);
negaliojanti sąranka ()
{Bluefruit.begin (); Bluefruit.autoConnLed (klaidinga); Bluefruit.setTxPower (Tx_power); Bluefruit.setName („Rawashdeh“); beacon.setManufacturer (MANUFACTURER_ID); Bluefruit. ScanResponse.addName (); Bluefruit. Advertising.setBeacon (švyturys); Bluefruit. Advertising.restartOnDisconnect (tiesa); Bluefruit. Advertising.setInterval (160, 160); // 0,625 ms vienete Bluefruit. Advertising.setFastTimeout (15); // sekundžių skaičius greitu režimu „Bluefruit. Advertising.start“(0); // 0 = Nenutraukite reklamos po n sekundžių // Suspend Loop () sustabdyti energiją suspendLoop (); }
tuštumos kilpa ()
{ }
jei turite „Android“įrenginį
Eikite į „Play“parduotuvę ir atsisiųskite švyturėlių skaitytuvo programą „Aš naudoju 2 programas čia ir čia“
lengvai prijunkite akumuliatorių prie įrenginio, atidarykite programą ir pamatysite rezultatus „patikrinkite paveikslėlį aukščiau“
jei turite IOS įrenginį „iphone/ipad“
geriausia programa, kurią radau, yra „Core beacons“, atsisiųskite ją iš programų parduotuvės
kita programa „tik švyturėliams“yra švyturys „Ranging“, ne tokia gera, bet aš ją panaudojau greitam bandymui.
jei naudojate „IOS“įrenginius, jei naudojate švyturėlį „Ranging“, pirmiausia turite pridėti UUID, o tada prisijungti prie įrenginio, kuris nėra patikimas, todėl naudokite „Core beacon“
4 žingsnis: Eddystone, bendrinkite savo svetainę/produktą/paslaugą visiems
naudodami „eddystone“galite nusiųsti URL į netoliese esantį įrenginį ir nukreipti juos į savo svetainę arba tinklalapį ar net vietos URL…tt
įkelkite kodą, galite jį atsisiųsti iš „github“
/************************************************ ******************** MIT licencija, daugiau informacijos ieškokite LICENCIJOJE Visas tekstas ir toliau pateiktas ekranas turi būti įtraukti į bet kokį perskirstymą
Originalus kodas paimtas iš „Adafruit Bluefruit“pavyzdžio
Pakeitė: Mohannad Rawashdeh https://mb-raw.blogspot.com/ šis kodas veiks „Android“/ „iOS“įrenginiuose
„Android“programos pavadinimas: švyturėlių skaitytuvas
„Apple“programos pavadinimas: pagrindiniai švyturiai eikite į švyturėlio programą ir pamatysite įrenginio pavadinimą („ibeacon“/„Rawashdeh“) URL: https://mb-raw.blogspot.com Beacon_RSSI -56db; ************************************************* *******************/ #įtraukimas
// mano tinklaraščio URL
#define URL "https://mb-raw.blogspot.com" //#apibrėžti URL "https://www.instructables.com" int Tx_power = 4; int Švyturys_RSSI = -56; EddyStoneUrl eddyUrl (Švyturys_RSSI, URL);
negaliojanti sąranka ()
{Bluefruit.begin (); Bluefruit.setTxPower (Tx_power); Bluefruit.setName („Rawashdeh“); Bluefruit. ScanResponse.addName (); Bluefruit. Advertising.setBeacon (eddyUrl); Bluefruit. Advertising.restartOnDisconnect (tiesa); Bluefruit. Advertising.setInterval (320, 320); // 0,625 ms vienete Bluefruit. Advertising.setFastTimeout (15); // sekundžių skaičius greitu režimu „Bluefruit. Advertising.start“(0);
}
tuštumos kilpa ()
{
}
jei turite „Android“įrenginį Eikite į „Play“parduotuvę ir atsisiųskite švyturėlių skaitytuvo programą „Aš čia naudoju 2 programas“, lengvai prijunkite akumuliatorių prie įrenginio ir atidarykite programą ir pamatysite rezultatus „patikrinkite aukščiau esantį vaizdą“.
jei turite „iOS“įrenginį „iphone/ipad“, geriausia programa, kurią radau, yra „Core beacons“, atsisiųskite ją iš programų parduotuvės.
galite pamatyti mano greito kodo testo vaizdo įrašą.