Turinys:
- 1 žingsnis: surinkite reikalingas medžiagas
- 2 žingsnis: prijunkite plokštę ir prijunkite
- 3 žingsnis: koduokite fotoelektrinius ir temperatūros jutiklius
- 4 žingsnis: koduokite lietaus vandens ir dirvožemio drėgmės jutiklius
- 5 veiksmas: garsiakalbio ir pranešimų dėžutės išvesties kodavimas
- 6 žingsnis: Išvada
Video: Žemės ūkio jutiklių rinkinys: 6 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:49
Jackson Breakell, Tyler McCubbins ir Jakob Thaler projektas EF 230
Žemės ūkis yra gyvybiškai svarbus JAV gamybos veiksnys. Augalai gali būti naudojami įvairiems tikslams, pradedant drabužių, farmacijos ir maisto priedų gamybos žaliavomis, baigiant tiesioginiu pasėlių dalių, dažniausiai daiginančių vaisių, vartojimu. Dauguma pasėlių JAV auginami lauke, kur oro sąlygų ar temperatūros negalima plačiai kontroliuoti. Atsižvelgiant į tai, kaip drastiškai nepalankios oro sąlygos gali paveikti pasėlių augimą, o tai savo ruožtu daro įtaką Jungtinių Valstijų ekonomikai, labai svarbu stebėti pasėlių lauko sąlygas.
Mūsų prietaisas, žemės ūkio jutiklių rinkinys, leidžia ūkininkams stebėti iš anksto parinktų savo lauko dalių būklę, naudojant 4 jutiklius: lietaus vandens jutiklį, dirvožemio drėgmės jutiklį, temperatūros jutiklį ir fotoelektrinį jutiklį. Šių jutiklių derinys leidžia ūkininkui tinkamai suplanuoti sezono derlių, prisitaikyti prie per mažo ar per didelio lietaus, geriau susidoroti su nelaimėmis, kurios gali nužudyti pasėlius, ir sutaupyti laiko bei rūpesčių imant dirvožemio mėginius ir naudojant brangesnę jutiklių įrangą. Šioje instrukcijoje mes supažindinsime jus su laidais ir kodavimu, esančiu už mūsų žemės ūkio jutiklių masyvo, kad ir jūs galėtumėte sukurti savo.
1 žingsnis: surinkite reikalingas medžiagas
Žemiau yra reikalingų medžiagų, kurių jums reikės norint pradėti, sąrašas"
1. „Arduino Board“, geriausia „Arduino Uno“
2. Pagrindinė duonos lenta
3. 1x 220 omų rezistorius
4. Įvairių spalvų laidai
5. Micro USB - USB kabelis
6. Prie lentos montuojamas garsiakalbis
7. Fotoelektrinis jutiklis
8. Temperatūros jutiklis
9. Lietaus vandens jutiklis
10. Dirvožemio drėgmės jutiklis
11. Kompiuteris su įdiegtu „Matlab 2017“ir „Arduino“palaikymo paketu (palaikymo paketą rasite prieduose)
2 žingsnis: prijunkite plokštę ir prijunkite
Pradėkite prijungti plokštę, kaip parodyta aukščiau, arba bet kokiu jums tinkamiausiu būdu. Yra pažodžiui neribotas būdų, kaip plokštė gali būti prijungta, todėl tiksli konfigūracija tikrai priklauso nuo jūsų. Prijungę plokštę, pradėkite prijungti jutiklius. Lietaus vandens, dirvožemio drėgmės ir fotoelektriniai jutikliai yra analoginiai išėjimai, todėl įsitikinkite, kad jie prijungti prie analoginio „Arduino“skyriaus. Kita vertus, temperatūros jutiklis yra skaitmeninis išėjimas, todėl įsitikinkite, kad jis prijungtas prie turimo „Arduino“skaitmeninio įėjimo. „Arduino“turi turėti 3,3 V ir 5 V išėjimus, todėl įsitikinkite, kad jutikliai yra prijungti prie įtampos, su kuria jie yra suderinami.
Įsitikinę, kad plokštė prijungta teisingai, prijunkite „Micro USB“prie USB kabelio iš kompiuterio prie kompiuterio „Micro USB“prievado ir įjunkite „Arduino“. Atidarykite „Matlab“ir įsitikinkite, kad prieduose įdiegėte „Arduino“palaikymo paketą, paleiskite komandą „fopen (serial ('nada'))" be. "Turėtų pasirodyti klaida, o klaida turėtų pasakyti jūs turite galimą komportą su skaičiumi. Vykdykite komandą "a = arduino ('comx', 'uno')", kur x yra jūsų komporto numeris, kad susietumėte savo Arduino su objektu. Šviesos diodas ant Arduino turėtų greitai mirksėti, kad parodytų, jog yra prijungtas.
3 žingsnis: koduokite fotoelektrinius ir temperatūros jutiklius
Prieš pradėdami koduoti, užsirašykite, kur yra prijungti jūsų jutikliai „Arduino“, nes tai bus svarbu komandai readVoltage. Pradėkite kodą, nustatydami kintamą saulės spindulį lygų komandai „readVoltage (a, 'X#')“, kur X# yra prievadas, prie kurio esate prisijungę, o a tiesiog skambina „Arduino“, kurį susiejote su tuo kintamuoju. Pradėkite if, ir nustatykite pirmąją saulės šviesos sąlygą <3. Nustatykite išvestį kaip "info. TOD = 'night'", kad paros laikas būtų rodomas kaip struktūra, tada pridėkite kitą teiginį su išvestimi kaip "info. TOD = ' diena "". Kadangi tai yra kitas teiginys, mums nereikia sąlygos, nes ji veiks su visomis kitomis reikšmėmis, neapibrėžtomis teiginyje. Įsitikinkite, kad sakinį if baigsite pabaiga ir pereisite prie programavimo temperatūros jutiklis.
Nustatykite kintamąjį termo lygų kitai readVoltage komandai, komanda yra "readVoltage (a, 'X#')". Mūsų atveju temperatūra turėjo būti perskaičiuota iš įtampos vienetų į Celsijų, taigi lygtis "tempC = (termo-.5).*100" konvertuoti iš įtampos į Celsijų. Kad būtų lengviau, temperatūrą Celsijaus laipsniu pavertėme Farenheitu, tačiau tai yra neprivaloma.
Įklijavimo kodas
saulės šviesa = skaityti įtampą (a, 'A1'), jei saulės šviesa <3
info. TOD = 'naktis'
Kitas
info. TOD = 'diena'
galas
termo = skaitymo įtampa (a, 'A3');
tempC = (termo-.5).*100;
info.tempF = (9/5.*tempC) +32
4 žingsnis: koduokite lietaus vandens ir dirvožemio drėgmės jutiklius
Kaip nurodyta paskutiniame žingsnyje, įsitikinkite, kad žinote, prie kokių prievadų yra prijungti jūsų jutikliai „Arduino“plokštėje, nes tai padarys šį žingsnį daug mažiau varginantį. Pradėkite nuo lietaus vandens jutiklio ir pradėkite teiginį. Nustatykite pirmąją sąlygą "readVoltage (a, 'X#')> 4" ir nustatykite jos išvestį į "info. Rain = 'be kritulių". Pridėkite „elseif“ir prieš tai nustatykite jos sąlyginę reikšmę komandai „readVoltage“, bet nustatykite ją> 2. Pridėkite „&&“, kad nurodytumėte kitą sąlygą, kuri turi būti įvykdyta, ir nustatykite ją kaip readVoltage komandą, kaip anksčiau, ir nustatykite ją į <= 4. Išvestis bus „info. Rain = 'misting'". Galiausiai pridėkite kitą ir nustatykite jo išvestį į "info. Rain = 'downpour'". Jums gali tekti koreguoti sąlygų vertes, atsižvelgiant į kambario, kuriame dirbate, aplinkos drėgmę.
Tada pradėkite dirvožemio drėgmės jutiklio kodą ir pradėkite nuo teiginio. Nustatykite „if“teiginio sąlygą į „readVoltage (a, 'X#')> 4 ir pridėkite išvestį„ info.soil = 'dry' “. Pridėkite„ elseif “teiginį ir naudodami aukščiau pateiktą„ readVoltage “komandą nustatykite> 2. Pridėkite „&&“ir nustatykite kitą komandą „readVoltage“<= 4. Nustatykite jo išvestį į „info.soil = 'optimal saturation'". Pridėkite kitą teiginį ir nustatykite jo išvestį į „info.soil = 'flood' “, ir nepamirškite pridėti pabaigos.
Įklijavimo kodas
jei skaitoma Įtampa (a, 'A0')> 4 informacija. Lietus = 'be kritulių'
elseif readVoltage (a, 'A0')> 2 && readVoltage (a, 'A0') <= 4
info. Lietus = 'migla'
Kitas
info. Lietus = 'lietus'
galas
jei skaitoma Įtampa (a, 'A2')> 4
info.soil = 'sausa'
elseif readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4
info.soil = 'optimalus sodrumas'
Kitas
info.soil = 'potvynis'
galas
5 veiksmas: garsiakalbio ir pranešimų dėžutės išvesties kodavimas
Šio įrenginio išvestys gali labai skirtis, tačiau šiuo atveju mes padėsime jums per garsiakalbio išvestį, sumontuotą tiesiai prie įrenginio, ir pranešimų dėžutės išvestį, kurią galima peržiūrėti nuotoliniame kompiuteryje. Mūsų garsiakalbis sukurtas taip, kad išvestų skirtingus dažnius, o tai reiškia, kad blogiau, kad būtų optimali pasėlių temperatūra, saulės šviesa, dirvožemio drėgmė ir krituliai. Garsiakalbio išvesties kodą pradėkite nuo teiginio if ir nustatykite jo sąlygą į komandą „readVoltage (a, 'X#')> 4 || info.tempF = 3 || readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4 ". Pridėkite tą pačią „playTone“komandą, kaip parodyta aukščiau, bet pakeiskite 200 į 1000, kad gautumėte aukštesnį ir teigiamą toną. Tada pridėkite kitą ir dar kartą pridėkite tą pačią „playTone“komandą, bet pakeiskite 1000 į 1500. Šie skirtingi tonai rodo lauko padėties sunkumą. Būtinai pridėkite pabaigą, kad užbaigtumėte savo teiginį.
Paskutinė mūsų kodo dalis bus išvestis, sukurianti pranešimų laukelį. Sukurkite eilutę naudodami skliausteliuose esančius ženklus ir konvertuokite savo struktūros dalis į eilutes naudodami komandą „num2str (info.x)“, kur x yra informacijos struktūros posistemės pavadinimas. Naudokite „string newline“, kad į pranešimų laukelį įtrauktumėte naujas eilutes, ir įveskite pranešimą tekste naudodami kabutes, pridėdami tikrąją lauko reikšmę į eilutę naudodami pirmiau minėtą komandą num2str. Galiausiai, apibrėždami eilutę, naudokite komandą „msgbox (string)“, kad duomenys būtų rodomi monitoriuje kaip pranešimų dėžutė.
Įklijavimo kodas
jei skaitomaĮtampa (a, 'A2')> 4 || info.tempF <32 playTone (a, 'D9', 200, 1)
elseif saulės spinduliai> = 3 || readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4
playTone (a, „D9“, 1000, 3)
Kitas
„playTone“(a, „D9“, 1500, 5)
galas
string = ['Temperatūra yra (laipsnių F)', num2str (info.tempF)]
string = [string newline 'The ground is', num2str (info.soil)]
string = [eilutė nauja eilutė 'Krituliai lauke', num2str (info. Lietus)]
string = [string newline 'Dienos laikas yra', num2str (info. TOD)]
„msgbox“(eilutė)
6 žingsnis: Išvada
Nors pasaulis ir toliau vis labiau remiasi sintetinėmis alternatyvomis anksčiau iš derliaus nuimamiems produktams, žemės ūkis tikrai išliks aktualus ir svarbus ekonomikos veiksnys ilgą laiką. Tinkamas žemės ūkio paskirties žemės stebėjimas yra labai svarbus, kad ūkininkas galėtų kuo geriau išnaudoti savo derlių, o naudojant mūsų prietaisą galima ne tik nuotoliniu būdu stebėti visą dirbamą žemę, bet ir tai padaryti pigiai, lengvai įdiegti ir patikimu būdu. Tikimės, kad šis vadovas pasirodė informatyvus ir lengvai sekamas, ir tikimės, kad įrenginys bus naudingas, kad ir kaip norėtumėte jį įgyvendinti ar eksperimentuoti.
Laimingo kodavimo, Žemės ūkio jutiklių masyvo komanda
Rekomenduojamas:
LoRa pagrįsta vizuali žemės ūkio stebėjimo sistema Iot - Priekinės programos kūrimas naudojant „Firebase & Angular“: 10 žingsnių
LoRa pagrįsta vizuali žemės ūkio stebėjimo sistema Iot | Priekinės programos kūrimas naudojant „Firebase & Angular“: ankstesniame skyriuje kalbėjome apie tai, kaip jutikliai veikia su „loRa“moduliu, kad užpildytų „Firebase Realtime“duomenų bazę, ir pamatėme labai aukšto lygio diagramą, kaip veikia visas mūsų projektas. Šiame skyriuje kalbėsime apie tai, kaip galime
„Arduino“sąsaja su ultragarso jutikliu ir bekontakčiu temperatūros jutikliu: 8 žingsniai
„Arduino“sąsaja su ultragarso jutikliu ir bekontakčiu temperatūros jutikliu: Šiuo metu kūrėjai ir kūrėjai teikia pirmenybę „Arduino“, norėdami greitai plėtoti projektų prototipus. „Arduino“yra atviro kodo elektronikos platforma, pagrįsta lengvai naudojama aparatine ir programine įranga. „Arduino“turi labai gerą vartotojų bendruomenę. Šiame projekte
Pasidaryk pats: prie lubų montuojama mini jutiklių dėžutė su fokusuojamu judesio jutikliu: 4 žingsniai
Pasidaryk pats: prie lubų montuojama mini jutiklių dėžutė su fokusuojamu judesio jutikliu: Sveiki. Prieš kurį laiką padėjau savo draugui išmaniųjų namų koncepcijoje ir sukūriau specialiai suprojektuotą mini jutiklių dėžutę, kurią būtų galima pritvirtinti prie lubų į 40x65 mm skylę. Ši dėžutė padeda: • matuoti šviesos intensyvumą • matuoti drėgną
Mažos galios FM siųstuvo antena iš žemės ūkio vamzdžių: 8 žingsniai (su nuotraukomis)
Mažos galios FM siųstuvo antena iš žemės ūkio vamzdžių: sukurti FM siųstuvo anteną nėra taip sunku; yra daug dizaino. Mes norėjome sukurti dizainą iš dalių, kurias galėtumėte įsigyti beveik bet kurioje pasaulio vietoje už keturių (netrukus 16!) Bendruomenės stočių, kurias pradėjome Šiaurės Ugandoje, rinkinį
Virtualios Drupal svetainės pridėjimas prie visiškai atskirto Drupal ūkio: 3 žingsniai
Virtualios „Drupal“svetainės įtraukimas į visiškai atskirtą „Drupal“ūkį: „Drupal“yra turinio valdymo sistema (TVS). Vienas iš jo skiriamųjų bruožų yra tai, kad lengva valdyti daugybę svetainių iš vienos kodų bazės - labai šlovingo „Drupal Farm“. Šis nurodymas bus skirtas padėti jums sukurti visiškai atskirtą svetainę