Kuidas ühendada mulla niiskuseandur Arduinoga?

Sisukord:

Kuidas ühendada mulla niiskuseandur Arduinoga?
Kuidas ühendada mulla niiskuseandur Arduinoga?
Anonim

Millal sa lähed teatud ajaks kuhugi kaugele? Teie toalilli kastmas pole kedagi, seega tuleb abi paluda naabritelt, kes omakorda võivad sellesse suhtuda hooletult. Selle tulemusena tunnevad taimed teie saabudes end halvasti. Selle vältimiseks võite teha automaatse niisutussüsteemi. Selleks vajame Arduinot ja mulla niiskusandurit. Artiklis käsitleme anduri FC-28 ühendamise ja sellega töötamise näidet. Ta on ennast tõestanud positiivselt, tuhandete projektide abil on loodud.

Teave FC-28 kohta

Maa niiskuse määramiseks on väga erinevaid andureid, kuid kõige populaarsem on mudel FC-28. Sellel on madal hind, mille tõttu kasutavad seda oma projektides laialdaselt kõik raadioamatöörid. Kasutatakse Arduinoga pinnase niiskuse andurit. Tal on kaks sondi, mis juhivad elektrivoolu läbi maa. Selgub, et kui muld on märg, siis on sondide vaheline takistus väiksem. Kuiva maapinna korral on takistus suurem. Arduino aktsepteerib neid väärtusi, võrdleb ja vajadusel lülitab sisse näiteks pumba. Andur on võimeline töötama nii digitaalse kui ka analoogrežiimiga, kaalume mõlemat ühendusvõimalust. FC-28 kasutatakse peamiselt väikestes projektides, näiteks ühe konkreetse taime automaatsel kastmisel, kuna selle suur kasutamine on ebamugav selle suuruse ja puuduste tõttu, mida me ka kaalume.

Pinnase niiskuse andur FC-28
Pinnase niiskuse andur FC-28

Kust osta

Fakt on see, et Venemaa poodides on Arduinoga töötamiseks mõeldud andurid suhteliselt kallid. Selle anduri keskmine hind varieerub Venemaal 200-300 rubla, Aliexpressis maksab sama andur vaid 30-50 rubla. Juurdehind on tohutu. Muidugi saab anduri mullaniiskuse mõõtmiseks ka oma kätega teha, aga sellest lähem alt allpool.

Ühenduse kohta

Niiskusanduri ühendamine Arduinoga on väga lihtne. Kaasas on komparaator ja potentsiomeeter anduri tundlikkuse reguleerimiseks, samuti piirväärtuse seadmiseks, kui ühendatakse digitaalväljundi abil. Väljundsignaal, nagu eespool mainitud, võib olla digitaalne ja analoogne.

Pinnase niiskuse anduri otsaots
Pinnase niiskuse anduri otsaots

Ühendamine digitaalväljundiga

Ühendatud peaaegu samamoodi nagu analoog:

  • VCC – 5 V Arduino puhul.
  • D0 – D8 Arduino plaadil.
  • GND –maa.

Nagu eespool mainitud, asuvad andurimoodulil komparaator ja potentsiomeeter. Kõik toimib järgmiselt: potentsiomeetri abil määrame oma anduri piirväärtuse. FC-28 võrdleb väärtust limiidiga ja saadab seejärel väärtuse Arduinosse. Oletame, et anduri väärtused on üle läve, sel juhul edastab Arduino pinnase niiskuse andur 5 V, kui vähem - 0 V. Kõik on väga lihtne, kuid analoogrežiimil on täpsemad väärtused, seega on soovitatav seda kasutada.

Ühendamine digitaalrežiimi abil
Ühendamine digitaalrežiimi abil

Elektriskeem näeb välja nagu ül altoodud fotol. viis

Arduino programmeerimiskood digitaalrežiimi kasutamisel on näidatud allpool.


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); viivitus(1000); } }

Mida meie kood teeb? Esiteks tuvastati kaks muutujat. Esimene muutuja - led_pin - tähistab LED-i ja teine - maapinna niiskusandurit. Järgmisena deklareerime LED-viigu väljundiks ja anduri viigu sisendiks. See on vajalik selleks, et saaksime väärtused kätte saada ja vajadusel LED-i sisse lülitada, et visuaalselt näha, et anduri väärtused on üle läve. Silmuses loeme andurilt väärtused. Kui väärtus on piirmäärast suurem, lülitage LED sisse, kui see on madalam, lülitage see välja. LED-i asemelvõib-olla pump, kõik sõltub sinust.

Analoogrežiim

Analoogväljundi abil ühendamiseks peate töötama A0-ga. Arduino mahtuvuslik pinnase niiskuse andur võtab väärtused vahemikus 0 kuni 1023. Ühendage andur järgmiselt:

  • VCC ühendage 5 V Arduinoga.
  • Anduril olev GND on ühendatud Arduino plaadi GND-ga.
  • A0 ühendage Arduino A0-ga.

Järgmisena kirjutage Arduinosse allolev kood.


int sensor_pin=A0; int väljundi_väärtus; void setup() { Serial.begin(9600); Serial.println("Anduri lugemine"); viivitus (2000); } void loop() { väljundi_väärtus=analoogRead(sensor_pin); väljundi_väärtus=kaart(väljundi_väärtus, 550, 0, 0, 100); Serial.print("Moisture"); Serial.print(väljundi_väärtus); Serial.println("%"); viivitus(1000); }

Mida see kood siis teeb? Esimene samm oli muutujate määramine. Esimest muutujat on vaja anduri kontakti määramiseks ja teine salvestab anduri abil saadud tulemused. Järgmiseks loeme andmeid. Silmuses kirjutame anduri väärtused meie loodud muutujasse output_value. Seejärel arvutatakse mulla niiskuse protsent, misjärel kuvame need sadama monitoril. Ühendusskeem on näidatud allpool.

Pinnase niiskuse anduri analoogühendus
Pinnase niiskuse anduri analoogühendus

DIY

Eespool oli juttu, kuidas ühendada mulla niiskusandur Arduinoga. Nende andurite probleem on see, et need on lühiajalised. Fakt on see, et nad on väga altidkorrosioon. Mõned ettevõtted toodavad kasutusea pikendamiseks spetsiaalse kattega andureid, kuid see pole ikkagi sama. Kaalutakse ka võimalust kasutada andurit mitte sageli, vaid ainult vajaduse korral. Näiteks on olemas programmikood, kus iga sekund loeb andur mulla niiskuse väärtused. Kasutusaega saate pikendada, kui lülitate selle sisse näiteks kord päevas. Aga kui see teile ei sobi, saate mulla niiskusanduri oma kätega teha. Arduino ei tunne erinevust. Põhimõtteliselt on süsteem sama. Lihts alt võite kahe anduri asemel panna oma ja kasutada materjali, mis on vähem korrosioonile vastuvõtlik. Ideaalis kasutage muidugi kulda, kuid selle hinda arvestades tuleb see väga kallis. Üldiselt on FC-28 hinda arvestades odavam osta.

DIY mulla niiskuse andur
DIY mulla niiskuse andur

Pussid ja miinused

Artiklis käsitleti mulla niiskusanduri Arduinoga ühendamise võimalusi ning toodi ka programmikoodi näiteid. FC-28 on tõesti hea pinnase niiskuse andur, kuid millised on selle anduri konkreetsed plussid ja miinused?

Pussid:

  • Hind. Sellel anduril on väga madal hind, nii et iga raadioamatöör saab osta ja ehitada oma taimede automaatse kastmissüsteemi. Muidugi ei sobi see andur suurte kaaludega töötamisel, kuid see pole selleks mõeldud. Kui vajate võimsamat andurit - SM2802B, siis peate selle eest maksma üsna suure summa.
  • Lihtsus. Selle Arduino mulla niiskusanduriga töö valdamine võibiga. Vaid paar juhet, paar rida koodi – ja ongi kõik. Pinnase niiskuse kontroll tehtud.

Miinused:

Soovitan: