Mündəricat:

Vizual bildiriş xəbərdarlığı: 9 addım
Vizual bildiriş xəbərdarlığı: 9 addım

Video: Vizual bildiriş xəbərdarlığı: 9 addım

Video: Vizual bildiriş xəbərdarlığı: 9 addım
Video: Kim nə başa düşdü ❓ 2024, Iyul
Anonim

Bu təlimat, Phillips Hue -a xəbərdarlıq etmək üçün necə kod yazmağı öyrədir. Eşitmə və Eşitmə Qüsuru olan, görmə qabiliyyəti zəif və ya duyğu qüsurlu insanlar üçün çox faydalı olardı. Vizual Bildiriş Alert, e-poçt, Facebook, Trello və ya bənzərlərindən bildiriş aldıqdan sonra istifadəçiləri məlumatlandırmaqdır. Hue LED ampulü işığı yandıraraq xəbərdarlıq etməyə başlayır.

Photon Particle, İnternet əşyalarınızın məhsulunu prototipləşdirmək və ölçüsünü artırmaq üçün kiçik, yenidən proqramlaşdırıla bilən bir Wi-Fi inkişaf dəstidir.

Addım 1: Avadanlıq və Proqramların siyahısı

Visual Notification Alert kodlarını inkişaf etdirmək üçün hardware və proqram təminatına ehtiyacınız var.

Avadanlıq

  • Parça istehsalçısı dəsti
  • Philips Hue - Başlanğıc Kit (3 LED ampul və 1 Hue Bridge)

Proqram təminatı

  • Partikül Photon haqqında ümumi məlumat
  • Particle Web IDE (Build) *Giriş üçün tələb olunur *
  • IFTTT (Əgər belədirsə)

Addım 2: Quraşdırma

Sensorlar, tullanan tellər, LEDlər, rezistorlar və daha çoxu kimi hər şeyi ehtiva edən hissəcik istehsalçısı dəstinizə sahib olmalısınız. Particle Photon haqqında daha çox məlumatı oxuya bilərsiniz.

Fotonunuzu bağlamadan əvvəl, Fotonun LED -lərinin vəziyyətini bilməlisiniz. LED vəziyyəti haqqında məlumat budur.

Fotonunuzu qoşun

  1. USB kabelini enerji mənbəyinizə qoşun. (Kompüteriniz bu məqsədlə mükəmməl işləyir). Sizin hissəcik cihazınızın wifi -yə qoşulmaq üçün kompüterinizə ehtiyacı yoxdur.
  2. Qoşulduqda, foton cihazınızdakı RGB LED mavi yanıb -sönməyə başlamalıdır. Cihazınız mavi yanıb -sönmürsə, SETUP düyməsini 10 saniyə basıb saxlayın, sonra SETUP düyməsini buraxın.
  3. Hesabınız varsa, Quraşdırma hissəciyinə daxil olun. Hesabınız yoxdursa, Photon üçün hesab yaradın.
  4. Photon/P Seriyasına vurun.
  5. NÖVBƏTİ tıklandıqdan sonra sizə bir fayl təqdim edilməlidir (photonsetup.html)
  6. Bir faylı yükləmək üçün YERLİ DOSYA İLƏ DAVAM EDİN düyməsini basın.

Bir fayl açdıqdan sonra

  1. PHOTON adlı şəbəkəyə qoşularaq kompüterinizi Photon-a qoşun …
  2. Wi-Fi etimadnamənizi konfiqurasiya edin. Qeyd: etimadnamənizi səhv yazarsanız, Photon tünd mavi və ya yaşıl rəngdə yanıb -sönəcək. Səhifəni yeniləyərək və ya yenidən cəhd hissəsini tıklayaraq prosesi yenidən keçməlisiniz.
  3. Cihazınızın adını dəyişdirin. Cihazın iddia edildiyinə və ya edilmədiyinə dair bir təsdiq görəcəksiniz.

Növbəti hissəyə keçməzdən əvvəl, Photon cihazınızda nəfəs verən bir mavi varsa, İnternet və Photon Bulud üçün uğur qazandı! Particle IDE, Build -ə keçirik.

Addım 3: Particle Web IDE -də kodlaşdırma

Particle IDE, Build üçün hesabınızı yaratmalısınız. Hesabınız varsa, əladır! Particle IDE -yə daxil olun.

LED -in lövhədə yanıb -sönmədiyini yoxlamaq üçün test etmək istəyirik. Photon lövhənizdə kiçik mavi LED var. D7 -nin yanındadır. Başlayaraq-blinknet.ino faylını yükləyə və oradakı kodları görə bilərsiniz. Bir izahat var. Mənbə kodunu Particle Web IDE -də açmaq üçün bu linki vurun. D7 (kiçik mavi LED) yanıb -sönürsə, təbrik edirəm, yalnız Parçacıq cihazınızdan istifadə edərək bir LED yanıb -söndünüz! Photon haqqında fərqli LED -lərin yanıb -sönməsi, foto sensoru oxumaq və s.

İndi Philips Hue -a keçəcəyik.

Addım 4: Philips Hue

Image
Image
Philips Hue
Philips Hue
Philips Hue
Philips Hue

İstinad üçün: Phillips Hue API haqqında bura vurun.

Philips Hue API sənədlərinə daxil olmaq üçün bir geliştirici olaraq qeydiyyatdan keçməlisiniz. Pulsuzdur, ancaq şərtləri qəbul etməlisiniz.

1. Əvvəlcə Philips Hue Körpüsünün (ilk şəkil) şəbəkənizə düzgün qoşulduğundan əmin olun. Eyni şəbəkədəki işığı idarə edən Test Hue Tətbiqi (Hue App iOS və Android -də mövcuddur).

Uğurla test etsəniz, şəbəkənizdəki körpünün IP ünvanını kəşf etməlisiniz. Www.meethue.com/api/nupnp saytına daxil olaraq Philips -in broker server kəşfindən istifadə edin.

IP ünvanınızı tapdığınızda, URL -ə əlavə edilmiş debug/clip.html ilə brauzerinizin ünvan çubuğuna yazın: https:// körpü IP ünvanı/debug/clip.html. Buna bənzər bir interfeys (ikinci şəkil) görməlisiniz.. Qeyd: "körpü IP ünvanı" nı IP ünvanınıza dəyişdirin.

2. Gəlin sadə bir əmr edək və rəng sisteminiz haqqında məlumat əldə edək. Bədəni boş buraxaraq aşağıdakı detalları daxil edin və GET düyməsini basın. Bunun kimi bir interfeys (üçüncü şəkil) görməlisiniz. Bir səhv mesajı almalısınız. Qeyd: "körpü IP ünvanı" nı IP ünvanınıza dəyişdirin.

Ünvan: https:// körpü IP ünvanı/api/newdeveloperBody: Metod: GETTəbrik edirik! Yalnız ilk əmrinizi göndərin! 3. Sonra aşağıdakı məlumatları doldurun və POST düyməsini basın. Qeyd: "körpü IP ünvanı" nı IP ünvanınıza və "telefon növünün adını" öz telefonunuza dəyişdirin.

Ünvan: https:// körpü IP ünvanı/apiBody: {"devicetype": "my_hue_app#telefon tipi adı"} Metod: POST

Bağlantı sizin üçün yaratmağa kömək edir. POST düyməsini basdığınızda, Hue Bridge üzərindəki keçid düyməsini basmalı olduğunuzu bildirən bir səhv mesajı (dördüncü şəkil) geri qaytarılmalıdır. Bu, yalnız işıqlarınızı idarə etmək istədiyiniz tətbiqlərin və ya serverlərin təhlükəsizlik addımıdır. Hue Bridge üzərindəki bağlantıya basaraq istifadəçinin hue körpüsünə fiziki girişinin olduğunu sübut edir.

Uğurlu bir cavab aldığınızda (beşinci şəkil) təbrik edirik! Yalnız bundan sonra istifadə edəcəyimiz səlahiyyətli bir istifadəçi yaratdınız.

4. Photon Particle -ə inteqrasiya etməzdən əvvəl son nümunə, işıqlarınızdan birinin göründüyündən və yandığından əmin olun və hansı işığın hansı rəqəm olduğunu bilməlisiniz. URL -ni/api/username/lights/light number/state (işıq nömrəsini dəyişdirin [1, 2, 3 və ya ola bilər] olaraq dəyişdirin və aşağıdakı məlumatlarla PUT düyməsini göndərin:

Qeyd: Körpünün IP ünvanını, istifadəçi adını və işıq nömrəsini dəyişdirdiyinizə əmin olun

Ünvan: https:// körpü IP ünvanı/api/istifadəçi adı/işıqlar/işıq nömrəsi/dövlət

Gövdə: {"açıq": doğru, "oturdu": 254, "bri": 254, "rəng": 10000}

Metod: PUTİşığınızın rəngini dəyişdiyini görməlisiniz:

Addım 5: Düymə və Tellər ilə Fotonun Qurulması

Düymə və Tellər ilə Fotonun Qurulması
Düymə və Tellər ilə Fotonun Qurulması
Düymə və Tellər ilə Fotonun Qurulması
Düymə və Tellər ilə Fotonun Qurulması

Photon Web IDE -yə daha çox kod hazırlamadan əvvəl, Photon -u bir düymə və tellərlə qurmaq istəyirik. Partikül Başlanğıc Kitinizdə bir neçə düymə və bir çox tel var. Mənə iki şəkil əlavə etmişəm: biri diaqram, biri də əsl şəkil.

  1. Fotonunuzu çörək taxtasına yerləşdirdiyinizə əmin olun.
  2. Şəkildə göstərildiyi kimi çörək taxtasının altına bir düymə qoyun.
  3. Qara telin ucunu J4 -ə (GND) qoyun və eyni qara telin başqa bir ucunu J30 -a qoyun.
  4. Sarı telin ucunu J7 (D5) -ə qoyun və eyni sarı telin başqa bir ucunu J28 -ə qoyun.

Sənə göstərdiyim imicimə uyğun gəlirlərsə, deməli sən yaxşısan!

Addım 6: Foton hissəciyində kod yazmaq

Foton hissəciyində kod yazmaq
Foton hissəciyində kod yazmaq

İlk tətbiqimizi Photon Particle - Web IDE -də yaradacağıq.

  1. Https://build.particle.io/build ünvanına daxil olun və daxil olun (hələ yaratmadınızsa qeydiyyatdan keçin)
  2. Cari Tətbiqin altına "Vizual Bildiriş Alert" yazın.
  3. Enter düyməsini basın (ilk şəklə baxın).

Tətbiq Photon Particle Cloud -da saxlanılır. Setup () funksiyası, proqram bir dəfə işə düşəndə və işə salındıqda çağırılır. Loop () funksiyası, tətbiqinizin dəyişməsinə və cavab verməsinə imkan verərək, ardıcıl olaraq nə etdiyini və döndüyünü dəqiq şəkildə edir.

Photon Particle üçün HttpClient əlavə etmək üçün:

  1. Web IDE -nin sol altından Kitabxanalar düyməsini basın.
  2. Axtarış çubuğuna "HttpClient" yazın.
  3. Mavi düymədə "Layihəyə Daxil et" düyməsini basın.
  4. VisualNotificationAlert düyməsini basın (tətbiq yaratdıqdan sonra boşluqları silir).
  5. Təsdiq et düyməsini basın.

İndi, Web IDE -nin əvvəlinə HttpClient əlavə etdi.

/ Bu #include ifadəsi Particle IDE tərəfindən avtomatik olaraq əlavə edildi. #İnclude

/*** Philip Hue üçün konfiqurasiya ***

/ 1. Bunu 1 -ci addımdakı API istifadəçi adınızla dəyişdirin const String API_USERNAME = "API istifadəçi adınız"; // 2. Bunu Adım 1 IPAddress hueIP (x, x, x, x) köprünüzün IP ünvanı ilə əvəz edin; // 3. Nəzarət etmək istədiyiniz işıqların yolunu dəyişdirin. İşlədiyini yoxlamaq üçün 1 -ci addımdakı veb səhifədən istifadə edin. // Philip Hue işığının sayını tanıdığınızdan əmin olun ///lights/NUMBER/state const String LIGHT_PATH = "/lights/Number/state"; // 4. Bunu işığı yandırmaq istəyinizlə əvəz edin. const String REQUEST_BODY_ON = "{" on / ": true, \" bri / ": 254}"; // 5. Bunu işığı söndürmək istəyinizlə əvəz edin. const String REQUEST_BODY_OFF = "{" on / ": false, \" bri / ": 254}"; / *** Philip Hue üçün END Konfiqurasiya *** / Button const int BUTTON_PIN = D5; // HttpClient obyekti Hue körpüsünə HTTP sorğuları etmək üçün istifadə olunur HttpClient http; // HTTP istəkləri üçün standart başlıq http_header_t headers = {{"Qəbul et", "*/*"}, {NULL, NULL} // QEYD: Həmişə başlıqlar NULL olaraq sonlandırılacaq}; // İstək və cavab obyektləri http_request_t sorğusu; http_response_t cavabı; void setup () {Serial.begin (9600); request.ip = hueIP; request.port = 80; // Hiss edilmiş tap pinMode (D7, ÇIXIŞ) üçün göstərici işığı kimi göyərtədəki LED; // Giriş üçün BUTTON_UP-u giriş-çəkmə olaraq təyin edirik. Bu, cihazdan ardıcıl oxunuşları idarə etmək üçün daxili çəkmə rezistoru // istifadə edir. pinMode (BUTTON_PIN, INPUT_PULLUP); // pin olaraq girişi təyin edir // Button adlı IFTTT tədbirimizə "Abunə oluruq" ki, bunun üçün hadisələr əldə edək. Particle.subscribe ("RIT_Gmail", myHandler); Particle.subscribe ("Trello", myHandler); } // setup () function void loop () { / * * Bu, işıq siqnallarının * / // düymənin oxlanaraq vurulub -vurulmadığını öyrənmək üçün test hissəsidir. int buttonState = digitalRead (BUTTON_PIN); // Düymə sıxıldıqda LOW siqnalı alacağıq. // Düymə sıxılmadıqda YÜKSƏK alacağıq. əgər (buttonState == LOW) gmailAlert (); } // loop () funksiyası void printInfo () {Serial.print ("Application> / tResponse status:"); Serial.println (cavab vəziyyəti); Serial.print ("Tətbiq> / tHTTP Cavab Bədəni:"); Serial.println (cavab.bədən); } // printInfo () funksiyası int i = 0; // IFTTT -dən hadisəni idarə edən funksiya void myHandler (const char *hadisə, const char *data) {// Serial.print (hadisə) seriyasında çap üçün test; Serial.print (", data:"); if (data) Serial.println (data); else Serial.println ("NULL"); if (strcmp (hadisə, "Trello") == 0) {trelloAlert (); } başqa if (strcmp (hadisə, "Gmail") == 0) {gmailAlert (); }} // myHandler () funksiyası /** İşığı təyin etmək üçün rəng tonu. * Rəng dəyəri 0 ilə 65535 arasında bir sarma dəyəridir. * Həm 0, həm də 65535 qırmızı, * 25500 yaşıl və 46920 mavi rəngdədir. * / / *** Mavi rəngdən istifadə edərək Philips Hue Smart Ampul istifadə edərək xəbərdarlıq edəcək. 15 saniyə ərzində xəbərdarlıq edəcək. */ void trelloAlert () {String trello_body_alert = "{" on / ": true, \" bri / ": 255, \" sat / ": 255, \" hue / ": 46920, \" alert / ": / "lselect \"} "; sendHttpPut (trello_body_alert); } /*** Qırmızı rəngdən istifadə edərək Philips Hue Smart Ampul istifadə edərək xəbərdarlıq edəcək. 15 saniyə ərzində xəbərdarlıq edəcək. */ void gmailAlert () {String gmail_body_alert = "{" on / ": true, \" sat / ": 254, \" bri / ": 254, \" hue / ": 65535, \" alert / ": / "lselect \"} "; sendHttpPut (gmail_body_alert); }/** * PUT'u Philips Hue * @param httpPutBody sətrinin gövdəsinə göndərəcəyik */void sendHttpPut (String httpPutBody) {request.path = "/api/" + API_USERNAME + LIGHT_PATH; request.body = httpPutBody; http.put (istək, cavab, başlıqlar); }

Kodunuzu Photon Particle Web IDE -yə yazmağı və ya kopyalamağı bitirdikdə, çubuğun sol üst hissəsindəki yoxlama simgesini (Doğrula) vurun. Əgər çox uğurla yerinə yetirirsə, növbəti addıma keçəcəyik!

Addım 7: Kodun Photon -a yüklənməsi

Bu addım çox sadədir. Kodları Photon -a yükləməzdən əvvəl:

  1. USB kabelini enerji mənbəyinə qoşun (noutbuku məsləhət görürəm).
  2. Fotonunuzda nəfəs alan mavi bir LED olduğuna əmin olun. Mavi rəngli nəfəs almırsa və ya fərqli rəngdədirsə, Adım 2: Quraşdırmaya keçin
  3. Photon Particle Web IDE -dən İşıqlandırma simgesini basın.
  4. Kodları Photon -a yüklədikdə magenta görməlisiniz. Kodun koda yüklənməyə başlaması deməkdir. Sonra, tez yaşıl yanıb -sönəcək, sonra yenidən mavi nəfəs alacaq.
  5. Philips Smart Ampulunuzun yanıb -sönmədiyini (və ya xəbərdarlıq etdiyini) görmək üçün düyməni basın.

Philips Smart Bulb xəbərdarlıq edirsə, təbrik edirik! Demək olar ki, bitirdik!

Proqram təminatı hissəsinə keçəcəyik.

Addım 8: IFTTT -dən Appletlər Yaratmaq (Əgər bu belədirsə)

Apletləri IFTTT (Əgər bu, sonra) veb saytından yaradacağıq. Appletlər Photon -da bir hadisə yayımlayacaq və sonra Photon, ağıllı ampülləri xəbərdar etmək üçün Philips Hue Bridge -ə bir əmr göndərir.

Bu layihə üçün hadisələri Photon -da yayımlamaq üçün Trello və Gmail -dən istifadə edəcəyik.

Https://ifttt.com/ saytına daxil olun və qeydiyyatdan keçin.

Trello

  1. Yuxarıdakı Appletlərimi vurun.
  2. Yeni Applet düyməsini basın.
  3. Mavi mətndə + bunu vurun.
  4. Axtarış çubuğuna Trello yazın və vurun.
  5. Mənə təyin edilmiş Kartı vurun.
  6. Trello -dan lövhənizi seçin.
  7. Mavi mətndə +işarəsini vurun.
  8. Axtarış çubuğuna Particle yazın və vurun.
  9. Bir hadisə dərc et düyməsini basın.
  10. Sonra "Dərc et (Hadisə Adı)" nda "Trello" yazın.
  11. İctimai seçin.

Gmail (Qeyd: qeydiyyatdan keçdiyiniz zaman e -poçt ünvanınızı istifadə edəcəklər)

  1. Yuxarıdakı Appletlərimi vurun.
  2. Yeni Applet düyməsini basın.
  3. Mavi mətndə + bunu vurun.
  4. Axtarış çubuğuna Gmail yazın və vurun
  5. Gələnlər qutusunda hər hansı bir yeni e -poçt seçin
  6. Mavi mətndə +işarəsini vurun.
  7. Axtarış çubuğuna Particle yazın və vurun
  8. Bir hadisə dərc et düyməsini basın.
  9. Sonra "Dərc et (Hadisə Adı)" bölməsinə "Gmail" yazın.
  10. İctimai seçin.

Trello və Gmail işləyən iki applet əldə etdikdən sonra son mərhələyə keçirik.

Addım 9: Nəhayət, Test

Tədbirləri Appletlərdən Fotona qədər dərc etmək üçün test edəcəyik. Appletlərinizin açıq olduğundan əmin olun.

Trello

Kimsə Trelloda yeni bir kart yaratdıqda, sizi kartda təyin edəcək (etiket edəcək). IFTTT bunu dinləyir və Photon -da bir hadisə yayımlamağa başlayır. Sonra Photon, Philip Hue Körpüsünə ağıllı lampaları xəbərdar etmək üçün bir əmr göndərir.

Gmail

Gələnlər qutunuza yeni bir e -poçt gəldikdə, IFTTT bunu dinləyir və Photon -da bir hadisə yayımlamağa başlayır. Sonra Photon, Philip Hue Körpüsünə ağıllı lampaları xəbərdar etmək üçün bir əmr göndərir.

Çətinliklər

  • Trello və Gmail -dən yeni bir bildiriş aldıqda, IFTTT -dən bir hadisə göndərmək və Photon -dan bir əmr göndərmək üçün böyük bir gecikmə olur. Ağıllı lampaları xəbərdar etmək 5 dəqiqədən az çəkməlidir.
  • Gmail Appleti bəzən öz -özünə sönür, çünki appletə yenidən qoşulmaq və ya yeniləmək lazımdır.

Tövsiyə: