Satura rādītājs:

Lauksaimniecības sensoru masīvs: 6 soļi
Lauksaimniecības sensoru masīvs: 6 soļi

Video: Lauksaimniecības sensoru masīvs: 6 soļi

Video: Lauksaimniecības sensoru masīvs: 6 soļi
Video: Modern Agriculture Machines That Are At Another Level ► 6 2024, Jūlijs
Anonim
Lauksaimniecības sensoru masīvs
Lauksaimniecības sensoru masīvs

Džeksona Breikela, Tailera Makubinsa un Jakoba Tālera projekts EF 230

Lauksaimniecība ir būtisks ražošanas faktors ASV. Kultūras var izmantot visdažādākajiem mērķiem, sākot no izejvielām apģērbu, farmaceitisko līdzekļu un pārtikas piedevu ražošanai līdz tiešai kultūraugu daļu, visbiežāk dīgtspējīgo augļu, patēriņam. Lielākā daļa kultūraugu Amerikas Savienotajās Valstīs tiek audzēti ārpus telpām, kur laika apstākļus un temperatūru nevar kontrolēt plašā mērogā. Ņemot vērā to, cik krasi nelabvēlīgi laika apstākļi var ietekmēt kultūraugu augšanu, savukārt ietekmējot Amerikas Savienoto Valstu ekonomiku, labības lauka apstākļu uzraudzība kļūst ļoti svarīga.

Mūsu ierīce-lauksaimniecības sensoru masīvs-ļauj lauksaimniekiem uzraudzīt iepriekš izvēlētu sava lauka daļu stāvokli, izmantojot 4 sensorus: lietus ūdens sensoru, augsnes mitruma sensoru, temperatūras sensoru un fotoelektrisko sensoru. Šo sensoru kombinācija ļauj lauksaimniekam pienācīgi plānot sezonas ražu, pielāgoties pārāk mazam vai pārāk lielam lietam, labāk tikt galā ar katastrofām, kas var nogalināt ražu, un ietaupīt laiku un grūtības, ņemot augsnes paraugus un izmantojot dārgākas sensoru iekārtas. Šajā pamācībā mēs iepazīstināsim jūs ar elektroinstalāciju un kodēšanu aiz mūsu lauksaimniecības sensoru masīva, lai arī jūs varētu izveidot savu.

1. darbība: apkopojiet nepieciešamos materiālus

Savākt nepieciešamos materiālus
Savākt nepieciešamos materiālus

Zemāk ir saraksts ar nepieciešamajiem materiāliem, lai sāktu darbu"

1. Arduino dēlis, vēlams Arduino Uno

2. Pamata maize

3. 1x 220 omu rezistors

4. Dažādu krāsu vadi

5. Micro USB - USB kabelis

6. Uz kuģa uzstādāms skaļrunis

7. Fotoelektriskais sensors

8. Temperatūras sensors

9. Lietus ūdens sensors

10. Augsnes mitruma sensors

11. Dators ar instalētu Matlab 2017 un Arduino atbalsta pakotni (atbalsta pakotni var atrast sadaļā Papildinājumi)

2. solis: pievienojiet vadu un savienojiet

Pievienojiet vadu un savienojiet
Pievienojiet vadu un savienojiet

Sāciet, pieslēdzot dēli, kā parādīts iepriekš, vai jebkādā veidā, kas jums vislabāk atbilst. Ir burtiski neierobežots veids, kā dēli var pieslēgt vadam, tāpēc precīza konfigurācija patiešām ir atkarīga no jums. Kad dēlis ir pievienots vadam, sāciet piestiprināt sensorus. Lietus ūdens, augsnes mitruma un fotoelektriskie sensori ir analogās izejas, tāpēc pārliecinieties, vai tie ir pievienoti Arduino analogās ievades sadaļai. No otras puses, temperatūras sensors ir digitāla izeja, tāpēc pārliecinieties, vai tas ir pievienots jūsu Arduino pieejamajai digitālajai ieejai. Arduino vajadzētu būt ar izeju 3.3v un 5v, tāpēc pārliecinieties, vai sensori ir savienoti ar spriegumu, ar kuru tie ir saderīgi.

Kad esat pārliecināts, ka tāfele ir pareizi pievienota vadam, pievienojiet Micro USB un USB kabeli no datora datora Micro USB portam un ieslēdziet Arduino. Atveriet Matlab un, pārliecinoties, ka papildinājumos esat instalējis Arduino atbalsta pakotni, palaidiet komandu "fopen (serial ('nada'))" bez. jums ir pieejams komports ar numuru. Izpildiet komandu "a = arduino ('comx', 'uno')", kur x ir jūsu porta numurs, lai kartētu savu Arduino uz kādu objektu. Arduino gaismas diode vajadzētu ātri mirgot, norādot, ka tas ir pievienots.

3. darbība: kodējiet fotoelektriskos un temperatūras sensorus

Kodējiet fotoelektriskos un temperatūras sensorus
Kodējiet fotoelektriskos un temperatūras sensorus

Pirms sākat kodēšanu, pierakstiet, kur jūsu sensori ir pievienoti Arduino, jo tas būs svarīgi komandai readVoltage. Sāciet savu kodu, iestatot mainīgo saules gaismu vienādai ar komandu "readVoltage (a, 'X#') ', kur X# ir ports, ar kuru esat izveidojis savienojumu, un a vienkārši izsauc Arduino, kuru esat saistījis ar šo mainīgo. Sāciet paziņojumu if, un iestatiet pirmo nosacījumu saules gaismai <3. Iestatiet izvadi kā "info. TOD = 'night'", lai izvadītu diennakts laiku kā struktūru, un pēc tam pievienojiet citu paziņojumu ar izvadi kā "info. TOD = ' diena "". Tā kā šis ir cits paziņojums, mums nav nepieciešams nosacījums, jo tas darbosies ar visām pārējām vērtībām, kas nav definētas paziņojumā if. Noteikti pabeidziet paziņojumu if ar beigām un pārejiet pie programmēšanas temperatūras sensors.

Iestatiet mainīgo termo vienādu ar citu komandu readVoltage, kura komanda ir "readVoltage (a, 'X#')". Mūsu gadījumā temperatūra bija jāpārvērš no sprieguma vienībām par Celsiju, tāpēc vienādojums "tempC = (termo.5).*100", lai pārvērstu no sprieguma uz Celsiju. Vienkāršības labad mēs temperatūru Celsija grādos pārvērtām pēc Fārenheita, bet tas ir tikai pēc izvēles.

Kods ielīmēšanai

saules gaisma = lasīt spriegumu (a, 'A1'), ja saules gaisma ir <3

info. TOD = 'nakts'

citādi

info. TOD = 'diena'

beigas

termo = readVoltage (a, 'A3');

tempC = (termo -5).*100;

info.tempF = (9/5.*tempC) +32

4. solis: kodējiet lietus ūdens un augsnes mitruma sensorus

Kodējiet lietus ūdens un augsnes mitruma sensorus
Kodējiet lietus ūdens un augsnes mitruma sensorus

Kā minēts pēdējā solī, pārliecinieties, ka zināt, kādos portos jūsu sensori ir pievienoti Arduino panelī, jo tas padarīs šo soli daudz mazāk nomāktu. Sāciet ar lietus ūdens sensoru un sāciet paziņojumu if. Iestatiet pirmo nosacījumu "readVoltage (a, 'X#')> 4" un iestatiet tā izvadi uz "info. Rain = 'bez nokrišņiem". Pievienojiet elseif un iestatiet tā nosacījumu komandai readVoltage, bet iestatiet to uz> 2. Pievienojiet “&&”, lai apzīmētu citu nosacījumu, kas jāizpilda, un iestatiet to kā komandu readVoltage, kā iepriekš, un iestatiet to uz <= 4. Rezultāts būs "info. Rain = 'misting'". Visbeidzot, pievienojiet citu un iestatiet tā izvadi uz "info. Rain = 'downpour'". Jums, iespējams, būs jāpielāgo apstākļu vērtības, ņemot vērā telpas mitrumu, kurā strādājat.

Pēc tam sāciet augsnes mitruma sensora kodu un sāciet ar paziņojumu if. Iestatiet if paziņojuma nosacījumu uz "readVoltage (a, 'X#')> 4 un pievienojiet izvadi" info.soil = 'dry' ". Pievienojiet citsif paziņojumu un, izmantojot iepriekš aprakstīto komandu readVoltage, iestatiet to> 2. Pievienojiet "&&" un iestatiet citu komandu readVoltage komandai <= 4. Iestatiet tā izvadi uz "info.soil = 'optimālais piesātinājums'". Pievienojiet citu paziņojumu un iestatiet tā izvadi uz "info.soil = 'Flood' ", un neaizmirstiet pievienot beigas.

Kods ielīmēšanai

spriegums (a, 'A0')> 4 info. Lietus = 'nav nokrišņu'

elseif readVoltage (a, 'A0')> 2 && readVoltage (a, 'A0') <= 4

info. Lietus = "migla"

citādi

info. Lietus = 'lietusgāze'

beigas

spriegums (a, 'A2')> 4

info.soil = 'sauss'

elseif readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4

info.soil = 'optimālais piesātinājums'

citādi

info.soil = 'plūdi'

beigas

5. darbība: skaļruņu un ziņojumu kastes izvades kodēšana

Skaļruņu un ziņojumu kastes izvades kodēšana
Skaļruņu un ziņojumu kastes izvades kodēšana

Šīs ierīces izejas var būt ļoti atšķirīgas, taču šajā gadījumā mēs jūs iepazīstināsim ar skaļruņu izeju, kas uzstādīta tieši ierīcē, un ziņojumu lodziņa izeju, ko var apskatīt attālajā datorā. Mūsu skaļrunis ir paredzēts dažādu frekvenču izvadīšanai, zemāka nozīme ir sliktāka, optimālai ražas temperatūrai, saules gaismai, augsnes mitrumam un nokrišņiem. Sāciet skaļruņa izejas kodu ar paziņojumu if un iestatiet tā nosacījumu uz komandu "readVoltage (a, 'X#')> 4 || info.tempF = 3 || readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4 ". Pievienojiet to pašu komandu playTone, kā parādīts iepriekš, bet mainiet 200 uz 1000, lai iegūtu augstāku, pozitīvāku signālu. Pēc tam pievienojiet citu un vēlreiz pievienojiet to pašu komandu playTone, bet mainiet 1000 uz 1500. Šie dažādie toņi norāda uz lauka stāvokļa nopietnību. Noteikti pievienojiet beigas, lai pabeigtu savu paziņojumu.

Mūsu pēdējā koda sadaļa būs izeja, kas izveidos ziņojumu lodziņu. Izveidojiet virkni, izmantojot iekavās esošās atzīmes, un pārveidojiet savas struktūras daļas par virknēm, izmantojot komandu "num2str (info.x)", kur x ir apakšstruktūras nosaukums informācijas struktūrā. Izmantojiet "string newline", lai ziņojumu lodziņā pievienotu jaunas rindas, un ierakstiet ziņojumu tekstā, izmantojot pēdiņas, pievienojot lauka faktisko vērtību virknei, izmantojot iepriekš minēto komandu num2str. Visbeidzot, definējot virkni, izmantojiet komandu "msgbox (string)", lai monitorā parādītu datus kā ziņojumu lodziņu.

Kods ielīmēšanai

ja nolasīts Spriegums (a, 'A2')> 4 || info.tempF <32 playTone (a, 'D9', 200, 1)

cits, ja saules gaisma> = 3 || readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4

playTone (a, 'D9', 1000, 3)

citādi

playTone (a, 'D9', 1500, 5)

beigas

string = ['Temperatūra ir (grādi F)', num2str (info.tempF)]

string = [string newline 'The augsne ir', num2str (info.soil)]

string = [string newline 'Ārpus nokrišņiem ir', num2str (info. Lietus)]

string = [string newline 'Dienas laiks ir', num2str (info. TOD)]

msgbox (virkne)

6. darbība. Secinājums

Secinājums
Secinājums

Lai gan pasaule arvien vairāk paļaujas uz sintētiskām alternatīvām precēm, kas iepriekš novāktas no kultūrām, lauksaimniecība noteikti paliks būtisks un svarīgs ekonomikas faktors ilgu laiku. Lai lauksaimnieks varētu maksimāli izmantot ražu, ir ļoti svarīgi pienācīgi uzraudzīt lauksaimniecības zemi, un, izmantojot mūsu ierīci, ir iespējams ne tikai attālināti uzraudzīt visu lauksaimniecības zemi, bet arī to izdarīt lētā, vienkāršā uzstādīt un uzticami. Mēs ceram, ka šī rokasgrāmata ir izrādījusies informatīva un viegli izpildāma, un ceram, ka ierīce izrādīsies noderīga, lai kā jūs to vēlētos ieviest vai eksperimentēt.

Laimīgu kodēšanu, Lauksaimniecības sensoru masīva komanda

Ieteicams: