İçindekiler:

UltraV: Taşınabilir UV İndeks Metre: 10 Adım (Resimlerle)
UltraV: Taşınabilir UV İndeks Metre: 10 Adım (Resimlerle)

Video: UltraV: Taşınabilir UV İndeks Metre: 10 Adım (Resimlerle)

Video: UltraV: Taşınabilir UV İndeks Metre: 10 Adım (Resimlerle)
Video: Uydu Alıcısı Kurulumu | Eski Tip Uydu Alıcısı Basit Cihaz 2024, Kasım
Anonim
UltraV: Taşınabilir UV İndeks Metre
UltraV: Taşınabilir UV İndeks Metre

Dermatolojik bir problem nedeniyle güneşe çıkamadığım için sahilde geçireceğim zamanı bir ultraviyole ışın ölçer yapmak için kullandım. UltraV.

Bir UV sensörü, 3v pil voltajını yükseltmek için bir DC/DC dönüştürücü ve küçük bir OLED ekrana sahip bir Arduino Nano rev3 üzerine inşa edilmiştir. Ana hedefim, UV indeksini her an ve her yerde kolayca öğrenebilmem için taşınabilir tutmaktı.

Adım 1: Parçalar ve Bileşenler

  • Mikrodenetleyici Arduino Nano rev.3
  • ML8511 UV sensörü
  • 128×64 OLED ekran (SSD1306)
  • MT3608 DC-DC yükseltmesi
  • CR2 pil
  • CR2 pil tutucu
  • değiştirmek
  • muhafaza kutusu

Adım 2: Sensör

Sensör
Sensör
Sensör
Sensör

ML8511 (Lapis Semiconductors), iç veya dış mekanlarda UV yoğunluğunu elde etmek için uygun bir UV sensörüdür. ML8511, UV yoğunluğuna bağlı olarak foto akımı voltaja dönüştüren dahili bir amplifikatör ile donatılmıştır. Bu benzersiz özellik, ADC gibi harici devrelere kolay bir arayüz sunar. Güç kapatma modunda, tipik bekleme akımı 0,1µA'dır, böylece daha uzun pil ömrü sağlar.

Özellikleri:

  • UV-A ve UV-B'ye duyarlı fotodiyot
  • Gömülü işlemsel yükselteç
  • Analog voltaj çıkışı
  • Düşük besleme akımı (300µA tip.) ve düşük bekleme akımı (0,1µA tip.)
  • Küçük ve ince yüzeye montaj paketi (4,0 mm x 3,7 mm x 0,73 mm, 12 pimli seramik QFN)

Ne yazık ki sensörü korumak için UV geçirgen herhangi bir malzeme bulma şansım olmadı. Test ettiğim her türlü şeffaf örtü (plastik, cam vb.) UV ölçümünü zayıflatıyordu. Daha iyi bir seçim kuvars erimiş silika cam gibi görünüyor, ancak makul bir fiyata bulamadım, bu yüzden sensörü kutunun dışında, açık havada bırakmaya karar verdim.

3. Adım: İşlemler

Operasyonlar
Operasyonlar

Ölçüm yapmak için cihazı açıp güneş ışınlarının yönüne göre birkaç saniye güneşe doğru tutmanız yeterlidir. Ardından ekranda izleyin: soldaki dizin her zaman anlık ölçümü gösterir (her 200 ms'de bir), sağdaki okuma ise bu oturum sırasında alınan maksimum okumadır: ihtiyacınız olan budur.

Ekranın sol alt kısmında, ölçülen UV indeksi için WHO eşdeğer terminolojisi de (DÜŞÜK, ORTA, YÜKSEK, ÇOK YÜKSEK, AŞIRI) bildirilir.

Adım 4: Akü Voltajı ve Okuma

Boyutu ve kapasitesi (800 mAh) için bir CR2 pil seçiyorum. Yaz boyunca UltraV kullandım ve pil hala 2,8 v okuyor, bu yüzden seçimden oldukça memnunum. Çalıştırıldığında devre yaklaşık 100 mA boşaltır, ancak okuma ölçümü birkaç saniyeden fazla sürmez. Akü nominal voltajı 3v olduğu için voltajı 9 volta çıkarmak için DC-DC yükseltici dönüştürücü ekledim ve Vin pinine bağladım.

Pil voltajı göstergesinin ekranda olması için analog giriş (A2) kullandım. 0 ile 5V arasındaki DC voltajını ölçmek için Arduino analog girişleri kullanılabilir, ancak bu teknik bir kalibrasyon gerektirir. Kalibrasyon yapmak için bir multimetreye ihtiyacınız olacak. İlk önce devreyi son pilinizle (CR2) çalıştırın ve bilgisayardan gelen USB gücünü kullanmayın; Arduino üzerindeki 5V'u regülatörden ölçün (Arduino 5V pininde bulunur): bu voltaj varsayılan olarak Arduino ADC referans voltajı için kullanılır. Şimdi ölçülen değeri aşağıdaki gibi taslağa koyun (diyelim ki 5.023 okudum):

voltaj = ((uzun)toplam / (uzun)NUM_SAMPLES * 5023) / 1024.0;

Çizimde voltaj ölçümünü ortalama olarak 10 numune üzerinden alıyorum.

Adım 5: Şematik ve Bağlantılar

Şematik ve Bağlantılar
Şematik ve Bağlantılar

6. Adım: Yazılım

Ekran için, bu tür OLED ekranlar için çok esnek ve güçlü olan U8g2lib'i kullandım ve çok çeşitli yazı tipi seçeneklerine ve iyi konumlandırma işlevlerine izin verdim.

ML8511'den gelen voltaj okumasıyla ilgili olarak, ADC dönüştürücü için bir temel olarak 3.3v Arduino referans pinini (%1 içinde doğru) kullandım. Bu nedenle, 3.3V pininde bir analogdan dijitale dönüştürme yaparak (bunu A1'e bağlayarak) ve ardından bu okumayı sensörden gelen okumayla karşılaştırarak, VIN ne olursa olsun gerçeğe yakın bir okuma elde edebiliriz (3.4V üzerinde olduğu sürece).

int uvLevel = ortalamaAnalogRead(UVOUT);int refLevel = ortalamaAnalogRead(REF_3V3);float outputVoltage = 3,3 / refLevel * uvLevel;

Aşağıdaki bağlantıdan tam kodu indirin.

Adım 7: Muhafaza Kutusu

Muhafaza Kutusu
Muhafaza Kutusu

Ticari bir plastik kutu üzerindeki dikdörtgen ekran penceresini manuel olarak kesmeye yönelik birkaç (kötü) testten sonra, bunun için kendiminkini tasarlamaya karar verdim. Bu nedenle, bir CAD uygulamasıyla bir kutu tasarladım ve mümkün olduğunca küçük tutmak için CR2 pili harici olarak arka tarafa monte ettim (kutunun üzerine bir pil tutucu yapıştırılmış olarak).

Muhafaza davası için STL dosyasını aşağıdaki bağlantıdan indirin.

Adım 8: Gelecekteki Olası İyileştirmeler

  • Çeşitli koşullar altında gerçek gerçek zamanlı UV İndeksi değerlerini ölçmek için bir UV spektrometresi kullanın (UV spektrometreleri çok pahalıdır);
  • Arduino mikrodenetleyici ile ML8511'den eşzamanlı olarak çıktı kaydedin;
  • Çok çeşitli atmosferik koşullar altında gerçek zamanlı olarak ML8511 çıktısını gerçek UVI değeriyle ilişkilendirmek için algoritma yazın.

9. Adım: Resim Galerisi

Resim Galerisi
Resim Galerisi
Resim Galerisi
Resim Galerisi
Resim Galerisi
Resim Galerisi

Adım 10: Krediler

  • Carlos Orts:
  • Arduino forumu:
  • Elektronik Başlatma:
  • U8g2lib:
  • Dünya Sağlık Örgütü, UV İndeksi:

Önerilen: