„Bluetooth“ LE doc-a-thon ITP stovykloje - 💡 Fix My Ideas

„Bluetooth“ LE doc-a-thon ITP stovykloje

„Bluetooth“ LE doc-a-thon ITP stovykloje


Autorius: Ethan Holmes, 2019

„Bluetooth“ LE doc-a-thon ITP stovykloje

Šiuo metu esu Niujorke šių metų ITP stovyklai, 4 savaičių nesutarimams ir technologijų žaidimų aikštelei užimtas žmonėms. Kiekvieną birželį vyksta ITP, ji suburia įvairią visų rūšių kūrėjų, menininkų, muzikantų ir kūrybinių grupių grupę, kad galėtumėte išgirsti, išgirsti garsiakalbius pažangiausioje technologijų ir meno srityje ir bendradarbiauti su žmonėmis, kurių jie paprastai nesutiktų .

Tai taip pat vieta, kur padaryta tai, ką nesugebėjote rasti laiko ir tikriausiai ne kitaip, ir todėl praėjusią savaitę sėdėjau kartu su Tomu Igoe, Don Coleman, Sandeep Mistry, Guan Yang, JB Kim ir kiti - dviejų dienų „Bluetooth“ LE doc-a-thon.

Visi dirbome su „Bluetooth“ LE įrenginiais - kartu su „Don“ ir „Sandeep“ rašau knygą „Make“: „Bluetooth“ LE, mobiliuosius telefonus ir jutiklius, o „Guan“ ir „JB“ turi paleidimo pastato „Bluetooth“ LE įrenginius, bet visi sutiko kad „Bluetooth“ LE pradžia buvo daug sunkiau, nei turėtų būti, ir kad daugybė puikių darbų, kurių žmonės darė, sumažėjo ant grindų (ar dar blogiau dar kartą), nes žmonės nežinojo, kad jie egzistavo. Mes nusprendėme atsisėsti ir kažką daryti.

Taigi, kaip dalis mūsų doc-a-thon, mes surinko dokumentus, vaizdo įrašus ir kodo pavyzdžius, kuriuos tikėjomės daryti tik tai.

Kaip skiriasi „Bluetooth“ LE?

„Bluetooth“ LE labai skiriasi nuo klasikinio „Bluetooth“, iš tikrųjų vienintelis dalykas yra tas pats pavadinimas.

„Tom Igoe“ ir „Don Coleman“ pateikia „Bluetooth“ mažos energijos apžvalgą.

Tikriausiai esate pripratę prie radijo, kaip panašaus į serijinį ryšį, panašų į pokalbį tarp dviejų telefonų, kai tik užmezgate ryšį, kiekvienas žmogus kalba kaip ir kiti klausytojai ir atvirkščiai. Jie lieka prijungti, net jei nė vienas nesako nieko, kol vienas nebesikabins ir skambutis baigsis.

Tokiose sistemose duomenys perduodami naudojant eilę, o kai duomenis nuskaito imtuvas, jis ištrinamas iš eilės, kaip ir tada, kai mano žodžiai pasiekia ausis telefonu, jie iš ryšio kanalo. Efektyviai tai veikia „Classic“ „Bluetooth“.

„Bluetooth“ LE yra labai skirtingas. Vietoj to, kad „Bluetooth“ LE radijas veiktų kaip taškas-taškas ryšys, kaip ir telefonas, jis veikia kaip bendruomenės skelbimų lenta, o kiekvienas radijas veikia kaip lenta ar lenta.

Jei jūsų radijas yra skelbimų lenta, vadinama periferiniu įrenginiu „Bluetooth LE“ žinyne, ji skelbia duomenis savo lentoje, kad visi galėtų skaityti bendruomenėje. Jei jūsų radijas yra skaitytuvas, vadinamas centriniu įrenginiu „Bluetooth“ LE terminais, jis gali skaityti iš bet kokių lentų (išorinių įrenginių), kuriuose yra informacijos, kurią ji rūpinasi.

Jei jums nepatinka ši analogija, taip pat galite galvoti apie periferinius įrenginius kaip serverius kliento-serverio operacijoje. Panašiai centriniai įrenginiai yra „Bluetooth“ LE pasaulio klientai, nes jie skaito informaciją iš išorinių įrenginių.

Bet man patinka serijiniai ryšiai?

Dauguma (galbūt visi?) „Bluetooth“ LE radijo laužo lentos prieinamos gamintojams dabar - pavyzdžiui, „RedBearLab BLE mini“ ir „Adafruit Bluefruit LE“ - apsimeta, kad jie atrodo kaip serijiniai įrenginiai paprastumui ir naudotojui UART paslaugos pristatymui. Efektyviai šie radijo stotys yra „senas“ senojo stiliaus nuoseklusis ryšys virš pagrindinės skelbimų lentos paradigmos. Tai nulaužimas ir tikrai ne geras įsilaužimas.

Nors tai supaprastina dalykus iš „Arduino“ pusės, naudodamas tokį radiją taip, kad paneigiate „mažos energijos“ „Bluetooth“ LE dalį. Radijo imtuvai bus nuolat veikiami, o jei jūsų projektas yra akumuliatorius, tai didelė problema.

Tomas Igoe ir Don Coleman kalba apie paslaugas ir „Bluetooth“ LE.

Įsivaizduokite pavyzdį, kur norite valdyti LED, prijungtą prie „Arduino“ plokštės iš mūsų telefono per „Bluetooth“ LE. Jei naudosime nuoseklią jungtį, ryšys bus atidarytas nuolat, tačiau tik periodiškai bus naudojamasi - kai siunčiame 1 ar 0 oro srautą į „Arduino“ plokštę, kad įjungtumėte arba išjungtumėte LED.

Kaip alternatyvą, galite labai sumažinti savo projekto energijos suvartojimą naudodami „Bluetooth LE“, kaip jis turėtų būti naudojamas, ir įdiegti pasirinktinį radijo ryšį, prijungtą prie „Arduino“, kad būtų galima reklamuoti savo gebėjimą įjungti arba išjungti LED.

Grįžtant prie mūsų skelbimų lentos pavyzdžio, sukuriame lentą (paslaugą), prie kurios pridedama pastabų užrašas (žinoma kaip „Bluetooth LE“ žinutė), kurią mes galime perskaityti, leisdami mums žinoti, ar šviesos diodas yra įjungtas ar išjungtas arba rašykite - leisdami valdyti LED.

Individualios paslaugos kūrimas

Deja, iki šiol „Bluetooth“ LE užsakymui pritaikytos paslaugos iš tikrųjų buvo gana sudėtingos, o ne silpnosios širdies. Vis dėlto paprasčiau, nes dabar yra keletas gerų įrankių, kad galėtume padaryti didžiąją dalį sunkiųjų kėlimo.

Atsižvelgdami į tai, mes nusprendėme žiūrėti į vieną platformą - „Nordic Semiconductor nRF8001“ radiją - ir išsiaiškinti pilną įrankių grandinę, kuri leistų jums sukurti pasirinktinę radijo paslaugą ir pasinaudoti šia paslauga iš „Arduino“ projekto. Mes pasirinkome šį radiją, nes jis yra lengvai prieinamas ir yra gera bibliotekos parama.

Pirmas dalykas, kurį reikia padaryti, kai dirbate su „nRF8001“, įdiegti „Nordic nRFGo Studio“, o nors nRFGo yra „MS Window“ programa, ji veikia vos gerai „Mac“ operacinėje sistemoje „OS X“ naudojant „Wine“. Ši programa yra įrankis, kurį reikia sukurti „Bluetooth“ LE paslaugų konfigūracijos rinkmenai, kurią radijas reklamuos, ir kaip gaminį, jis taip pat sukuria „service.h“ antraštės failą, kurio jums reikės kaip „Arduino“ projekto dalis.

„Smart light switch“

Mūsų sumanios šviesos jungiklio pavyzdys.

Mes norėjome sukurti kažką su įvairiomis paslaugomis, todėl nusprendėme sukurti „protingą“ šviesos jungiklį, kuriame ne tik galėtumėte įjungti, nei išjungti šviesą „Bluetooth“ LE, bet gauti dabartinę šviesos jungiklio būseną (kuri taip pat galėtų būti nepriklausoma) valdyti šviesą) ir gauti pranešimą, kai jungiklis buvo perjungtas.

Šviesos valdymas naudojant „Bluetooth“ LE.

Gražus dalykas apie šį pavyzdį yra tai, kaip paprasta, už Arduino lentos ir nRF8001 radijo, mes nusprendėme naudoti „Adafruit Bluefruit LE“ laužo lentą - jums tikrai reikia tik kelių laidų, rezistorių ir kitų bendrai prieinamų dalių.

„Services.h“ konfigūracijos failo kūrimas naudojant „nRFGo Studio“ tikriausiai yra sudėtingiausia viso įrankių grandinės dalis, ir mes praleidome daug laiko, kad išsiaiškintume paprasčiausią būdą, leidžiantį įtraukti generuojamus services.h failą į „Arduino“ projektą, o ne jį reikia įtraukti į „nRF8001 Arduino“ biblioteką.

Nors tai reiškė užklausą dėl bibliotekos palaikytojo, ir keletą rankinio pakeitimų, susijusių su services.h failu, galų gale mes jį sukūrėme, o tai reiškia, kad jūs dirbate visiškai „Arduino IDE“, kai sukūrėte savo paslaugų konfigūraciją .

Išsamesnė informacija ir visi pavyzdinių projektų šaltinio kodai yra „Github“, kaip dokumentacijos ir kodo pavyzdžių, kuriuos pateikiame doc-a-thon metu, dalis.

Išvada

Dabar yra nemažai „Bluetooth“ LE įrenginių, kurie gali būti nuo nešiojamų kompiuterių iki spynų, nuo dronų iki lempučių, ir, žinoma, visada yra visur esantis „iBeacon“, tačiau taip pat vis daugiau kūrėjų lentų reiškia, kad jie naudojasi šie „Arduino“ projekto (arba tampa vienu) nebenaudojami įrenginiai taip pat tampa paprastesni. Tikimės, kad mūsų doc-a-thon pasirodys naudinga norint pagreitinti šį procesą, ir, kadangi visa tai priklauso nuo „Github“ indėlių, žinoma, labai sveikintina.



Jums Gali Būti Įdomu

Išaugo iš ugnies kosminės pelenų

Išaugo iš ugnies kosminės pelenų


Sturgeon's Mill lauko kelionė

Sturgeon's Mill lauko kelionė


Prekybos centre esanti „Makerspace“ sukuria visą pasaulį

Prekybos centre esanti „Makerspace“ sukuria visą pasaulį


Turtle Stitch eina iš kodo į siuvinėjimą

Turtle Stitch eina iš kodo į siuvinėjimą






Naujausios Žinutės