İçindekiler:

Otomatik Kar Uyandırma Çağrısı: 6 Adım (Resimli)
Otomatik Kar Uyandırma Çağrısı: 6 Adım (Resimli)

Video: Otomatik Kar Uyandırma Çağrısı: 6 Adım (Resimli)

Video: Otomatik Kar Uyandırma Çağrısı: 6 Adım (Resimli)
Video: Keşke Daha Önce Öğrenseydik Dediğimiz Zaman Kazandıran 14 Bilgisayar Tüyosu 2024, Kasım
Anonim
Otomatik Kar Uyandırma Çağrısı
Otomatik Kar Uyandırma Çağrısı
Otomatik Kar Uyandırma Çağrısı
Otomatik Kar Uyandırma Çağrısı

Sabahları evden çıkmak, gece boyunca birkaç santim beyaz eşya yerleştikten sonra bir aktivite telaşı olabilir. O günlerde sabahın stresini atmak için biraz daha erken uyanmak güzel olmaz mıydı? Bu proje tam da bunu yapıyor!

Bu proje, gece boyunca kar yağdığında telefonunuza bir uyandırma çağrısını otomatikleştirmek için bir Arduino, bir mesafe sensörü ve IFTTT (kullanımı kolay bir web sitesi) kullanır. Hazır olduğunuzda, oluşturduğunuz cihazı yüksek bir noktaya (örneğin bir tripod üzerine) yerleştirecek ve yere doğrultacaksınız. Oradan sürekli olarak kendisiyle yer arasındaki mesafeyi ölçecektir. Kar yağdıkça "zemin" ona doğru hareket eder, bu nedenle ölçtüğü mesafe azalır. Akşam ve sabah arasında yeterince büyük bir fark varsa, cihaz sizi kar yağışı konusunda uyaracaktır!

Elektroniklerin bağlanması basit ve ben kodu sağlayacağım, o yüzden hemen girelim!

Gereçler

  1. Wifi özellikli Arduino uyumlu bir mikroçip. Bu proje için, birçok nedenden dolayı önerdiğim ESP8266 NodeMCU Geliştirme Kurulu'nu kullanacağınızı varsayıyorum:

    • Dahili Wifi vardır.
    • İsteyebileceğiniz tüm pinleri hemen hemen ortaya çıkarır.
    • Programlama için kolay bir USB arayüzü sağlar.
    • Kod yüklerken kart sıfırlamayı yönetir ve hata ayıklama için sıfırlama düğmeleri sunar.
  2. Bir TF Mini Lidar menzil sensörü.

    HC-SR04 gibi daha ucuz ultrasonik sensörler olduğunu unutmayın, ancak yumuşak kar susturucuları bunun için çalışmayacak kadar ses çıkarır

  3. Mini bir ekmek tahtası.
  4. Sensörü karın birkaç metre yukarısına monte etmek için bir tripod veya herhangi bir çözüm.
  5. Bir mikro usb kablosu.
  6. Bir uzatma kablosu.
  7. Bir usb şarj cihazı.
  8. Plastik bir kap.

Not, 5 ve üzeri ürünler Dollar Tree'den oldukça kolay bir şekilde satın alınabilir.

Fiyatlar değişebilir, ancak bu projeyi basit parçalar için Dollar Tree'den alışveriş yaparak yaklaşık 50 $ (tripod hariç) yapabildim. Şimdiye kadarki en pahalı kısım, kesinlikle başka projeler için yeniden kullanılabilen Lidar sensörüdür.

Adım 1: Elektronik (Donanım)

Elektronik (Donanım)
Elektronik (Donanım)
Elektronik (Donanım)
Elektronik (Donanım)
Elektronik (Donanım)
Elektronik (Donanım)

Bu projenin elektroniğinin montajı oldukça hızlı olmalıdır. Sadece TF Mini Lidar Mesafe Sensörünü çipe bağlayın. Kablolar, bu mükemmel SparkFun kılavuzunda açıklandığı gibi bağlanmalıdır.

İşte kısa bir özet:

Sensör -> ESP8266

Yeşil -> D2 (diğer adıyla GPIO 4, RX'imiz olarak kullanacağız)

Beyaz -> D1 (TX olarak kullanacağımız GPIO 5 olarak da bilinir)

Kırmızı -> Vin

Siyah -> Gnd

Adım 2: Elektronik (Yazılım)

Elektronik (Yazılım)
Elektronik (Yazılım)

Size bir uyandırma çağrısı gönderme kararı mikroçipiniz tarafından verilecektir, bu yüzden onu uygun şekilde programlamamız gerekiyor! Çipinizi programlamak için Arduino IDE (bilgisayarınızda çalışan yazılım) kullanarak çipinize yükleyebileceğiniz Arduino adlı bir dil kullanacağız.

1. Arduino yazılımını buradan indirin. Bu kılavuz, Arduino Masaüstü IDE menülerine atıfta bulunacaktır, bu yüzden Web IDE ile çok rahat değilseniz, devam edin ve indirin.

2. Arduino Masaüstü IDE'nizi ESP8266 mikroçipi ile çalışacak şekilde ayarlayın. Bununla ilgili talimatlar burada bulunabilir. İleriye dönük olarak, bu kılavuz LED'inizin yanıp söndüğünü ve ESP8266'ya nasıl komut dosyası yükleyeceğinizi bildiğinizi varsayar.

3. Mikroçipinize yüklemek için komut dosyasını https://github.com/robertclaus/snowalert adresinden indirin. Senaryoyu düzenlemeye gerek yok. Kodu yükledikten sonra yapılandırmanız gereken her şey yapılandırılabilir olacaktır.

4. Komut dosyasını Arduino'da açın ve bağlı olduğu kitaplıkları sisteminize kurun. IDE'nin üst kısmında, şunu tıklayın: Taslak -> Kitaplıkları Dahil Et -> Kitaplıkları Yönet

Ardından şu kitaplıkları arayın ve yükleyin:

  • Tzapu'dan WifiManager (sürüm 0.14.0)
  • Benoit Blanchon'dan ArduinoJson (sürüm 6.14.1)
  • hideakitai tarafından TFminiArduino (sürüm 0.1.1)
  • Fabrice Weinberg tarafından NTPClient (sürüm 3.2.0)
  • Khoi Hoang tarafından ESP_DoubleResetDetector (sürüm 1.0.1)

5. Bu proje için panonuzu yapılandırın. IDE'nin üst kısmında Araçlar'a tıklayın ve şu ayarları yapın:

  • Flaş Boyutu - 4M (1M SPIFFS) -- Bu, yapılandırmamızın kaydedilmesi için yer ayırır.
  • Flaşı Sil - Tüm İçeriği - Bu, çipte daha önce veri bulunmadığından emin olur.

    Kodu güncellemeniz gerekirse, bunu Yalnızca Sketch olarak ayarlamanızın yapılandırmanızı koruyacağını unutmayın

6. ESP mikroçipinizin bilgisayarınıza takılı olduğundan ve atanmış bir bağlantı noktasına sahip olduğundan emin olun. IDE'de doğru bağlantı noktasını seçin ve yükleyin!

7. Arduino IDE'de Seri Monitörü (Araçlar -> Seri Monitör) açın. Ardından çipinizdeki Sıfırla düğmesine tıklayın. Seri Monitörde gösterilen metni aldığınızı onaylayın

Adım 3: IFTTT Yapılandırması

IFTTT Yapılandırması
IFTTT Yapılandırması
IFTTT Yapılandırması
IFTTT Yapılandırması
IFTTT Yapılandırması
IFTTT Yapılandırması

Artık Arduino'nuz çalıştığına göre, onu istediğimizi yapacak şekilde yapılandırmamız gerekiyor. Bu eğitim için, Arduino'muzdan basit bir mesajı daha karmaşık eylemlere çevirmemize izin veren IFTTT adlı bir hizmet kullanacağız.

Örneğin, Arduino'muz "Kar Yağdı!" derse. o zaman IFTTT, uyandırma çağrısı ile cep telefonumuzu aramalıdır.

1. https://ifttt.com/join adresinde oluşturabileceğiniz ücretsiz bir IFTTT hesabına ihtiyacınız olacak.

2. Bu mantığı kullanan yeni Applet'i oluşturmak için Oluştur'a gidin veya şu bağlantıyı izleyin:

3. Bu -> Ara'ya tıklayın ve Web kancaları -> seçeneğini seçin, sizden istenirse, kutuya Bağlan -> snow_alert girin'e tıklayın.

4. Bu -> Ara'ya tıklayın ve Telefon Görüşmesi'ni seçin (Yalnızca ABD) -> Sizden istenirse Bağlan'a tıklayın -> Bir açılır pencere alırsanız, komutları izleyin -> Dün gece kar yağdı gibi bir mesaj girin! telefon görüşmesinin sizin için sesli olarak okunmasını istediğinizi belirtin.

5. Uygulamanızı etkinleştirmek için Bitir'e tıklayın.

6. IFTTT'deki Web kancaları hizmet ayarlarınıza giderek ve burada listelenen test URL'sini bularak Web kancanızı test edin. Bu URL'ye gidin ve {event} öğesini snow_alert ile değiştirin. Ardından Test Et'i tıklayın. Her şey çalışıyorsa, bir telefon görüşmesi almalısınız!

7. Test sayfasında, url'yi sayfanın altına doğru kaydedin. Daha sonraki bir adımda ihtiyacınız olacak. Bunun gibi bir şeye benzemeli:

maker.ifttt.com/trigger/snow_alert/with/key/d-Y8rXge5kibp0dkdrCgxu

Hata ayıklama sorunları için, kullanıcılar zaman içinde kar yüksekliğini de günlüğe kaydetmek isteyebilir. Snow_measurement web kancasını kabul eden ve Google E-Tablolar'da günlük tutan ayrı bir IFTTT uygulaması yapılandırabilirler. Bunu yapmak için, sadece yukarıdaki adımları tekrarlayın, ancak yukarıdaki Webhooks adımında snow_alert öğesini snow_measurement ile değiştirin ve Telefon Görüşmesi adımını Google E-Tablolar hizmeti -> Elektronik tabloya satır ekle ile değiştirin.

4. Adım: SnowAlert Yapılandırması

SnowAlert Yapılandırması
SnowAlert Yapılandırması

Bu noktada son yazılım adımı, mesajları yeni IFTTT uygulamanıza göndermek için ESP'nizdeki kodu yapılandırmaktır.

Bu yapılandırma için Github'daki SnowAlert talimatlarını izlemenizi tavsiye edeceğim çünkü SnowAlert yeni özellikler alırsa buradaki talimatlar eski olabilir.

Bu talimatları yazarken aşağıdakileri yaparsınız.

En önemlisi, yapılandırdığınız tüm zamanların UTC saat diliminde ve 24 saatlik zaman biçiminde (AM/PM değil) olması gerekir.

  1. Aramayı sabah saat kaçta almak istediğinize karar verin. Bu senin Bitiş Zamanın.
  2. Bir önceki akşamı ölçmeye ne zaman başlayacağınıza karar verin. Bu senin Başlangıç Zamanın.
  3. ESP'nizi takın ve daha önce yaptığımız gibi Arduino IDE'deki Seri Monitörü açın.
  4. Bilgisayarınızdaki SnowMeasure wifi ağına bağlanın. Bağlanırken Seri Monitörde bazı etkinlikler görmelisiniz.
  5. Birkaç saniye sonra otomatik olarak tarayıcınızda bir kurulum sayfasına yönlendirileceksiniz.
  6. Wifi Yapılandır'ı tıklayın
  7. Aşağıdaki değerleri girin:

    1. SSID - ESP'nin internet için bağlanması gereken wifi ağı.
    2. Şifre - Bu wifi ağına bağlanmak için şifre.
    3. Başlangıç Saati - Akşam kar yüksekliğini ölçmesini istediğiniz saat.
    4. Başlangıç Dakikası - Akşam ölçmek istediğiniz saatin dakika bileşeni.
    5. Bitiş Saati - Sabah kar yüksekliğini ölçmesini istediğiniz saat (ve potansiyel olarak sizi araması)
    6. Bitiş Dakikaları - Sabah ölçmek istediğiniz saatin dakika bileşeni.
    7. Uyarı Web Kancası URL'si - Bu, önceki adımda kaydettiğiniz ve şuna benzeyen URL olmalıdır:
    8. Measurement Webhook URL'si - Bu, yukarıdakiyle aynı url olmalıdır, ancak snow_alert'i snow_measurement ile değiştirin

Adım 5: Sensörü Monte Edin

Sensörü Monte Edin
Sensörü Monte Edin
Sensörü Monte Edin
Sensörü Monte Edin
Sensörü Monte Edin
Sensörü Monte Edin

Bu noktada her şey gitmeye hazır olmalıdır. Plastik kapta delikler açmak ve onu yerden birkaç metre yüksekte bir yere monte etmek isteyeceksiniz. Tam olarak nasıl monte edeceğiniz, parçalarınıza ve amacınıza bağlı olacaktır, ancak işte doğru yapmak için birkaç öneri.

  • Sensörünüzün hafif bir açıyla aşağı baktığından emin olun. Kutunuz karın yere çarpmadığı yerde gölge oluşturacağından, doğrudan aşağıya bakmasını istemezsiniz.
  • Sensörün kardan 2-3 fit kadar yukarıda olmasını isteyeceksiniz.
  • Kar suda erir, bu nedenle kurulumunuzun makul ölçüde su geçirmez olduğundan emin olun.
  • Gücünüz olduğundan emin olun! Ya uzun bir usb kablosu ya da bir uzatma kablosu, kullanışlı bir noktaya ulaşmak için sizi çatıdan uzaklaştırmalıdır. Her iki durumda da dışarının güvenli olduğundan emin olun.

Adım 6: Çağrıyı Alın

Çağrıyı Alın!
Çağrıyı Alın!

Her şey plana göre giderse, kar yağarsa sabah aramanız gerekir. Bir şey çalışmıyorsa, gerçekte neyin ölçüldüğünü görmek için Google E-Tablolar'daki mesafe günlüklerinizi kontrol edin.

Kar Mücadelesi
Kar Mücadelesi
Kar Mücadelesi
Kar Mücadelesi

Kar Yarışmasında İkincilik

Önerilen: