Mundarija:

Qishloq xo'jaligi sensorlar qatori: 6 qadam
Qishloq xo'jaligi sensorlar qatori: 6 qadam

Video: Qishloq xo'jaligi sensorlar qatori: 6 qadam

Video: Qishloq xo'jaligi sensorlar qatori: 6 qadam
Video: Revolutionizing Soil Testing with Digital NPK Tester 2024, Iyul
Anonim
Qishloq xo'jaligi sensorlar qatori
Qishloq xo'jaligi sensorlar qatori

EF 230 uchun Jekson Breakell, Tayler Makkubbin va Jakob Talerning loyihasi.

Qishloq xo'jaligi AQShda ishlab chiqarishning muhim omilidir. Ekinlardan kiyim -kechak, farmatsevtika va oziq -ovqat qo'shimchalari ishlab chiqarish uchun xom ashyodan tortib, hosilning qismlarini, ko'pincha unib chiqadigan mevalarni iste'mol qilishga qadar turli maqsadlarda foydalanish mumkin. Qo'shma Shtatlardagi ekinlarning aksariyati ochiq havoda o'stiriladi, bu erda ob -havo sharoiti va haroratni keng miqyosda nazorat qilib bo'lmaydi. Noqulay ob -havo sharoiti ekinlarning o'sishiga, o'z navbatida Qo'shma Shtatlar iqtisodiyotiga qanday ta'sir qilishi mumkinligini hisobga olib, ekin maydonining holatini kuzatish juda muhim ahamiyatga ega.

Bizning qishloq xo'jaligi sensorlar majmuasi fermerlarga 4 ta datchik yordamida yomg'ir suvi sensori, tuproq namligi sensori, harorat sensori va fotoelektrik sensori yordamida o'z maydonining oldindan tanlangan qismlari holatini kuzatish imkonini beradi. Bu sensorlar kombinatsiyasi dehqonga mavsumning hosilini yetarli darajada rejalashtirish, yomg'irning kam yoki ko'p bo'lishiga moslashish, ekinlarni o'ldirishi mumkin bo'lgan ofatlar bilan yaxshiroq kurashish, tuproq namunalarini olish va qimmatroq datchik uskunalarini ishlatishdan vaqt va muammolarni tejash imkonini beradi. Bu yo'riqnomada biz sizni qishloq xo'jaligi sensorlar majmuasining orqasidagi simlar va kodlash orqali o'tamiz, shunda siz ham o'zingiz qilishingiz mumkin.

1 -qadam: kerakli materiallarni yig'ing

Kerakli materiallarni to'plang
Kerakli materiallarni to'plang

Quyida siz boshlashingiz kerak bo'lgan materiallar ro'yxati keltirilgan."

1. Arduino taxtasi, yaxshisi Arduino Uno

2. Asosiy non paneli

3. 1x 220 ohmli qarshilik

4. Har xil rangdagi assortimentli simlar

5. Micro USB to USB kabeli

6. Kengashga o'rnatiladigan dinamik

7. Fotoelektrik sensori

8. Harorat sensori

9. Yomg'ir suvi sensori

10. Tuproq namligi sensori

11. Matlab 2017 va Arduino qo'llab-quvvatlash to'plami o'rnatilgan kompyuter (Qo'llab-quvvatlash paketini plaginlar ostida topish mumkin)

2 -qadam: Kengashni simga ulang va ulang

Kengashni ulang va ulang
Kengashni ulang va ulang

Kengashni yuqorida ko'rsatilgandek, yoki sizga eng mos keladigan tarzda o'tkazishni boshlang. Kengashni sim bilan ulashning cheksiz usullari mavjud, shuning uchun aniq konfiguratsiya sizga bog'liq. Kengash simli bo'lgandan so'ng, datchiklarni ulashni boshlang. Yomg'ir suvi, tuproq namligi va fotoelektrik sensorlar analogli chiqishdir, shuning uchun ularning Arduino analog qismiga ulanganligiga ishonch hosil qiling. Boshqa tomondan, harorat sensori - bu raqamli chiqish, shuning uchun uning Arduino -dagi mavjud raqamli kirishga ulanganligiga ishonch hosil qiling. Arduino 3,3v va 5v chiqishlari bo'lishi kerak, shuning uchun sensorlar ular mos keladigan kuchlanishlarga ulanganligiga ishonch hosil qiling.

Kengash to'g'ri ulanganligiga ishonch hosil qilganingizdan so'ng, USB kabelini kompyuterdan USB kabelga ulang va Arduino -ni yoqing. Matlab-ni oching va qo'shimchalar ostida Arduino-ni qo'llab-quvvatlash paketini o'rnatganingizga ishonch hosil qilib, "fopen (serial ('nada')))" buyrug'ini "holda" bajaring. Xato ochiladi va xato haqida xabar berish kerak. Sizda raqamli komport bor. "a = arduino (" comx ',' uno ') "buyrug'ini bajaring, bu erda x sizning kompyuteri raqami bo'lib, Arduino -ni ob'ektga moslashtiradi. Arduino -dagi LED. ulanganligini ko'rsatish uchun tez yonib turishi kerak.

3 -qadam: Fotoelektr va harorat sensorlarini kodlang

Fotoelektrik va harorat sensorlar kodi
Fotoelektrik va harorat sensorlar kodi

Kodlashni boshlashdan oldin, sensorlaringiz Arduino -ga qayerda ulanganligini yozib oling, chunki bu readVoltage buyrug'i uchun muhim bo'ladi. O'zgaruvchan quyosh nurini "readVoltage (a, 'X#')" buyrug'iga tenglashtirish orqali kodingizni boshlang, bu erda X# siz ulangan port, va a bu o'zgaruvchiga mos keladigan Arduino -ni chaqiradi. If iborasini ishga tushiring., va quyosh nuri uchun birinchi shartni belgilang <3. Chiqishni "info. TOD = 'kecha'" qilib belgilang, kunning vaqtini tuzilma sifatida chiqaring, so'ngra "info. TOD = 'deb chiqadigan boshqa iborani qo'shing. day '". Bu boshqa bayonot bo'lgani uchun bizga shart kerak emas, chunki u if ifodasida aniqlanmagan boshqa barcha qiymatlar uchun ishlaydi. if so'zini oxirigacha tugatganingizga ishonch hosil qiling va dasturlashga o'ting. harorat sensori.

Termometrni boshqa readVoltage buyrug'iga tenglashtiring, buyrug'i "readVoltage (a, 'X#')". Bizning holatda, haroratni kuchlanish birligidan Selsiyga aylantirish kerak edi, shuning uchun "tempC = (termo-.5).*100" tenglamasini kuchlanishdan Selsiyga o'tkazish. Osonlik uchun biz Selsiydagi haroratni Farengeytga aylantirdik, lekin bu ixtiyoriy.

Yopish uchun kod

quyosh nuri = readVoltage (a, 'A1'), agar quyosh nuri <3 bo'lsa

info. TOD = 'kecha'

boshqa

info. TOD = 'kun'

oxiri

thermo = readVoltage (a, 'A3');

tempC = (termo-.5).*100;

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

4 -qadam: Yomg'ir suvi va tuproq namligini o'lchash datchiklarini kodlang

Yomg'ir suvi va tuproq namligi sezgichlarini kodlang
Yomg'ir suvi va tuproq namligi sezgichlarini kodlang

Oxirgi bosqichda aytilganidek, Arduino platasida sensorlar qaysi portlarga ulanganligini bilganingizga ishonch hosil qiling, chunki bu qadamni asabiylashtirmaydi. Yomg'ir suvi sensori bilan boshlang va if iborasini boshlang. "ReadVoltage (a, 'X#')> 4" uchun birinchi shartni o'rnating va uning chiqishini "info. Rain = 'yog'ingarchiliksiz" ga o'rnating. Elseif qo'shing va uning shartini readVoltage buyrug'iga oldindan qo'ying, lekin uni> 2 ga o'rnating. Bajarilishi kerak bo'lgan boshqa shartni bildirish uchun "&&" qo'shing va uni avvalgidek readVoltage buyrug'iga o'rnating va <= 4 ga o'rnating. Chiqish "info. Rain = 'misting'" bo'ladi. Nihoyat, boshqasini qo'shing va uning chiqishini "info. Rain = 'yomg'ir'" ga o'rnating. Siz ishlayotgan xonadagi namlik darajasiga qarab, sharoit uchun qiymatlarni o'zgartirishingiz kerak bo'lishi mumkin.

Keyin, tuproq namligi sensori kodini boshlang va if iborasidan boshlang. If ifodasining shartini "readVoltage (a, 'X#')> 4 ga o'rnating va" info.soil = 'dry' "chiqishini qo'shing. Elseif ifodasini qo'shing va yuqoridagi readVoltage buyrug'i yordamida uni> 2. "&&" qo'shing va <= 4 uchun boshqa readVoltage buyrug'ini o'rnating. Uning chiqishini "info.soil = 'optimal to'yinganlik" ga o'rnating. Else ifodasini qo'shing va uning chiqishini "info.soil =' sel '' qilib sozlang. ", va oxirini qo'shishni unutmang.

Yopish uchun kod

if readVoltage (a, 'A0')> 4 info. Rain = 'yog'ingarchilik yo'q'

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

info. Rain = "tuman"

boshqa

info. Rain = 'yomg'ir'

oxiri

agar readVoltage (a, 'A2')> 4 bo'lsa

info.soil = "quruq"

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

info.soil = 'optimal to'yinganlik'

boshqa

info.soil = 'toshqin'

oxiri

5 -qadam: Karnay va xabarlar qutisining chiqishini kodlash

Karnay va xabarlar qutisi chiqish kodlanishi
Karnay va xabarlar qutisi chiqish kodlanishi

Bu qurilmaning chiqishlari turlicha bo'lishi mumkin, lekin bu holda biz sizni to'g'ridan -to'g'ri qurilmaga o'rnatilgan karnay chiqishi va masofali kompyuterda ko'rish mumkin bo'lgan xabarlar qutisi orqali o'tamiz. Bizning ma'ruzachimiz har xil chastotalarni chiqarishga mo'ljallangan, bu esa past harorat, quyosh nurlari, tuproq namligi va yog'ingarchilik uchun. Karnay chiqish kodini if iborasi bilan boshlang va uning shartini "readVoltage (a, 'X#')> 4 || info.tempF = 3 || readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4 ". Yuqorida ko'rsatilgandek, bir xil playTone buyrug'ini qo'shing, lekin yuqori va ijobiy ohangni chiqarish uchun 200 dan 1000 gacha o'zgartiring. Keyin boshqasini qo'shing va yana bir xil playTone buyrug'ini qo'shing, lekin 1000 dan 1500 gacha o'zgartiring. Bu o'zgaruvchan ohanglar maydon holatining og'irligini ko'rsatadi. If so'zini to'ldirish uchun oxirini qo'shganingizga ishonch hosil qiling.

Bizning oxirgi kod bo'limimiz xabar qutisini chiqaradigan chiqish bo'ladi. Qavs ichidagi 'belgilaridan foydalanib, mag'lubiyatni yarating va "num2str (info.x)" buyrug'i yordamida tuzilmangizning qismlarini satrlarga aylantiring, bu erda x - ma'lumotlar strukturasidagi pastki tuzilma nomi. Xabar qutisiga yangi qatorlar qo'shish uchun "mag'lubiyatli yangi satr" dan foydalaning va xabarni tirnoq belgisi yordamida matnga kiriting va maydonning haqiqiy qiymatini yuqoridagi num2str buyrug'i yordamida qatorga qo'shing. Nihoyat, aniqlangan satr bilan, "msgbox (string)" buyrug'i yordamida ma'lumotlarni monitorda xabar qutisi sifatida ko'rsatish.

Yopish uchun kod

agar readVoltage (a, 'A2')> 4 || info.tempF <32 playTone (a, 'D9', 200, 1)

boshqa quyosh nuri> = 3 || readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4

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

boshqa

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

oxiri

string = ['Harorat (gradus F)', num2str (info.tempF)]

string = [string newline 'Tuproq bu', num2str (info.soil)]

string = [string newline 'Tashqarida yog'ingarchilik', num2str (info. Rain)]

string = [string newline 'Kunning vaqti', num2str (info. TOD)]

msgbox (satr)

6 -qadam: Xulosa

Xulosa
Xulosa

Dunyo tobora ko'proq ekinlardan olingan sintetik alternativalarga tayanishda davom etayotgan bo'lsa -da, qishloq xo'jaligi uzoq vaqt davomida iqtisodiyotning muhim va muhim omili bo'lib qolaveradi. Qishloq xo'jaligi erlarini etarli darajada kuzatib borish, dehqon o'z hosilidan maksimal darajada foydalanishi uchun hal qiluvchi ahamiyatga ega, va bizning qurilmamiz yordamida nafaqat butun qishloq xo'jaligi erlarini masofadan kuzatib borish, balki uni arzon, oson, ishonchli o'rnatish usuli. Umid qilamizki, ushbu qo'llanma ma'lumotli va bajarilishi oson bo'lib chiqdi va umid qilamizki, siz xohlagan usulda yoki tajriba o'tkazmoqchi bo'lsangiz ham, qurilma foydali bo'ladi.

Baxtli kodlash, Qishloq xo'jaligi sensorlar massivi jamoasi

Tavsiya: