Belirli bir süre için ne zaman uzak bir yere gidersiniz? İç mekan çiçeklerinizi sulayacak kimse yok, bu yüzden bu konuda ihmalkar olabilecek komşularınızdan yardım istemeniz gerekiyor. Sonuç olarak, gelişinizle bitkiler kendilerini kötü hissedecekler. Bunun olmasını önlemek için otomatik bir sulama sistemi yapabilirsiniz. Bunun için bir Arduino ve bir toprak nem sensörüne ihtiyacımız var. Makalede, FC-28 sensörü ile bağlantı ve çalışma örneğini ele alacağız. Yarattığı binlerce proje sayesinde olumlu yanlarını kanıtladı.
FC-28 hakkında
Dünyanın nemini belirlemek için çok çeşitli sensörler vardır, ancak en popüler olanı FC-28 modelidir. Tüm radyo amatörleri tarafından projelerinde yaygın olarak kullanıldığı için düşük bir fiyatı vardır. Arduino ile toprak nem sensörü kullanılmaktadır. Topraktan elektrik akımı ileten iki sondası var. Toprak ıslaksa, problar arasındaki direncin daha az olduğu ortaya çıktı. Sırasıyla kuru zeminde direnç daha fazladır. Arduino bu değerleri kabul eder, karşılaştırır ve gerekirse örneğin bir pompayı açar. Sensör hem dijital hem de analog modlarla çalışabilir, her iki bağlantı seçeneğini de dikkate alacağız. FC-28, özellikle küçük projelerde, örneğin belirli bir bitkinin otomatik olarak sulanmasında kullanılır, çünkü boyutu ve dezavantajları nedeniyle büyük ölçekte kullanılması uygun değildir.
Nereden satın alınır
Gerçek şu ki, Rus mağazalarında Arduino ile çalışan sensörler nispeten pahalıdır. Rusya'da bu sensörün ortalama fiyatı 200 ila 300 ruble arasında değişirken, Aliexpress'de aynı sensörün maliyeti sadece 30-50 civarında. İşaretleme çok büyük. Tabii ki, yine de kendi ellerinizle toprak nemini ölçmek için bir sensör yapabilirsiniz, ancak daha fazlasını aşağıda bulabilirsiniz.
Bağlantı hakkında
Nem sensörünü Arduino'ya bağlamak çok kolaydır. Sensörün hassasiyetini ayarlamak ve dijital bir çıkış kullanarak bağlandığında sınır değerini ayarlamak için bir karşılaştırıcı ve bir potansiyometre ile birlikte gelir. Çıkış sinyali, yukarıda belirtildiği gibi dijital ve analog olabilir.
Dijital çıkışla bağlantı
Analogla neredeyse aynı şekilde bağlanır:
- VCC - Arduino'da 5V.
- D0 - Arduino kartında D8.
- GND -dünya.
Yukarıda belirtildiği gibi, sensör modülünde bir karşılaştırıcı ve bir potansiyometre bulunur. Her şey şu şekilde çalışıyor: Bir potansiyometre kullanarak sensörümüzün sınır değerini belirliyoruz. FC-28, değeri limitle karşılaştırır ve ardından değeri Arduino'ya gönderir. Diyelim ki sensör değerleri eşiğin üzerinde, bu durumda Arduino üzerindeki toprak nem sensörü daha az ise - 0V 5V iletir. Her şey çok basit ama analog mod daha doğru değerlere sahip bu yüzden kullanılması tavsiye edilir.
Kablo şeması yukarıdaki fotoğrafa benziyor. yol
Dijital modu kullanırken Arduino için programlama kodu aşağıda gösterilmiştir.
int led_pin=13; int sensor_pin=8; void setup() { pinMode(led_pin, OUTPUT); pinMode(sensor_pin, INPUT); } void loop() { if(digitalRead(sensor_pin)==YÜKSEK){ digitalWrite(led_pin, YÜKSEK); } else { digitalWrite(led_pin, LOW); gecikme(1000); } }
Kodumuz ne işe yarar? İlk olarak iki değişken tanımlanmıştır. İlk değişken - led_pin - LED'i ve ikincisi - zemin nem sensörünü belirlemeye yarar. Daha sonra LED pinini çıkış, sensör pinini giriş olarak ilan ediyoruz. Bu, değerleri alabilmemiz için gereklidir ve gerekirse sensör değerlerinin eşiğin üzerinde olduğunu görsel olarak görmek için LED'i açın. Döngüde sensörden gelen değerleri okuyoruz. Değer limitten yüksekse LED'i açın, düşükse kapatın. LED yerinebelki bir pompa, hepsi sana kalmış.
Analog mod
Analog çıkışı kullanarak bağlanmak için A0 ile çalışmanız gerekir. Arduino'daki kapasitif toprak nem sensörü 0 ile 1023 arası değerler alır. Sensörü aşağıdaki gibi bağlayınız:
- VCC, 5V'u Arduino'ya bağlayın.
- Sensördeki GND, Arduino kartındaki GND'ye bağlanır.
- A0 Arduino'da A0'a bağlanın.
Sonra, aşağıdaki kodu Arduino'ya yazın.
int sensor_pin=A0; int çıktı_değeri; geçersiz kurulum() { Serial.begin(9600); Serial.println("Sensörü okuma"); gecikme(2000); } void loop() { output_value=analogRead(sensor_pin); çıktı_değeri=harita(çıktı_değeri, 550, 0, 0, 100); Serial.print("Nem"); Serial.print(çıktı_değeri); Serial.println("%"); gecikme(1000); }
Peki bu kod ne işe yarıyor? İlk adım değişkenleri ayarlamaktı. İlk değişken sensörün temasını belirlemek için gereklidir ve diğeri sensörü kullanarak alacağımız sonuçları saklayacaktır. Ardından verileri okuyoruz. Döngüde ise oluşturduğumuz output_value değişkenine sensörden gelen değerleri yazıyoruz. Ardından toprak nemi yüzdesi hesaplanır ve ardından bunları liman monitöründe görüntüleriz. Bağlantı şeması aşağıda gösterilmiştir.
Kendin Yap
Toprak nem sensörünün Arduino'ya nasıl bağlanacağı yukarıda tartışılmıştı. Bu sensörlerle ilgili sorun, kısa ömürlü olmalarıdır. Gerçek şu ki, çok eğilimlileraşınma. Bazı şirketler servis ömrünü uzatmak için özel kaplamalı sensörler yapıyor ama yine de eskisi gibi değil. Ayrıca, sensörün sıklıkla değil, yalnızca gerektiğinde kullanılması seçeneği de dikkate alınır. Örneğin, sensörün her saniye toprak nem değerlerini okuduğu bir program kodu vardır. Örneğin günde bir kez açarsanız hizmet ömrünü uzatabilirsiniz. Ancak bu size uymuyorsa, kendi ellerinizle bir toprak nem sensörü yapabilirsiniz. Arduino farkı hissetmeyecek. Temelde sistem aynı. Basitçe, iki sensör yerine kendinizinkini koyabilir ve korozyona daha az duyarlı bir malzeme kullanabilirsiniz. İdeal olarak, elbette altın kullanın, ancak fiyatı göz önüne alındığında çok pahalı çıkacaktır. Genel olarak, FC-28 fiyatı göz önüne alındığında satın almak daha ucuzdur.
Artıları ve eksileri
Makalede toprak nem sensörünü Arduino'ya bağlama seçenekleri tartışıldı ve program kodu örnekleri de sunuldu. FC-28 gerçekten iyi bir toprak nemi sensörüdür, ancak bu sensörün belirli artıları ve eksileri nelerdir?
Artıları:
- Fiyat. Bu sensörün fiyatı çok düşük, bu nedenle her radyo amatörü bitkiler için kendi otomatik sulama sistemini satın alıp kurabilecek. Tabii ki, büyük ölçeklerle çalışırken bu sensör uygun değildir, ancak bunun için tasarlanmamıştır. Daha güçlü bir sensöre ihtiyacınız varsa - SM2802B, bunun için oldukça büyük bir miktar ödemeniz gerekecek.
- Basitlik. Arduino'daki bu toprak nemi sensörü ile çalışmaya hakim olmak,her biri. Sadece birkaç kablo, birkaç satır kod - hepsi bu. Toprak nemi kontrolü yapıldı.
Eksileri: