Kazalo:

Opozorilo o vizualnem obvestilu: 9 korakov
Opozorilo o vizualnem obvestilu: 9 korakov

Video: Opozorilo o vizualnem obvestilu: 9 korakov

Video: Opozorilo o vizualnem obvestilu: 9 korakov
Video: CS50 2014 – 9-я неделя, продолжение 2024, Julij
Anonim

Ta vadnica vas uči, kako kodirati in obvestiti Phillips Hue na opozorilo. To bi bilo zelo koristno za ljudi, ki so gluhi in naglušni, imajo slabovidnost ali senzorične motnje. Opozorilo o vizualnem obvestilu je obveščanje uporabnikov po prejemu obvestil iz e-pošte, Facebooka, Trella ali podobnega. LED žarnica Hue začne opozarjati s utripanjem lučke.

Photon Particle je majhen, reprogramiran razvojni komplet Wi-Fi za izdelavo prototipov in razširitev vašega izdelka Internet of Things.

1. korak: Seznam strojne in programske opreme

Za razvoj kod za opozorilo o vizualnem obvestilu potrebujete strojno in programsko opremo.

Strojna oprema

  • Komplet za ustvarjanje delcev
  • Philips Hue - Začetni komplet (3 LED žarnice in 1 Hue Bridge)

Programska oprema

  • Splošne informacije o fotonu delcev
  • Spletni IDE delcev (zgradba) *Potreben za prijavo *
  • IFTTT (Če to potem to)

2. korak: Namestitev

Imeti morate svoj komplet za ustvarjanje delcev, ki vključuje vse, kot so senzorji, mostične žice, LED, upori in drugo. Več informacij o fotonu delcev si lahko preberete.

Preden priključite svoj foton, morate vedeti stanje LED na fotonu. Tu so informacije o stanju LED.

Povežite svoj Photon

  1. Priključite kabel USB v vir napajanja. (Vaš računalnik v ta namen deluje odlično). Naprava z delci ne potrebuje računalnika za povezavo z wifi.
  2. Ko je priključen, mora LED RGB na vaši fotonski napravi začeti utripati modro. Če vaša naprava ne utripa modro, pridržite gumb SETUP 10 sekund, nato spustite gumb SETUP.
  3. Prijavite se Setup Particle, če že imate račun. Če nimate računa, ustvarite račun za Photon.
  4. Kliknite Photon/P Series.
  5. Ko kliknete NAPREJ, se vam prikaže datoteka (photonsetup.html)
  6. Če želite prenesti datoteko, kliknite NASTAVI Z LOKALNO DATOTEKO.

Po odprtju datoteke

  1. Povežite računalnik s Photonom tako, da se povežete z omrežjem PHOTON-…
  2. Konfigurirajte poverilnice za Wi-Fi. Opomba: če napačno vnesete poverilnice, bo Photon utripal temno modro ali zeleno. Ponovno morate iti skozi postopek tako, da osvežite stran ali kliknete na del ponovnega postopka.
  3. Preimenujte svojo napravo. Če je naprava zahtevana ali ne, se prikaže potrditev.

Preden se pomaknete na naslednji del, če ima vaša naprava Photon dihajočo modrino, je to uspešno za internet in Photon Cloud! Prehajamo na IDE delcev, Build.

3. korak: Kodiranje v IDE za delce

Ustvariti morate račun za IDE delcev, Build. Če že imate račun, potem super! Prijavite se IDE delcev.

Preveriti želimo, ali LED utripa na plošči. Na vaši fotonski plošči je majhna modra LED. Je poleg D7. Lahko prenesete datoteko, gettingstarted-blinknet.ino in si tam ogledate kode. Obstaja razlaga. Kliknite to povezavo, da odprete izvorno kodo v spletnem IDE -ju za delce. Če D7 (mala modra LED) utripa, čestitamo, pravkar ste utripali z uporabo naprave za delce! Če želite izvedeti več o Photonu, na primer utripanje različnih LED, branje foto senzorja itd., Je tukaj povezava.

Zdaj se bomo premaknili na Philips Hue.

4. korak: Philips Hue

Image
Image
Philips Hue
Philips Hue
Philips Hue
Philips Hue

Za referenco: Kliknite tukaj za API Phillips Hue.

Preden dostopate do dokumentacije API -ja Philips Hue, se morate registrirati kot razvijalec. Je brezplačen, vendar morate sprejeti določila in pogoje.

1. Najprej se prepričajte, da je vaš Philips Hue Bridge (prva slika) povezan z vašim omrežjem, da deluje pravilno. Preizkusite aplikacijo Hue (aplikacija Hue je na voljo v sistemih iOS in Android), ki nadzoruje luč v istem omrežju.

Če ga uspešno preizkusite, morate odkriti naslov IP mostu v svojem omrežju. Uporabite Philipsovo odkritje strežnika posrednikov na spletnem mestu www.meethue.com/api/nupnp.

Ko najdete svoj naslov IP, ga vnesite v naslovno vrstico brskalnika z debug/clip.html, dodanim URL -ju: https:// bridge IP Address/debug/clip.html. Videti bi moral vmesnik (druga slika), kot je ta. Opomba: Zamenjajte "bridge IP Address" na svoj IP naslov.

2. Naredimo preprost ukaz in dobimo informacije o vašem sistemu odtenkov. Izpolnite spodnje podatke, tako da pustite telo prazno in pritisnite gumb GET. Moral bi videti tak vmesnik (tretja slika). Morali bi dobiti sporočilo o napaki. Opomba: Zamenjajte "bridge IP Address" na svoj IP naslov.

Naslov: https:// bridge IP Address/api/newdeveloperTelo: Metoda: GETČestitamo! Pošljete samo prvi ukaz! 3. Nato izpolnite spodnje podatke in pritisnite gumb POST. Opomba: Zamenjajte "bridge IP Address" na svoj IP naslov in "phonetype name" na svojem telefonu.

Naslov: https:// bridge IP naslov/apiBody: {"devicetype": "my_hue_app#ime telefonske vrste"} Metoda: POST

Povezava vam pomaga ustvariti. Ko pritisnete gumb POST, bi se morali vrniti sporočilo o napaki (četrta slika), ki vas obvešča, da morate pritisniti gumb za povezavo na mostu Hue. To je varnostni korak, tako da le luči lahko upravljajo samo aplikacije ali strežniki. S pritiskom na povezavo na mostu Hue dokažete, da ima uporabnik fizični dostop do mosta Hue.

Ko dobite uspešen odgovor (peta slika), čestitam! Pravkar ste ustvarili pooblaščenega uporabnika, ki ga bomo odslej uporabljali.

4. Zadnji primer, preden ga vključimo v fotonski delček, se prepričajte, da je ena od vaših luči vidna in prižgana, in morate vedeti, katera svetlobna luč je. Spremenite URL v/api/username/lights/light number/state (spremenite številko luči [lahko je 1, 2, 3 ali?]) In pošljite gumb PUT z naslednjimi podatki:

Opomba: Poskrbite, da spremenite naslov IP mostu, uporabniško ime in številko luči

Naslov: https:// most IP address/api/username/lights/light number/state

Telo: {"on": true, "sat": 254, "bri": 254, "hue": 10000}

Metoda: PUTI Morali bi videti, da vaša luč spreminja barvo:

5. korak: Nastavitev Photona z gumbom in žicami

Nastavitev Photona z gumbom in žicami
Nastavitev Photona z gumbom in žicami
Nastavitev Photona z gumbom in žicami
Nastavitev Photona z gumbom in žicami

Preden v Photon Web IDE razvijemo več kod, želimo svoj Photon nastaviti z gumbom in žicami. Imate več gumbov in veliko žic iz vašega kompleta za zagon delcev. Priložil sem dve sliki, eno je diagram, drugo pa dejanska slika.

  1. Poskrbite, da boste svoj foton postavili na mizo.
  2. Na spodnji del plošče postavite gumb, kot je prikazano na sliki.
  3. Konec črne žice vstavite v J4 (GND), drugi konec iste črne žice pa v J30.
  4. Konec rumene žice vstavite v J7 (D5), drugi konec iste rumene žice pa v J28.

Če se ujemajo z mojo podobo, ki vam jo pokažem, ste dobri!

Korak 6: Pisanje kod v fotonskih delcih

Pisanje kod v fotonskih delcih
Pisanje kod v fotonskih delcih

Prvo aplikacijo bomo ustvarili v Photon Particle - spletni IDE.

  1. Pojdite na https://build.particle.io/build in se prijavite (registrirajte se, če še niste ustvarili)
  2. V polje »Trenutna aplikacija« vnesite »Opozorilo o vizualnem obvestilu«.
  3. Pritisnite gumb Enter (glej prvo sliko).

Aplikacija je shranjena v oblaku Photon Particle Cloud. Funkcija setup () se pokliče, ko se aplikacija enkrat zažene in zažene. Funkcija loop () naredi točno to, kar počne, in se zaporedno zanka, kar omogoča, da se vaša aplikacija spremeni in odzove.

Če želite dodati HttpClient za fotonski delček:

  1. V spodnjem levem kotu spletnega IDE kliknite Knjižnice.
  2. V iskalno vrstico vnesite "HttpClient".
  3. V modrem gumbu kliknite "Vključi v projekt".
  4. Kliknite VisualNotificationAlert (odstrani presledke, potem ko ste ustvarili aplikacijo).
  5. Kliknite Potrdi.

Zdaj je dodal HttpClient na začetku spletne IDE.

/ Ta stavek #include je IDE delcev samodejno dodal. #Include

/*** Konfiguracija za Philip Hue ***

/ 1. To zamenjajte z uporabniškim imenom API iz 1. koraka const String API_USERNAME = "Vaše uporabniško ime API"; // 2. Zamenjajte to z naslovom IP vašega mostu iz 1. koraka IPAddress hueIP (x, x, x, x); // 3. Zamenjaj s potjo do luči, ki jih želiš nadzorovati. S spletno stranjo iz 1. koraka preverite, ali deluje. // Prepričajte se, da prepoznate številko luči Philip Hue ///lights/NUMBER/state const String LIGHT_PATH = "/lights/Number/state"; // 4. Zamenjajte to s telesom vaše zahteve za prižig luči. const String REQUEST_BODY_ON = "{" vklopljen / ": true, \" bri / ": 254}"; // 5. Zamenjajte to s telesom vaše zahteve za izklop luči. const String REQUEST_BODY_OFF = "{" v / ": false, \" bri / ": 254}"; / *** END Konfiguracija za Philip Hue *** / Gumb const int BUTTON_PIN = D5; // objekt HttpClient, uporabljen za pošiljanje zahtev HTTP mostu Hue HttpClient http; // Privzeta glava za zahteve HTTP http_header_t headers = {{"Sprejmi", "*/*"}, {NULL, NULL} // OPOMBA: Glave bodo vedno zaključene z NULL}; // Objekti zahtev in odzivov http_request_t request; http_response_t odgovor; void setup () {Serial.begin (9600); request.ip = hueIP; request.port = 80; // Vgrajena LED kot indikatorska lučka za zaznani način pinMode (D7, OUTPUT); // Za vnos definiramo BUTTON_UP kot vhodni dvig. Ta uporablja notranji vlečni upor // za upravljanje doslednih odčitkov z naprave. pinMode (BUTTON_PIN, INPUT_PULLUP); // nastavi pin kot vhod // Naročimo se na IFTTT dogodek, imenovan Button, tako da zanj dobimo dogodke Particle.subscribe ("RIT_Gmail", myHandler); Particle.subscribe ("Trello", myHandler); } // funkcija setup () void loop () { / * * To je odsek testiranja, ali lučka opozori * / //, če z branjem pritisnete gumb ali ne. int buttonState = digitalno branje (BUTTON_PIN); // Ko pritisnete gumb, dobimo NIZKI signal. // Ko gumba NI PRITISNEGA, dobimo HIGH. if (buttonState == LOW) gmailAlert (); } // funkcija loop () void printInfo () {Serial.print ("Aplikacija> / tResponse status:"); Serial.println (response.status); Serial.print ("Aplikacija> / tHTTP Response Body:"); Serial.println (response.body); } // funkcija printInfo () int i = 0; // Funkcija, ki obravnava dogodek iz IFTTT void myHandler (const char *dogodek, const char *podatki) {// Test za tiskanje v serijski Serial.print (dogodek); Serial.print (", podatki:"); if (podatki) Serial.println (podatki); else Serial.println ("NULL"); if (strcmp (dogodek, "Trello") == 0) {trelloAlert (); } else if (strcmp (event, "Gmail") == 0) {gmailAlert (); }} // funkcija myHandler () /** Vrednost odtenka za nastavitev svetlobe. * Vrednost odtenka je ovojna vrednost med 0 in 65535. * Tako 0 kot 65535 sta rdeča, * 25500 je zelena in 46920 je modra. * / / *** Z modro barvo vas bo opozorilo s pametno žarnico Philips Hue. Opozoril bo 15 sekund. */ void trelloAlert () {String trello_body_alert = "{" on / ": true, \" bri / ": 255, \" sat / ": 255, \" hue / ": 46920, \" alert / ": / "lizberi \"} "; sendHttpPut (trello_body_alert); } /*** Opozoril bo z uporabo pametne žarnice Philips Hue z rdečo barvo. Opozoril bo 15 sekund. */ void gmailAlert () {String gmail_body_alert = "{" on / ": true, \" sat / ": 254, \" bri / ": 254, \" hue / ": 65535, \" alert / ": / "lizberi \"} "; sendHttpPut (gmail_body_alert); }/** * PUT bomo poslali v Philips Hue * @param httpPutBody telo niza */void sendHttpPut (String httpPutBody) {request.path = "/api/" + API_USERNAME + LIGHT_PATH; request.body = httpPutBody; http.put (zahteva, odgovor, glave); }

Ko končate z vnosom ali kopiranjem kode v svojo spletno IDE Photon Particle, kliknite ikono za preverjanje (Preveri) v zgornjem levem kotu vrstice. Če je zelo uspešna, gremo na naslednji korak!

Korak 7: Nalaganje kode na Photon

Ta korak je zelo preprost. Preden kode naložimo v Photon:

  1. Priključite kabel USB v vir napajanja (priporočam prenosni računalnik).
  2. Prepričajte se, da ima vaš foton dihalno modro LED. Če ne diha modrikasto ali ima drugačno barvo, pojdite na 2. korak: Namestitev
  3. V spletnem IDE -ju Photon Particle kliknite ikono Lighting.
  4. Ko naloži kode na Photon, bi morali videti magenta. To pomeni, da se koda začne nalagati v kodo. Nato bo hitro utripal zeleno, nato pa se vrnil k dihanju v modri barvi.
  5. Pritisnite gumb, da preverite, ali vaša Philips pametna žarnica utripa (ali opozori).

Če vas Philips Smart Bulb opozori, čestitamo! Skoraj smo že končali!

Prešli bomo na programski del.

8. korak: Ustvarjanje apletov iz IFTTT (če to, potem tisto)

Programčke bomo ustvarili s spletnega mesta IFTTT (Če to, potem tisto). Appleti bodo objavili dogodek na Photonu, nato pa Photon pošlje ukaz na Philips Hue Bridge, da opozori pametne žarnice.

Za ta projekt bomo uporabljali Trello in Gmail za objavo dogodkov v Photonu.

Pojdite na https://ifttt.com/ in se prijavite.

Trello

  1. Na vrhu kliknite Moji jabolki.
  2. Kliknite Nov programček.
  3. Kliknite + to v modrem besedilu.
  4. V iskalno vrstico vnesite Trello in kliknite.
  5. Kliknite Kartica, ki mi je dodeljena.
  6. Izberite svojo ploščo iz Trella.
  7. Kliknite +to v modrem besedilu.
  8. V iskalno vrstico vnesite Particle in kliknite.
  9. Kliknite Objavi dogodek.
  10. Vnesite »Trello« v Nato objavi (Ime dogodka).
  11. Izberite javno.

Gmail (Opomba: ko se prijavite, bodo uporabili vaš e -poštni naslov)

  1. Na vrhu kliknite Moji jabolki.
  2. Kliknite Nov programček.
  3. Kliknite + to v modrem besedilu.
  4. V iskalno vrstico vnesite Gmail in kliknite
  5. Izberite Vsako novo e -poštno sporočilo v mapi »Prejeto«
  6. Kliknite +to v modrem besedilu.
  7. V iskalno vrstico vnesite Particle in kliknite
  8. Kliknite Objavi dogodek.
  9. Vnesite »Gmail« v Nato objavi (Ime dogodka).
  10. Izberite javno.

Ko delujeta dva appleta, Trello in Gmail, prehajamo na zadnji korak.

9. korak: Končno testiranje

Preizkusili bomo objavo dogodkov od apletov do fotona. Prepričajte se, da so vaši programčki vklopljeni.

Trello

Ko nekdo ustvari novo kartico v Trellu, vas bo dodelil (označil) na kartici. IFTTT to posluša in začne objavljati dogodek na Photonu. Nato Photon pošlje ukaz na most Philip Hue, da opozori pametne žarnice.

Gmail

Ko v mapo »Prejeto« prejmete novo e -poštno sporočilo, IFTTT to posluša in začne objavljati dogodek v Photonu. Nato Photon pošlje ukaz na most Philip Hue, da opozori pametne žarnice.

Izzivi

  • Kadar koli dobimo novo obvestilo iz Trella in Gmaila, pride do velike zamude pri pošiljanju dogodka iz IFTTT in pošiljanju ukaza iz Photona. Za opozarjanje pametnih žarnic bi moralo trajati manj kot 5 minut.
  • Gmailov programček se včasih sam izklopi, ker ga je treba znova povezati ali posodobiti.

Priporočena: