İçindekiler:

Görsel Bildirim Uyarısı: 9 Adım
Görsel Bildirim Uyarısı: 9 Adım

Video: Görsel Bildirim Uyarısı: 9 Adım

Video: Görsel Bildirim Uyarısı: 9 Adım
Video: SAMSUNG TELEFONLARDA KİMSENİN BİLMEDİĞİ BİLDİRİM AYARI #samsung #android #samsungbildirim 2024, Kasım
Anonim

Bu eğitim size, Phillips Hue'yu uyarması için nasıl kod yazacağınızı öğretir. Sağır ve İşitme Engelliler, az gören veya duyusal engelleri olan kişiler için çok faydalı olacaktır. Görsel Bildirim Uyarısı, e-posta, Facebook, Trello ve benzeri yerlerden gelen bildirimlerden sonra kullanıcıları bilgilendirmek içindir. Hue LED ampul, ışığı yakıp söndürerek uyarı vermeye başlar.

Foton Parçacığı, Nesnelerin İnterneti ürününüzü prototiplemek ve ölçeklendirmek için küçük, yeniden programlanabilir bir Wi-Fi geliştirme kitidir.

Adım 1: Donanım ve Yazılım Listesi

Görsel Bildirim Uyarısı kodlarını geliştirmek için donanım ve yazılıma ihtiyacınız var.

Donanım

  • Parçacık Yapıcı Kiti
  • Philips Hue - Başlangıç Seti (3 LED ampul ve 1 Hue Bridge)

Yazılım

  • Parçacık Fotonuna İlişkin Genel Bilgiler
  • Particle Web IDE (Derleme) *Giriş için gerekli*
  • IFTTT (Eğer Bu O Zaman Buysa)

2. Adım: Kurulum

Sensörler, atlama telleri, LED'ler, dirençler ve daha fazlası gibi her şeyi içeren Partikül Yapıcı Kitinize sahip olmalısınız. Parçacık Fotonu hakkında daha fazla bilgi okuyabilirsiniz.

Fotonunuzu bağlamadan önce, Foton üzerindeki LED'lerin durumunu bilmeniz gerekir. İşte LED durumu hakkında bilgi.

Fotonunuzu Bağlayın

  1. USB kablosunu güç kaynağınıza takın. (Bilgisayarınız bu amaç için mükemmel çalışıyor). Parçacık cihazınızın wifi'ye bağlanmak için bilgisayarınıza ihtiyacı yoktur.
  2. Fişe takıldığında, foton cihazınızdaki RGB LED'i mavi renkte yanıp sönmeye başlamalıdır. Cihazınız mavi renkte yanıp sönmüyorsa KURULUM düğmesini 10 saniye basılı tutun ve ardından KURULUM düğmesini bırakın.
  3. Zaten bir hesabınız varsa Kurulum Parçacığı'na giriş yapın. Bir hesabınız yoksa, Photon için hesap oluşturun.
  4. Foton/P Serisi'ne tıklayın.
  5. İLERİ'ye tıkladıktan sonra, size bir dosya (photonsetup.html) sunulmalıdır.
  6. Bir dosyayı indirmek için YEREL BİR DOSYA İLE DEVAM ET'i tıklayın.

Bir dosyayı açtıktan sonra

  1. PHOTON-… adlı ağa bağlanarak PC'nizi Photon'a bağlayın.
  2. Wi-FI kimlik bilgilerinizi yapılandırın. Not: Kimlik bilgilerinizi yanlış yazarsanız, Foton koyu mavi veya yeşil renkte yanıp sönecektir. Sayfayı yenileyerek veya yeniden deneme işlemi kısmına tıklayarak işlemi tekrar gözden geçirmelisiniz.
  3. Cihazınızı yeniden adlandırın. Cihazın talep edilip edilmediğine dair bir onay göreceksiniz.

Bir sonraki bölüme geçmeden önce Photon cihazınızda nefes alan camgöbeği varsa o zaman İnternete ve Photon Cloud'a başarılıdır! Parçacık IDE'sine geçiyoruz, Build.

Adım 3: Particle Web IDE'de Kodlama

Particle IDE, Build için hesabınızı oluşturmanız gerekir. Zaten bir hesabınız varsa, o zaman harika! Particle IDE'de oturum açın.

Karttaki LED'in yanıp sönüp yanıp sönmediğini test etmek istiyoruz. Foton kartınızda küçük mavi LED var. D7'nin yanındadır. Başlarken-blinknet.ino adlı dosyayı indirebilir ve oradaki kodları görebilirsiniz. Bir açıklama var. Kaynak kodunu Particle Web IDE'de açmak için bu bağlantıya tıklayın. D7 (küçük mavi LED) yanıp sönerse, tebrikler, Parçacık cihazınızı kullanarak bir LED'i yanıp söndünüz! Farklı LED'lerin yanıp sönmesi, fotoğraf sensörünün okunması vb. gibi Foton hakkında daha fazla bilgi edinmek istiyorsanız, işte bağlantı.

Şimdi, Philips Hue'ya geçeceğiz.

4. Adım: Philips Hue

Image
Image
Philips Hue
Philips Hue
Philips Hue
Philips Hue

Referans için: Phillips Hue API hakkında buraya tıklayın.

Philips Hue API belgelerine erişmeden önce geliştirici olarak kaydolmanız gerekir. Ücretsizdir, ancak şartlar ve koşulları kabul etmeniz gerekir.

1. Öncelikle, Philips Hue Bridge'inizin (ilk resim) ağınıza bağlı olduğundan emin olun, düzgün çalışıyor. Aynı ağdaki ışığı kontrol eden Hue Uygulamasını (Hue Uygulaması iOS ve Android'de mevcuttur) test edin.

Başarılı bir şekilde test ederseniz, ağınızdaki köprünün IP adresini bulmanız gerekir. www.meethue.com/api/nupnp adresini ziyaret ederek Philips'in aracı sunucu keşfini kullanın.

IP adresinizi bulduğunuzda, URL'ye eklenen debug/clip.html ile tarayıcınızın adres çubuğuna yazın: https://bridge IP Address/debug/clip.html. Bunun gibi bir arayüz (ikinci resim) görmelisiniz.. Not: "köprü IP Adresi"ni IP adresinizle değiştirin.

2. Basit bir komut yapalım ve hue sisteminiz hakkında bilgi alalım. Aşağıdaki bilgileri gövdeyi boş bırakarak doldurunuz ve GET butonuna basınız. Bunun gibi bir arayüz (üçüncü resim) görmelisiniz. Bir hata mesajı almalısınız. Not: "köprü IP Adresi"ni IP adresinizle değiştirin.

Adres: https://bridge IP Adresi/api/yenigeliştiriciBody:Yöntem: GETTebrikler! Siz sadece ilk komutunuzu gönderin!3. Ardından, aşağıdaki bilgileri doldurun ve POST düğmesine basın. Not: "köprü IP Adresi"ni IP adresinizle ve "fon tipi adını" kendi telefonunuzla değiştirin.

Adres: https://bridge IP adresi/apiBody: {"devicetype":"my_hue_app#phonetype name"}Yöntem: POST

Bağlantı sizin için oluşturmanıza yardımcı olur. POST düğmesine bastığınızda, Hue Bridge'deki bağlantı düğmesine basmanız gerektiğini bildiren bir hata mesajı (dördüncü resim) almalısınız. Bu, yalnızca ışıklarınızı kontrol etmek istediğiniz uygulamalar veya sunucular için güvenlik adımıdır. Hue Bridge'deki bağlantıya basarak, kullanıcının hue köprüsüne fiziksel erişimi olduğunu kanıtlar.

Başarılı bir yanıt aldığınızda (beşinci resim), tebrikler! Az önce, bundan sonra kullanacağımız yetkili bir kullanıcı oluşturdunuz.

4. Son örnek, onu Foton Parçacığına entegre etmeden önce, ışıklarınızdan birinin görünür ve açık olduğundan emin olun ve ışığın hangi sayı olduğunu bilmeniz gerekir. URL'yi /api/kullanıcı adı/ışıklar/ışık numarası/durumu olarak değiştirin (ışık numarasını [1, 2, 3 veya ? olabilir] değiştirin) ve aşağıdaki verilerle bir PUT düğmesi gönderin:

Not: Köprü IP adresini, kullanıcı adını ve ışık numarasını değiştirdiğinizden emin olun

Adres: https://bridge IP adresi/api/kullanıcı adı/ışıklar/ışık numarası/durum

Gövde: {"on":true, "sat":254, "bri":254, "hue":10000}

Yöntem: PUTIşığınızın renginin değiştiğini görmelisiniz:

Adım 5: Bir Düğme ve Tellerle Fotonun Ayarlanması

Bir Düğme ve Tellerle Foton Ayarlama
Bir Düğme ve Tellerle Foton Ayarlama
Bir Düğme ve Tellerle Foton Ayarlama
Bir Düğme ve Tellerle Foton Ayarlama

Photon Web IDE'ye daha fazla kod geliştirmeden önce, Photon'umuzu bir düğme ve kablolarla kurmak istiyoruz. Particle Starter Kit'inizden birkaç düğmeniz ve birçok kablonuz var. İki resim ekledim, biri diyagram diğeri ise bir gerçek resim.

  1. Fotonunuzu devre tahtasına yerleştirdiğinizden emin olun.
  2. Resimde gösterildiği gibi breadboard'un altına bir düğme yerleştirin.
  3. Siyah kablonun bir ucunu J4'e (GND) koyun ve aynı siyah kablonun başka bir ucunu J30'a koyun.
  4. Sarı kablonun bir ucunu J7'ye (D5) koyun ve aynı sarı kablonun başka bir ucunu J28'e koyun.

Size göstereceğim imajımla eşleşiyorlarsa, o zaman iyisiniz!

Adım 6: Foton Parçacığına Kod Yazma

Foton Parçacıklarına Kod Yazma
Foton Parçacıklarına Kod Yazma

İlk uygulamamızı Photon Particle - Web IDE'de oluşturacağız.

  1. https://build.particle.io/build adresine gidin ve giriş yapın (henüz oluşturmadıysanız kaydolun)
  2. Mevcut Uygulamanın altına "Görsel Bildirim Uyarısı" yazın.
  3. Giriş düğmesine basın (ilk resme bakın).

Uygulama, Photon Particle Cloud'a kaydedilir. Uygulama başlatıldığında ve bir kez çalıştırıldığında setup() işlevi çağrılır. loop() işlevi tam olarak ne yaptığını yapar ve ardışık olarak döngüye girerek uygulamanızın değişmesine ve yanıt vermesine olanak tanır.

Foton Parçacığına HttpClient eklemek için:

  1. Web IDE'nin sol alt kısmındaki Kitaplıklar'a tıklayın.
  2. Arama çubuğuna "HttpClient" yazın.
  3. Mavi düğmedeki "Projeye Dahil Et" seçeneğine tıklayın.
  4. VisualNotificationAlert'e tıklayın (uygulamayı oluşturduktan sonra boşlukları kaldırır).
  5. Onayla'yı tıklayın.

Şimdi, Web IDE'nin başına HttpClient'i ekledi.

/ Bu #include ifadesi Particle IDE tarafından otomatik olarak eklendi.#include

/*** Philip Hue için Yapılandırma ***

/ 1. Bunu 1. Adımdaki API kullanıcı adınızla değiştirin const String API_USERNAME = "API kullanıcı adınız"; // 2. Bunu, 1. Adımdaki köprünüzün IP adresiyle değiştirin. IPAdresi hueIP(x, x, x, x); // 3. Kontrol etmek istediğiniz ışıkların yolunu değiştirin. Çalıştığını doğrulamak için 1. Adımdaki web sayfasını kullanın. // Philip Hue ışığının numarasını bildiğinizden emin olun // /lights/NUMBER/state const String LIGHT_PATH = "/lights/Number/state"; // 4. Bunu, ışıkları açma isteğinizin gövdesiyle değiştirin. const String REQUEST_BODY_ON = "{"on\":true, \"bri\":254}"; // 5. Bunu, ışıkları kapatma isteğinizin gövdesiyle değiştirin. const String REQUEST_BODY_OFF = "{"on\":false, \"bri\":254}"; /*** Philip Hue için END Yapılandırması *** / Button const int BUTTON_PIN = D5; // Hue köprüsüne HTTP istekleri yapmak için kullanılan HttpClient nesnesi HttpClient http; // HTTP istekleri için varsayılan başlık http_header_t başlıklar = { { "Kabul Et", "*/*"}, { NULL, NULL } // NOT: Başlıkları her zaman sonlandır NULL }; // İstek ve yanıt nesneleri http_request_t request; http_response_t yanıtı; geçersiz kurulum() { Serial.begin(9600); request.ip = hueIP; istek.port = 80; // Algılanan musluk pinModu için gösterge ışığı olarak yerleşik LED(D7, OUTPUT); // Giriş için BUTTON_UP'ı bir giriş-çekmesi olarak tanımlıyoruz. Bu, cihazdan tutarlı okumaları yönetmek için dahili bir çekme direnci // kullanır. pinMode(BUTTON_PIN, INPUT_PULLUP); // pin'i girdi olarak ayarlar //Buton adlı IFTTT etkinliğimize "Abone oluruz" böylece onun için etkinlikler alırız Particle.subscribe("RIT_Gmail", myHandler); Particle.subscribe("Trello", benimHandler); } // setup() function void loop() { /* * Bu, ışık uyarılarının olup olmadığının test edildiği bölümdür */ // butona basılıp basılmadığını buradan okuyarak öğrenin. int buttonState = digitalRead(BUTTON_PIN); // Butona BASILDIĞINDA DÜŞÜK bir sinyal alacağız. // Düğmeye BASILMADIĞINDA YÜKSEK bir değer elde ederiz. if(buttonState == DÜŞÜK) gmailAlert(); } // loop() function void printInfo() { Serial.print("Uygulama>\tYanıt durumu: "); Serial.println(yanıt.durum); Serial.print("Uygulama>\tHTTP Yanıt Gövdesi: "); Serial.println(yanıt.body); } // printInfo() işlevi int i = 0; //IFTTT void myHandler(const char *event, const char *data)'dan gelen olayı işleyen fonksiyon { // Serial.print(event); Serial.print(", veri: "); if (veri) Serial.println(veri); başka Serial.println("NULL"); if(strcmp(event, "Trello") == 0) { trelloAlert(); } else if(strcmp(event, "Gmail") == 0) { gmailAlert(); } } // myHandler() işlevi /** Işığı ayarlayacak ton değeri. * Ton değeri 0 ile 65535 arasında bir sarma değeridir. * Hem 0 hem de 65535 kırmızı, * 25500 yeşil ve 46920 mavidir. */ /** * Philips Hue Akıllı Ampulü kullanarak mavi rengi kullanarak uyarı verecektir. 15 saniye boyunca uyarı verecektir. */ void trelloAlert() { trello_body_alert dizesi = "{"on\": true, \"bri\": 255, \"sat\": 255, \"hue\": 46920, \"uyarı\": \"lseç\"}"; sendHttpPut(trello_body_alert); } /** * Philips Hue Akıllı Ampulü kullanarak kırmızı rengi kullanarak uyarı verecektir. 15 saniye boyunca uyarı verecektir. */ void gmailAlert() { String gmail_body_alert = "{"on\":true, \"sat\":254, \"bri\":254, \"hue\":65535, \"uyarı\": \"lseç\"}"; sendHttpPut(gmail_body_alert); } /** * PUT'u Philips Hue'ya göndereceğiz * @param httpPutBody dizenin gövdesini */ void sendHttpPut(String httpPutBody) { request.path = "/api/" + API_USERNAME + LIGHT_PATH; request.body = httpPutBody; http.put(istek, yanıt, başlıklar); }

Kodu Foton Parçacık Web IDE'nize yazmayı veya kopyalamayı bitirdiğinizde, çubuğun sol üst kısmındaki kontrol simgesine (Doğrula) tıklayın. Çok başarılı bir şekilde uyuyorsa, bir sonraki adıma geçeceğiz!

7. Adım: Fotona Kod Yükleme

Bu adım çok basittir. Kodları Photon'a yüklemeden önce:

  1. USB kablosunu güç kaynağınıza takın (dizüstü bilgisayar öneririm).
  2. Fotonunuzun nefes alan camgöbeği LED'ine sahip olduğundan emin olun. Camgöbeği solumuyorsa veya farklı bir renge sahipse Adım 2: Kurulum'a gidin.
  3. Foton Parçacık Web IDE'sinden Aydınlatma simgesine tıklayın.
  4. Kodları Photon'a yüklediğinde, macenta görmelisiniz. Bu, kodun koda yüklenmeye başladığı anlamına gelir. Ardından, hızlı bir şekilde yeşil renkte yanıp sönecek, ardından tekrar nefes alan camgöbeğine dönecektir.
  5. Philips Akıllı Ampulünüzün yanıp sönmediğini (veya uyarıp uyarı vermediğini) görmek için düğmeye basın.

Philips Akıllı Ampul uyarı veriyorsa tebrikler! Neredeyse bitirdik!

Yazılım kısmına geçeceğiz.

Adım 8: IFTTT'den Applet Oluşturma (Eğer Buysa, O Zaman Bu)

Uygulamaları IFTTT (If This, Then That) web sitesinden oluşturacağız. Uygulamalar Photon'a bir olay yayınlayacak ve ardından Photon, akıllı ampulleri uyarmak için Philips Hue Bridge'e bir komut gönderecek.

Bu proje için etkinlikleri Photon'da yayınlamak için Trello ve Gmail'i kullanacağız.

ifttt.com/ adresine gidin ve kaydolun.

Trello

  1. Üstteki Uygulamalarım'ı tıklayın.
  2. Yeni Uygulama'yı tıklayın.
  3. Mavi metinde + bunu tıklayın.
  4. Arama çubuğuna Trello yazın ve tıklayın.
  5. Bana Atanan Kart'ı tıklayın.
  6. Trello'dan panonuzu seçin.
  7. Mavi metinde + bunu tıklayın.
  8. Arama çubuğuna Parçacık yazın ve tıklayın.
  9. Etkinlik yayınla'yı tıklayın.
  10. Sonra yayınla (Etkinlik Adı) alanına "Trello" yazın.
  11. Herkese açık seçin.

Gmail (Not: Kaydolduğunuzda e-posta adresinizi kullanacaklardır)

  1. Üstteki Uygulamalarım'ı tıklayın.
  2. Yeni Uygulama'yı tıklayın.
  3. Mavi metinde + bunu tıklayın.
  4. Arama çubuğuna Gmail yazın ve tıklayın
  5. Gelen kutusundaki herhangi bir yeni e-postayı seçin
  6. Mavi metinde + bunu tıklayın.
  7. Arama çubuğuna Particle yazın ve tıklayın.
  8. Etkinlik yayınla'yı tıklayın.
  9. Sonra yayınla (Etkinlik Adı) alanına "Gmail" yazın.
  10. Herkese açık seçin.

Trello ve Gmail çalışan iki uygulamanız olduğunda, son adıma geçiyoruz.

9. Adım: Son olarak, Test Etme

Uygulamalardan Foton'a olayları yayınlamayı test edeceğiz. Uygulamalarınızın açık olduğundan emin olun.

Trello

Birisi Trello'da yeni bir kart oluşturduğunda, sizi kartta atayacak (etiketleyecektir). IFTTT bunu dinler ve Photon'a bir olay yayınlamaya başlar. Ardından Photon, akıllı ampulleri uyarmak için Philip Hue Bridge'e bir komut gönderir.

Gmail

Gelen kutunuza yeni bir e-posta geldiğinde, IFTTT bunu dinler ve Photon'a bir etkinlik yayınlamaya başlar. Ardından Photon, akıllı ampulleri uyarmak için Philip Hue Bridge'e bir komut gönderir.

Zorluklar

  • Trello ve Gmail'den ne zaman yeni bir bildirim alsak, IFTTT'den bir olay göndermek ve Photon'dan bir komut göndermek için büyük bir gecikme oluyor. Akıllı ampulleri uyarmak 5 dakikadan az sürmelidir.
  • Uygulamanın yeniden bağlanması veya güncellenmesi gerektiğinden Gmail Uygulaması bazen kendi kendine kapanır.

Önerilen: