5.7 KiB
Toprak Nemini Ölç - Wio Terminal
Bu dersin bu bölümünde, Wio Terminal'inize kapasitif bir toprak nem sensörü ekleyecek ve ondan değerler okuyacaksınız.
Donanım
Wio Terminal için bir kapasitif toprak nem sensörüne ihtiyacınız var.
Kullanacağınız sensör, toprağın nemini, toprağın kapasitansını algılayarak ölçen bir Kapasitif Toprak Nem Sensörü. Toprağın nemi değiştikçe bu özellik de değişir. Toprak nemi arttıkça, voltaj azalır.
Bu bir analog sensördür, bu nedenle Wio Terminal üzerindeki analog pinlere bağlanır ve 0-1.023 arasında bir değer oluşturmak için dahili bir ADC kullanır.
Toprak nem sensörünü bağlayın
Grove toprak nem sensörü, Wio Terminal'in analog/dijital olarak yapılandırılabilir portuna bağlanabilir.
Görev - toprak nem sensörünü bağlayın
Toprak nem sensörünü bağlayın.
-
Grove kablosunun bir ucunu toprak nem sensöründeki sokete takın. Kablo yalnızca tek bir yönde takılabilir.
-
Wio Terminal'inizi bilgisayarınızdan veya başka bir güç kaynağından ayırarak, Grove kablosunun diğer ucunu ekranı size dönük şekilde sağ taraftaki Grove soketine bağlayın. Bu, güç düğmesinden en uzak olan sokettir.
- Toprak nem sensörünü toprağa yerleştirin. Sensör üzerinde bir 'en yüksek pozisyon çizgisi' vardır - sensör boyunca uzanan beyaz bir çizgi. Sensörü bu çizgiye kadar, ancak çizgiyi geçmeyecek şekilde yerleştirin.
- Artık Wio Terminal'inizi bilgisayarınıza bağlayabilirsiniz.
Toprak nem sensörünü programlayın
Wio Terminal artık bağlı toprak nem sensörünü kullanacak şekilde programlanabilir.
Görev - toprak nem sensörünü programlayın
Cihazı programlayın.
-
PlatformIO kullanarak yepyeni bir Wio Terminal projesi oluşturun. Bu projeye
soil-moisture-sensor
adını verin.setup
fonksiyonuna seri portu yapılandırmak için kod ekleyin.⚠️ Gerekirse 1. proje, 1. dersteki PlatformIO projesi oluşturma talimatlarına başvurabilirsiniz.
-
Bu sensör için bir kütüphane yoktur, bunun yerine analog pinden okumak için yerleşik Arduino
analogRead
fonksiyonunu kullanabilirsiniz. Başlangıç olarak,setup
fonksiyonuna aşağıdaki kodu ekleyerek analog pini giriş olarak yapılandırın, böylece bu pinden değerler okunabilir.pinMode(A0, INPUT);
Bu,
A0
pinini, voltajın okunabileceği bir giriş pini olarak ayarlar. -
loop
fonksiyonuna bu pinden voltaj okumak için aşağıdaki kodu ekleyin:int soil_moisture = analogRead(A0);
-
Bu kodun altına, değeri seri porta yazdırmak için aşağıdaki kodu ekleyin:
Serial.print("Soil Moisture: "); Serial.println(soil_moisture);
-
Son olarak, 10 saniyelik bir gecikme ekleyin:
delay(10000);
-
Kodu derleyin ve Wio Terminal'e yükleyin.
⚠️ Gerekirse 1. proje, 1. dersteki PlatformIO projesi oluşturma talimatlarına başvurabilirsiniz.
-
Kod yüklendikten sonra, seri monitörü kullanarak toprak nemini izleyebilirsiniz. Toprağa biraz su ekleyin veya sensörü topraktan çıkarın ve değerin nasıl değiştiğini görün.
> Executing task: platformio device monitor < --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time --- More details at http://bit.ly/pio-monitor-filters --- Miniterm on /dev/cu.usbmodem1201 9600,8,N,1 --- --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H --- Soil Moisture: 526 Soil Moisture: 529 Soil Moisture: 521 Soil Moisture: 494 Soil Moisture: 454 Soil Moisture: 456 Soil Moisture: 395 Soil Moisture: 388 Soil Moisture: 394 Soil Moisture: 391
Yukarıdaki örnek çıktıda, su eklendikçe voltajın düştüğünü görebilirsiniz.
💁 Bu kodu code/wio-terminal klasöründe bulabilirsiniz.
😀 Toprak nem sensörü programınız başarılı oldu!
Feragatname:
Bu belge, AI çeviri hizmeti Co-op Translator kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Belgenin orijinal dili, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan yanlış anlamalar veya yanlış yorumlamalar için sorumluluk kabul etmiyoruz.