İçindekiler:

VEML6075 Sensörü ve Little Buddy Talker Kullanan Konuşan UV İndeksi Ölçüm Cihazı: 5 Adım
VEML6075 Sensörü ve Little Buddy Talker Kullanan Konuşan UV İndeksi Ölçüm Cihazı: 5 Adım

Video: VEML6075 Sensörü ve Little Buddy Talker Kullanan Konuşan UV İndeksi Ölçüm Cihazı: 5 Adım

Video: VEML6075 Sensörü ve Little Buddy Talker Kullanan Konuşan UV İndeksi Ölçüm Cihazı: 5 Adım
Video: Arduino Prototyping Inputs #42: Ultraviolet Sensor 2024, Kasım
Anonim
VEML6075 Sensörü ve Little Buddy Talker Kullanan Konuşan UV İndeksi Ölçüm Cihazı
VEML6075 Sensörü ve Little Buddy Talker Kullanan Konuşan UV İndeksi Ölçüm Cihazı
VEML6075 Sensörü ve Little Buddy Talker Kullanan Konuşan UV İndeksi Ölçüm Cihazı
VEML6075 Sensörü ve Little Buddy Talker Kullanan Konuşan UV İndeksi Ölçüm Cihazı
VEML6075 Sensörü ve Little Buddy Talker Kullanan Konuşan UV İndeksi Ölçüm Cihazı
VEML6075 Sensörü ve Little Buddy Talker Kullanan Konuşan UV İndeksi Ölçüm Cihazı

Yazlar geliyor! Güneş parlıyor! Bu harika.

Ama ultraviyole (UV) radyasyonu daha yoğun hale geldikçe, benim gibi insanlar kırmızı, güneşten yanmış, kaşıntılı bir cilt denizinde yüzen küçük kahverengi adalar gibi çillere sahip oluyorlar.

Cildinize ulaşan UV ışığının yoğunluğu hakkında gerçek zamanlı bilgilere sahip olmak, farkındalığı artıracak ve cilt hasarı riskini azaltacaktır. Öyleyse neden bu amaç için basit bir cihaz yapmıyorsunuz? Hem UV-A hem de UV-B'yi ölçmeyi sağlayan VEML6075 UV sensörünü kullanmaya karar verdim ve böylece mevcut diğer birçok sensörden daha hassas değerler verdim (detaylar için son adıma bakın). Ve UV-B tehlikeli kısımdır. Fakat ölçülen değerler nasıl sunulur? LED çubuklar ve OLED ekranlar güzel, ancak parlak güneş ışığında çok pratik değil. Sözlü iletişim bizim günlük bilgi transfer yöntemimizdir, ancak şimdiye kadar mikrodenetleyici projelerinde kullanmak zor. Yeni bir seçenek, 254 kelimelik bir çip içeren ve bunları bir kulaklık konektörü aracılığıyla 'konuşabilen' küçük bir ara olan "Little Buddy Talker" (LBT). Her kelime bir adres, temelde bir sayı ile tanımlanır ve LBT'nin cümlelerle konuşmasına izin vermek çok kolaydır. Daha karmaşık görevler için LBT'yi kontrol etmek için "Word100" Arduino kütüphanesini kullanabilirsiniz.

Aşağıda açıklanan cihaz, bir VEML6075 sensör çıkışı, bir Arduino ve Little Buddy Talker'dan oluşur, kurulumu çok kolaydır ve kullanılan mikro denetleyiciye bağlı olarak bir USB güç paketi veya pillerle çalıştırılabilir.

UV dizin bilgilerini gizli tutmayı tercih ediyorsanız kulaklık kullanın. Küçük bir pille çalışan hoparlör, okullar, kreşler veya diğer halka açık yerler için iyi bir çözüm olabilir. 1000'den fazla kelime içeren Big Buddy Talker için devam eden Kickstarter projesinden bahsetmek istiyorum.

Ve güneş kremi sürmeyi unutmayın

Adım 1: Gerekli Malzemeler

VEML6075 UV A&B sensörü koparma - Benimkini Aliexpress'ten yaklaşık 10 US$'a aldım

5V -> 3V seviye değiştirici - VEML6075'in 3V mantığı olduğu için gereklidir. Birkaç $/€ karşılığında satın alınabilirler.

Little Buddy Talker - www.engineeringshock.com adresinden 25 CA$'dan edinilebilir

Arduino Uno uyumlu mikrodenetleyici - Bir MonkMakesDuino kullandım, ancak herhangi bir sürüm çalışmalı

Breadboard ve atlama kabloları

Hoparlör ve/veya kulaklıklar - uygulamanıza bağlı olarak

USB güç paketi Güneşli bir gün!

Adım 2: Montaj ve Kullanım

Cihazı kurmak ve çalıştırmak oldukça basittir:

  • Arduino, seviye değiştirici, VEML6075 koparma ve Little Buddy Talker'ınızı breadboard'unuza yerleştirin.
  • Ekmek tahtasındaki güç raylarından birini 3V ve diğerini 5V için kullanın, bunları Arduino'nuzun toprak, 3V ve 5V bağlantı noktalarına bağlayın.
  • seviye değiştiricinin güç bağlantı noktalarını uygun güç raylarına bağlayın
  • seviye değiştiricinin 5V tarafındaki iki veri portunu Arduino'nun SDA (A4) ve SDA (A5) portlarına bağlayın
  • 3V tarafındaki ilgili veri portlarını sensörün SCL ve SDA portları ile bağlayın
  • sensörün GND ve VCC portlarını Toprak ve 3V'a bağlayın
  • LBT'yi Arduino'ya ve güç kaynağına bağlayın: LBT 5V - 5V, LBT GD'yi toprağa, LBT DI'yi Arduino 11'e, LBT SC'yi Arduino 13'e, LBT CS'yi Arduino 10'a

IDE'de gerekli yazılım kitaplıklarını yükleyin. Kullandığım "VEML7065" kütüphanesi 14core'da bulunabilir (bir sonraki adıma bakın). Sensör ile I2C iletişimi için "Wire", Little Buddy Talker ile SPI aracılığıyla iletişim için "SPI" gereklidir.

Sağlanan komut dosyasını çalıştırın (sonraki adıma bakın).

UV Raw, UV-A, UV-B ve UV indeks değerleri ve diğer bilgiler seri monitörde görüntülenir.

Ölçülen UV indeksi, LBT tarafından "söylenir". VEML6075, UV indeksini çok hassas bir şekilde hesaplamaktadır, ancak LBT'nin kelime setinde "nokta" eksik olduğundan, değerler şu şekilde verilir: "seviye" - değer (tam sayı olarak "sıfır" ila "on iki") - "yüksek"/"düşük" (kalan 0,5'in üzerinde veya altındaysa), bu çoğu uygulama için yeterince iyi olmalıdır.

Ölçümlerin ne sıklıkla alındığını ve neyin ölçüldüğünü ve seri monitöre gönderilmesini değiştirmek için komut dosyasını değiştirebilirsiniz. Biraz programlama ile bir "uyarı" (LBT: 148/0x94), "uyarı" (LBT: 143/0x8f) veya "alarm" (LBT: 142/0x8e) için eşik seviyeleri tanımlayabilirsiniz.

Maksimum UV seviyesini ölçmek için sensörü doğrudan güneşe yönlendirmeniz gerekir

3. Adım: Komut Dosyası

Senaryo, büyük ölçüde, teşekkür etmek istediğim diğerlerinin çalışmalarının bir derlemesidir.

Gerekli VEML6075 kitaplığını da indirebileceğiniz 14core, https://www.14core.com/wiring-the-veml6075-ultraviolet-a-ultraviolet-b-light-sensor/ adresinden alınan VEML6075 betiğini kullandım.

Başka bir seçenek de schizobovine tarafından yazılan komut dosyası ve kitaplık olacaktır:

Senaryom temelde bir ölçü alıyor, biraz sayı yorumu yapıyor ve Küçük Dost Talker'a hangi kelimeleri söyleyeceğini söylüyor. LBT'deki 254 kelimenin her birinin bir dizin numarası olduğundan, ör. "Seviye" için 209 veya 0xd1, bu numaraları göndermeniz yeterlidir. UV indeks değerleri (0 ila 12) ile ilgili olarak, değerleri "sıfır" (54, 0x 36) ile "on iki" (66, 0x42) arasındaki kelimelere 'çevirmek' için 'harita' işlevini kullandım.

Daha önce de belirtildiği gibi UV indeks değeri 4,3 "dört düşük" ve 5,7 "beş yüksek" olarak verilir.

Komut dosyasını optimize etmek isterseniz, lütfen LBT'de bulunan ekteki kelime listesine bir göz atın.

4. Adım: Görünüm

Biraz ek bir çabayla, tüm parçaları, nereye giderseniz gidin UV indeksini ölçebilecek küçük bir kutuya koyabilmelidir: kayak yaparken, doğa yürüyüşü yaparken, bisiklete binerken, piknik yaparken veya plajda.

Diğer bir seçenek de sensörü bir şapka veya şapka üzerine yerleştirmek ve elektronik aksamın bulunduğu kutuyu başka bir yere yerleştirmek olabilir.

Veya aldığınız kümülatif UV dozunu tahmin eden ve gölgeye ne zaman gitmeniz gerektiğini söyleyen bir komut dosyası oluşturmak için.

Ama asla unutmayın: Güneş kremi kullanın!!!

Adım 5: Bağlantılar ve Ek Bilgiler

Aşağıda benzer projelere bağlantılar ve konuyla ilgili daha fazla bilgi bulabilirsiniz:

Arduino ve Nokia 5110 Ekranlı DIY UV Ölçer - https://www.instructables.com/id/DIY-UV-Meter-With… - daha fazla günlük bileşen kullanan ve ayrıca birçok arka plan bilgisi veren çok güzel bir talimattır.

Yaz geliyor! Haydi bir Carry-on UV Dedektörü Yapalım - https://www.instructables.com/id/Summer-Is-Coming-… - gösterge olarak bir LED çubuğu olan bir kutuda güzel bir mobil çözümü açıklar. SI1145 ışık sensörlü bir koparma kullanan Seed Grove platformuna dayanmaktadır. Bu sensör aslında UV'yi ölçmez, ancak UV indeksini görünür ve IR ışık yoğunluklarından hesaplar.

SI1145 salgını kullanan başka bir proje Adafruit'te bulunur - https://learn.adafruit.com/adafruit-si1145-breakou… - her zamanki eksiksiz Adafruit çözümünü sunar. Beze sabitleyebileceğiniz sensör versiyonunun bir "Flora"sı bile var.

Adafruit (ve diğerleri) de VEML6070 sensörü için ara ürünler sunuyor. Bu sensör aslında UV'yi ölçer, ancak size kesin ölçüm değerleri verir, ancak UV indeksini yorumlamak kolay değildir.

EPA Sunsafety web sitesinde birçok genel bilgi bulunur, örn. https://www.epa.gov/sunsafety/uv-index-scale-1 adresinde.

VEML6075 için veri sayfası burada bulunabilir:

Ve birçok arka plan bilgisi sunan ve spektrum görüntülerini nereden aldığımı gösteren aşağıdaki başvuru sayfasına bir göz atmanızı tavsiye ederim:

Önerilen: