როგორ დავაკავშიროთ ნიადაგის ტენიანობის სენსორი Arduino-ს?

Სარჩევი:

როგორ დავაკავშიროთ ნიადაგის ტენიანობის სენსორი Arduino-ს?
როგორ დავაკავშიროთ ნიადაგის ტენიანობის სენსორი Arduino-ს?
Anonim

როდის მიდიხართ სადმე შორს გარკვეული პერიოდის განმავლობაში? შენს შიდა ყვავილებს არავინ რწყავს, ამიტომ დახმარება მეზობლებს უნდა სთხოვო, რომლებიც, თავის მხრივ, შეიძლება უყურადღებოდ იყვნენ ამ საკითხში. შედეგად, თქვენი ჩასვლისას მცენარეები თავს ცუდად გრძნობენ. ამის თავიდან ასაცილებლად, შეგიძლიათ გააკეთოთ ავტომატური სარწყავი სისტემა. ამ მიზნით გვჭირდება Arduino და ნიადაგის ტენიანობის სენსორი. სტატიაში განვიხილავთ FC-28 სენსორთან დაკავშირების და მუშაობის მაგალითს. მან დაამტკიცა საკუთარი თავი დადებითი მხარე, ათასობით პროექტის დახმარებით შეიქმნა.

FC-28-ის შესახებ

არსებობს დედამიწის ტენიანობის განსაზღვრის სენსორების დიდი არჩევანი, მაგრამ ყველაზე პოპულარულია FC-28 მოდელი. მას აქვს დაბალი ფასი, რის გამოც მას ფართოდ იყენებს ყველა რადიომოყვარული თავის პროექტებში. გამოიყენება ნიადაგის ტენიანობის სენსორი Arduino-თ. მას აქვს ორი ზონდი, რომლებიც ატარებენ ელექტრულ დენს მიწაში.გამოდის, რომ თუ ნიადაგი სველია, მაშინ ზონდებს შორის წინააღმდეგობა ნაკლებია. მშრალ ადგილზე, შესაბამისად, წინააღმდეგობა უფრო დიდია. Arduino იღებს ამ მნიშვნელობებს, ადარებს და, საჭიროების შემთხვევაში, ჩართავს, მაგალითად, ტუმბოს. სენსორს შეუძლია იმუშაოს როგორც ციფრულ, ასევე ანალოგურ რეჟიმში, განვიხილავთ ორივე კავშირის ვარიანტს. FC-28 გამოიყენება ძირითადად მცირე პროექტებში, მაგალითად, ერთი კონკრეტული მცენარის ავტომატურად მორწყვისას, რადგან მისი ფართო მასშტაბით გამოყენება მოუხერხებელია მისი ზომისა და უარყოფითი მხარეების გამო, რასაც ჩვენ ასევე განვიხილავთ.

ნიადაგის ტენიანობის სენსორი FC-28
ნიადაგის ტენიანობის სენსორი FC-28

სად ვიყიდოთ

ფაქტია, რომ რუსულ მაღაზიებში Arduino-სთან მუშაობის სენსორები შედარებით ძვირია. ამ სენსორის საშუალო ფასი რუსეთში მერყეობს 200-დან 300 რუბლამდე, ხოლო Aliexpress-ში იგივე სენსორი მხოლოდ 30-50 ღირს. მარკირება უზარმაზარია. რა თქმა უნდა, თქვენ კვლავ შეგიძლიათ გააკეთოთ სენსორი ნიადაგის ტენიანობის გასაზომად საკუთარი ხელით, მაგრამ ამის შესახებ ქვემოთ.

კავშირის შესახებ

ტენიანობის სენსორის Arduino-სთან დაკავშირება ძალიან მარტივია. მას მოყვება შედარება და პოტენციომეტრი სენსორის მგრძნობელობის რეგულირებისთვის, ასევე ციფრული გამომავალი საშუალებით დაკავშირებისას ზღვრული მნიშვნელობის დასაყენებლად. გამომავალი სიგნალი, როგორც ზემოთ აღინიშნა, შეიძლება იყოს ციფრული და ანალოგური.

ნიადაგის ტენიანობის სენსორის პინი
ნიადაგის ტენიანობის სენსორის პინი

დაკავშირება ციფრულ გამომავალთან

დაკავშირებულია თითქმის ისევე, როგორც ანალოგი:

  • VCC - 5V Arduino-ზე.
  • D0 - D8 Arduino დაფაზე.
  • GND -დედამიწა.

როგორც ზემოთ აღინიშნა, სენსორის მოდულზე განლაგებულია შედარებითი და პოტენციომეტრი. ყველაფერი მუშაობს შემდეგნაირად: პოტენციომეტრის გამოყენებით, ჩვენ ვაყენებთ ჩვენი სენსორის ზღვრულ მნიშვნელობას. FC-28 ადარებს მნიშვნელობას ლიმიტს და შემდეგ აგზავნის მნიშვნელობას Arduino-ში. ვთქვათ, სენსორის მნიშვნელობები ზღურბლზე მაღალია, ამ შემთხვევაში ნიადაგის ტენიანობის სენსორი Arduino-ზე გადასცემს 5 ვ-ს, თუ ნაკლებია - 0 ვ. ყველაფერი ძალიან მარტივია, მაგრამ ანალოგურ რეჟიმს უფრო ზუსტი მნიშვნელობები აქვს, ამიტომ რეკომენდებულია მისი გამოყენება.

დაკავშირება ციფრული რეჟიმის გამოყენებით
დაკავშირება ციფრული რეჟიმის გამოყენებით

გაყვანილობის დიაგრამა ჰგავს ზემოთ მოცემულ ფოტოს. გზა

არდუინოს პროგრამირების კოდი ციფრული რეჟიმის გამოყენებისას ნაჩვენებია ქვემოთ.


int led_pin=13; int sensor_pin=8; void setup() { pinMode(led_pin, OUTPUT); pinMode(sensor_pin, INPUT); } void loop() { if(digitalRead(sensor_pin)==HIGH){ digitalWrite(led_pin, HIGH); } else { digitalWrite(led_pin, LOW); დაგვიანებით (1000); } }

რას აკეთებს ჩვენი კოდი? პირველ რიგში, გამოვლინდა ორი ცვლადი. პირველი ცვლადი - led_pin - ემსახურება LED-ის აღნიშვნას, ხოლო მეორე - მიწის ტენიანობის სენსორის აღნიშვნას. შემდეგი, ჩვენ ვაცხადებთ LED პინს, როგორც გამოსავალს, ხოლო სენსორის პინს, როგორც შეყვანას. ეს აუცილებელია იმისათვის, რომ მივიღოთ მნიშვნელობები და საჭიროების შემთხვევაში ჩართეთ LED, რომ ვიზუალურად დავინახოთ, რომ სენსორის მნიშვნელობები ზღურბლზე მაღლა დგას. მარყუჟში ჩვენ ვკითხულობთ მნიშვნელობებს სენსორიდან. თუ მნიშვნელობა აღემატება ლიმიტს, ჩართეთ LED, თუ უფრო დაბალია, გამორთეთ. LED-ის ნაცვლადშესაძლოა ტუმბო, ყველაფერი შენზეა დამოკიდებული.

ანალოგური რეჟიმი

ანალოგური გამომავალი გამოყენებით დასაკავშირებლად, საჭიროა A0-თან მუშაობა. ნიადაგის ტენიანობის ტევადი სენსორი Arduino-ში იღებს მნიშვნელობებს 0-დან 1023-მდე. შეაერთეთ სენსორი შემდეგნაირად:

  • VCC დააკავშირეთ 5V Arduino-ზე.
  • GND სენსორზე დაკავშირებულია GND-თან Arduino დაფაზე.
  • A0 დაუკავშირდით A0-ს Arduino-ზე.

შემდეგ, ჩაწერეთ კოდი ქვემოთ Arduino-ში.


int sensor_pin=A0; int output_value; void setup() { Serial.begin(9600); Serial.println ("სენსორის კითხვა"); დაგვიანება (2000); } void loop() { output_value=analogRead(sensor_pin); გამომავალი_მნიშვნელობა=რუკა (გამომავალი_მნიშვნელობა, 550, 0, 0, 100); Serial.print ("ტენიანობა"); Serial.print(output_value); Serial.println("%"); დაგვიანებით (1000); }

მაშ რას აკეთებს ეს კოდი? პირველი ნაბიჯი იყო ცვლადების დაყენება. პირველი ცვლადი საჭიროა სენსორის კონტაქტის დასადგენად, მეორე კი შეინახავს შედეგებს, რომლებსაც სენსორის გამოყენებით მივიღებთ. შემდეგი, ჩვენ ვკითხულობთ მონაცემებს. ციკლში ჩვენ ვწერთ მნიშვნელობებს სენსორიდან ჩვენს მიერ შექმნილ output_value ცვლადზე. შემდეგ გამოითვლება ნიადაგის ტენიანობის პროცენტი, რის შემდეგაც გამოვყოფთ მათ პორტის მონიტორზე. გაყვანილობის დიაგრამა ნაჩვენებია ქვემოთ.

ნიადაგის ტენიანობის სენსორის ანალოგური კავშირი
ნიადაგის ტენიანობის სენსორის ანალოგური კავშირი

წვრილმანი

ზემოთ იყო განხილული, თუ როგორ უნდა დააკავშიროთ ნიადაგის ტენიანობის სენსორი Arduino-სთან. ამ სენსორების პრობლემა ის არის, რომ ისინი ხანმოკლეა. ფაქტია, რომ ისინი ძალიან მიდრეკილნი არიანკოროზიის. ზოგიერთი კომპანია ამზადებს სენსორებს სპეციალური საფარით, რათა გაზარდოს მომსახურების ვადა, მაგრამ ეს მაინც არ არის იგივე. ასევე განიხილება სენსორის არა ხშირად გამოყენების ვარიანტი, მაგრამ მხოლოდ საჭიროების შემთხვევაში. მაგალითად, არსებობს პროგრამის კოდი, სადაც ყოველ წამს სენსორი კითხულობს ნიადაგის ტენიანობის მნიშვნელობებს. თქვენ შეგიძლიათ გაახანგრძლივოთ მომსახურების ვადა, თუ ჩართავთ მას, მაგალითად, დღეში ერთხელ. მაგრამ თუ ეს არ შეესაბამება თქვენ, მაშინ შეგიძლიათ გააკეთოთ ნიადაგის ტენიანობის სენსორი საკუთარი ხელით. Arduino ვერ იგრძნობს განსხვავებას. პრინციპში, სისტემა იგივეა. უბრალოდ, ორი სენსორის ნაცვლად, შეგიძლიათ დააყენოთ საკუთარი და გამოიყენოთ მასალა, რომელიც ნაკლებად მგრძნობიარეა კოროზიის მიმართ. იდეალურ შემთხვევაში, რა თქმა უნდა, გამოიყენოთ ოქრო, მაგრამ მისი ფასიდან გამომდინარე, ძალიან ძვირი გამოვა. ზოგადად, FC-28-ის ფასის გათვალისწინებით, ყიდვა უფრო იაფია.

DIY ნიადაგის ტენიანობის სენსორი
DIY ნიადაგის ტენიანობის სენსორი

დადებითი და უარყოფითი მხარეები

სტატიაში განხილული იყო ნიადაგის ტენიანობის სენსორის Arduino-სთან დაკავშირების ვარიანტები და ასევე წარმოდგენილი იყო პროგრამის კოდის მაგალითები. FC-28 ნამდვილად კარგი ნიადაგის ტენიანობის სენსორია, მაგრამ რა არის ამ სენსორის დადებითი და უარყოფითი მხარეები?

დადებითი:

  • ფასი. ამ სენსორს ძალიან დაბალი ფასი აქვს, ამიტომ ყველა რადიომოყვარულს შეეძლება მცენარეების ავტომატური მორწყვის სისტემის შეძენა და აშენება. რა თქმა უნდა, დიდი მასშტაბებით მუშაობისას, ეს სენსორი არ არის შესაფერისი, მაგრამ ის არ არის განკუთვნილი. თუ გჭირდებათ უფრო ძლიერი სენსორი - SM2802B, მაშინ ამაში საკმაოდ დიდი თანხის გადახდა მოგიწევთ.
  • სიმარტივობა. ნიადაგის ტენიანობის ამ სენსორთან მუშაობის დაუფლება Arduino-შითითოეული. სულ რამდენიმე მავთული, კოდის რამდენიმე ხაზი - და ეს არის ის. შესრულებულია ნიადაგის ტენიანობის კონტროლი.

მინუსები:

გირჩევთ: