İçindekiler:
- Adım 1: Bazı Teori
- Adım 2: Bu Proje için Parçalar
- 3. Adım: Yağmur Toplayıcı
- Adım 4: Devre
- Adım 5: Kod
- Adım 6: Kalibrasyon ve Test
- 7. Adım: Sonradan Düşünceler ve Teşekkür
Video: Arduino Yağmur Ölçer Kalibrasyonu: 7 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
Tanıtım:
Bu Eğitilebilir Tabloda, Arduino ile bir yağmur göstergesi 'oluşturuyoruz' ve onu günlük ve saatlik yağışı rapor edecek şekilde kalibre ediyoruz. Kullandığım yağmur toplayıcı, devrilme kovası tipinde yeniden tasarlanmış bir yağmur ölçerdir. Hasarlı bir kişisel hava istasyonundan geldi. Bununla birlikte, sıfırdan nasıl yapılacağına dair birçok harika Talimat var.
Bu Eğitilebilir Tablo, yaptığım bir hava istasyonunun bir parçasıdır ve bir öğretici olarak gizlenmiş öğrenme sürecimin bir belgesidir:)
Yağmur Göstergesinin Özellikleri:
- Weather Underground'a kolay yükleme için günlük ve saatlik yağış ölçümleri inç cinsindendir.
- Kodu basit tutmak için manyetik anahtarın geri tepme kodu dahil değildir.
- daha çok bir öğretici olmak, bitmiş ürün daha çok bir prototipin prototipidir.
Adım 1: Bazı Teori
Yağış, uzunluk boyutuna sahip olan milimetre veya inç cinsinden rapor edilir/ölçülür. Yağmur suyunun dağılıp boşalmaması durumunda, yağmur alanının her bölümünün ne kadar yüksekte yağış aldığını gösterir. Yani, 1,63 mm'lik bir yağış, herhangi bir şekilde düz seviyeli bir tankım olsaydı, toplanan yağmur suyunun tank tabanından 1,63 mm yükseklikte olacağı anlamına gelirdi.
Tüm yağmur ölçerlerin bir yağış toplama alanı ve bir yağış miktarı ölçümü vardır. Toplama alanı, yağmurun toplandığı bölgedir. Ölçüm nesnesi, bir sıvı için bir tür hacim ölçümü olacaktır.
Yani mm veya inç cinsinden yağış
yağış yüksekliği = toplanan yağmur hacmi / toplama alanı
Yağmur toplayıcımda uzunluk ve genişlik sırasıyla 11 cm'ye 5 cm idi ve bu da 55 cm2'lik bir toplama alanı sağladı. Yani 9 mililitrelik bir yağmur toplamı 9 cc/55 cm2 = 0.16363… cm = 1.6363… mm = 0.064 inç anlamına gelir.
Devirme kovası yağmur göstergesinde, kova 9 ml (veya 0.064… inç yağmur) için 4 kez eğilir ve bu nedenle tek bir uç (9/4) ml = 2.25 ml (veya 0.0161.. inç) içindir. Saatlik okumalar yaparsak (sıfırlamalardan önce günde 24 okuma), üç önemli basamak doğruluğunu korumak yeterince iyi.
Böylece, her bir kepçe ucunda/dökülmesinde kod, ona 1 açma-kapama sırası veya tek tıklama olarak erişir. Evet, 0.0161 inç yağmur bildirdik. Arduino açısından tekrarlamak gerekirse
tek tıklama = 0.0161 inç yağmur
Not 1: Uluslararası Birimler Sistemini tercih ediyorum, ancak Weather Underground, Imperial/US birimlerini tercih ediyor ve bu nedenle bu dönüşüm inç'e çevriliyor.
Not 2: Hesaplamalar sizin için uygun değilse, bu tür konularda mükemmel yardım sağlayan Yağış Hacmi bölümüne gidin.
Adım 2: Bu Proje için Parçalar
Parçaların çoğu ortalıkta yatıyordu ve adil bir listeleme (formalite için)
- Arduino Uno (veya başka bir uyumlu)
- Eski hasarlı hava istasyonundan Yağmur Göstergesi.
- Ekmek tahtası.
- Rain Gauge'umu devre tahtasına bağlamak için RJ11.
- Yukarı çekme direnci olarak hareket etmek için 10K veya daha yüksek direnç. 15K kullandım.
- 2 adet erkek-dişi atlama teli
- 2 erkekten erkeğe atlama teli.
- USB kablosu; A Erkekten B Erkek'e
Aletler:
Şırınga (12 ml kapasite kullanılmıştır)
3. Adım: Yağmur Toplayıcı
Yağmur toplayıcımın fotoğrafları birçok kişiye durumu netleştirmeli. Her neyse, toplama alanına düşen yağmur, içindeki iki devrilme kovasından birine kanalize oluyor. İki devrilme kovası bir tahterevalli gibi birbirine bağlıdır ve yağmur suyu ağırlığı (benimki için 0.0161 inç yağmur) bir kovayı aşağıya indirdikçe boşalır ve diğer kovalar yükselir ve bir sonraki yağmur suyunu toplamak için kendini konumlandırır. Devrilme hareketi, bir mıknatısı bir 'manyetik anahtar' üzerinde hareket ettirir ve devre elektriksel olarak bağlanır.
Adım 4: Devre
devre yapmak için
- Arduino'nun 2 numaralı dijital pinini direncin bir ucuna bağlayın.
- Direncin diğer ucunu Toprak pimine (GND) bağlayın.
- RJ11 jakının bir ucunu Arduino'nun 2 numaralı dijital pinine bağlayın.
- RJ11 jakının diğer ucunu Arduino'nun (5V) +5V pinine bağlayın.
- Yağmur ölçeri RJ11'e takın.
Devre tamamlandı. Atlama telleri ve devre tahtası, bağlantıların yapılmasını kolaylaştırır.
Projeyi tamamlamak için Arduino'yu USB kablosunu kullanarak PC'ye bağlayın ve aşağıda verilen çizimi yükleyin.
Adım 5: Kod
RainGauge.ino taslağı (bu adımın sonunda gömülüdür) iyi yorumlanmıştır ve bu yüzden sadece üç bölüme işaret edeceğim.
Bir kısım, devrilme kovası uçlarının sayısını sayar.
if(bucketPositionA==false && digitalRead(RainPin) == YÜKSEK){
… … }
Başka bir parça zamanı kontrol eder ve yağmur miktarını hesaplar
if(now.minute()==0 && ilk == true){
hourlyRain = günlükRain - günlükRain_till_LastHour; …………
ve başka bir bölüm gece yarısı yağmuru gündüz için temizler.
if(now.hour() == 0){
günlükYağmur = 0; …..
Adım 6: Kalibrasyon ve Test
Yağmur Toplayıcıyı devrenin geri kalanından ayırın ve aşağıdaki adımları gerçekleştirin.
- Şırıngayı suyla doldurun. Benimkini 10 ml ile dolduruyorum.
- Yağmur Toplayıcıyı düz bir yüzeyde tutun ve şırıngadaki suyu azar azar boşaltın.
- Devirme kovalarının sayısını tutuyorum. Dört ipucu benim için yeterliydi ve şırıngadan 9 ml boşaltıldı. Hesaplamalara göre (teori bölümüne bakın) uç başına 0.0161 inç yağmur miktarını elde ettim.
- Bu bilgiyi başlangıçta koduma dahil ediyorum.
const çift kovaAmount = 0.0161;
Hepsi bu kadar. Daha fazla doğruluk için, 0.01610595 gibi daha fazla rakam dahil edilebilir. Elbette, Yağmur Toplayıcınız benimkiyle aynı değilse, hesapladığınız rakamların değişmesi beklenir.
Test amaçlı
- Yağmur Toplayıcıyı RJ11 soketine bağlayın.
- Arduino'yu USB kablosunu kullanarak PC'ye bağlayın.
- Seri monitörü açın.
- Önceden ölçülen miktarda su dökün ve saat tamamlandığında çıktıyı izleyin.
- Su dökmeyin, ancak bir sonraki saatin tamamlanmasını bekleyin. Bu durumda saatlik yağmur sıfır olmalıdır.
- Bilgisayarı gece boyunca bağlı devre ile çalıştırın ve günlük yağmurun ve saatlik yağmurun gece yarısında sıfırlanıp sıfırlanmadığına bakın. Bu adım için, PC'nin saati de uygun bir değere değiştirilebilir (seri monitördeki çıkışları canlı izlemek için).
7. Adım: Sonradan Düşünceler ve Teşekkür
Benim durumumdaki yağış okumalarının çözünürlüğü 0.0161 inç ve daha doğru yapılamaz. Pratik koşullar doğruluğu daha da azaltabilir. Hava durumu ölçümleri kuantum mekaniğinin doğruluğuna sahip değildir.
Kodun bir kısmı Lazy Old Geek'in Instructable'ından ödünç alındı.
Önerilen:
Arduino ve Yağmur Damlası Sensörü Kullanan Yağmur Dedektörü: 8 Adım
Arduino ve Yağmur Damlası Sensörü Kullanan Yağmur Dedektörü: Bu derste, bir yağmur sensörü kullanarak bir yağmurun nasıl algılanacağını ve bir buzzer modülü ve OLED Ekran ve Visuino kullanarak nasıl ses çıkarılacağını öğreneceğiz.Videoyu izleyin
Meten Aan Su: Yağmur Yoğunluk Ölçer: 6 Adım
Meten Aan Water: Rain Intensity Meter: IntroBu cihaz yağış şiddetini ölçmek için yaratılmıştır. Yağış miktarını ölçmenin birçok yolu vardır. Ancak, istenen bilgi yağış yoğunluğu ise, çoğu ölçüm cihazı çok pahalıdır. Bu cihaz ucuz ve kolay
PiSiphon Yağmur Ölçer (Prototip): 4 Adım
PiSiphon Yağmur Ölçer (Prototip): Bu proje, Bell sifon Yağmur Ölçer üzerinde bir iyileştirmedir. Daha doğru ve sızdıran sifonlar geçmişten bir şey olmalı. Geleneksel olarak yağış, manuel bir yağmur göstergesi ile ölçülür. Otomatik hava istasyonları (IoT hava durumu istasyonları dahil
Çan Sifon Yağmur Ölçer: 8 Adım (Resimli)
Bell Siphon Yağmur Ölçer: Bunun geliştirilmiş bir versiyonu PiSiphon Yağmur Ölçer'dir. Geleneksel olarak yağış, manuel bir yağmur ölçer ile ölçülür.Otomatik hava istasyonları (IoT hava istasyonları dahil) normalde devrilme kovaları, akustik disdrometreler veya lazer disdrometreler kullanır.T
Ultrasonik Yağmur Suyu Tankı Kapasite Ölçer: 10 Adım (Resimlerle)
Ultrasonik Yağmur Suyu Tankı Kapasite Ölçer: Benim gibiyseniz ve biraz çevre bilinciniz varsa (ya da sadece birkaç kuruş biriktirmek isteyen cimrilerseniz - ki bu da benim…), bir yağmur suyu tankınız olabilir. Aldığımız oldukça nadir yağmurları toplamak için bir tankım var