Мазмуну:
- 1 -кадам: Керектүү материалдарды чогултуу
- 2 -кадам: Башкарманы зым менен туташтырыңыз
- 3 -кадам: Фотоэлектр жана температура сенсорлорун коддоңуз
- 4 -кадам: Жамгырдын жана топурактын нымдуулук сенсорлорун коддоңуз
- 5 -кадам: Динамик жана билдирүү кутучасы Output Coding
- 6 -кадам: Жыйынтык
Video: Айыл чарба сенсорунун массиви: 6 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:42
EF 230 үчүн Джексон Брейкелл, Тайлер Маккуббинс жана Жакоб Талердин долбоору
Айыл чарба Америка Кошмо Штаттарынын өндүрүшүнүн маанилүү фактору болуп саналат. Дан эгиндерин ар кандай максаттар үчүн колдонсо болот, кийим -кече, фармацевтика жана тамак -аш кошулмаларын өндүрүү үчүн чийки заттардан тартып, түшүмдүн бөлүктөрүн, көбүнчө өнүп чыккан мөмөлөрдү түз керектөөгө чейин. Америка Кошмо Штаттарынын эгиндеринин көбү ачык абада өстүрүлөт, бул жерде аба ырайы жана температура масштабдуу түрдө көзөмөлгө алынбайт. Аба ырайынын кескин өзгөрүшү эгиндин өсүшүнө кандай таасир этиши мүмкүн экенин эске алганда, Америка Кошмо Штаттарынын экономикасына таасир этип, эгин талаасынын шарттарын көзөмөлдөө өтө маанилүү болуп калат.
Биздин аппарат, Айыл чарба сенсорунун массиви, фермерлерге 4 сенсордун жардамы менен талаанын алдын ала тандалган бөлүктөрүнүн абалын көзөмөлдөөгө мүмкүндүк берет: жамгыр суусу сенсору, топурактын нымдуулугу, температура сенсору жана фотоэлектрдик сенсор. Бул сенсорлордун айкалышы дыйканга түшүмдүн түшүмүн адекваттуу пландаштырууга, өтө аз же көп жамгырга тууралоого, эгиндерди өлтүрө турган кырсыктар менен жакшыраак күрөшүүгө жана топурактын үлгүлөрүн алуудан жана кымбатыраак сенсор жабдууларын колдонуудан убакытты жана кыйынчылыкты үнөмдөөгө мүмкүндүк берет. Бул Нускамада биз сизди айыл чарба сенсорлорунун артындагы зымдарды жана коддорду карайбыз, ошондо сиз да өзүңүз жасай аласыз.
1 -кадам: Керектүү материалдарды чогултуу
Төмөндө баштоо үчүн керектүү материалдардын тизмеси келтирилген"
1. Arduino Board, жакшыраак Arduino Uno
2. Негизги нан
3. 1х 220 Ом каршылыгы
4. Ар кандай түстөгү ассортимент зымдар
5. Micro USBден USB кабелине
6. Бортко орнотулуучу динамик
7. Фотоэлектрдик сенсор
8. Температура сенсору
9. Жамгыр суусу сенсору
10. Топурактын нымдуулук сенсору
11. Matlab 2017 жана Arduino колдоо пакети орнотулган компьютер (Колдоо пакетин Кошумчалар бөлүмүнөн тапса болот)
2 -кадам: Башкарманы зым менен туташтырыңыз
Тактага жогоруда көрсөтүлгөндөй зым салуу менен баштаңыз, же сизге эң ылайыктуу түрдө. Тактага зым тартуунун чексиз жолдору бар, андыктан так конфигурация чынында сизден көз каранды. Тактага зым тартылгандан кийин, сенсорлоруңузду тиркей баштаңыз. Жамгыр суусу, топурактын нымдуулугу жана фотоэлектрдик сенсорлордун бардыгы аналогдук чыгарылыштар, андыктан алардын Arduino аналогдук бөлүмүнө зымдалганын текшериңиз. Температура сенсору, экинчи жагынан, санариптик чыгаруу болуп саналат, андыктан ал сиздин Arduino жеткиликтүү санариптик кирүүгө зымдуу экенин текшериңиз. Arduino 3.3v жана 5v үчүн чыгууларга ээ болушу керек, андыктан сенсорлор алар шайкеш келген чыңалууга туташканына ишениңиз.
Такта туура зымдалганына көзүңүз жеткенден кийин, Micro USB'ди USB кабелине компьютериңиздеги Micro USB портуна сайып, Arduino күйгүзүңүз. Matlabти ачыңыз жана Arduino колдоо пакетин орнотуулардын астына орнотконуңузду текшерип, "fopen (serial ('nada'))" "командасын" жок "деп аткарыңыз. Ката калкып чыгышы керек жана ката айтуу Сизде номери бар жеткиликтүү компорт бар. "a = arduino ('comx', 'uno')" буйругун аткарыңыз, мында x - сиздин компорттун саны, сиздин объектини Arduino менен салыштыруу үчүн. Arduinoдогу LED туташканын көрсөтүү үчүн тез жаркылдап турушу керек.
3 -кадам: Фотоэлектр жана температура сенсорлорун коддоңуз
Сиз коддоону баштоодон мурун, сенсорлоруңуз Arduinoдо кайда туташканын жазып алыңыз, анткени бул readVoltage буйругу үчүн маанилүү болот. Күнүңүздүн өзгөрмөлүү өзгөрмөсүн "readVoltage (a, 'X#')" командасына барабар кылып коюу менен баштаңыз, мында X# сиз туташкан порт жана а жөн гана сиз ошол өзгөрмөгө карты болгон Arduino деп аталат. If операторун баштаңыз, жана күндүн нуру үчүн биринчи шартты коюңуз <3.. Чыгууну "info. TOD = 'түн'" деп коюп, күндүн убакытын структура катары чыгарыңыз, андан кийин "info. TOD = '" деп чыккан башка билдирүүнү кошуңуз. day '". Бул башка билдирүү болгондуктан, бизге шарттын кереги жок, анткени ал if операторунда аныкталбаган бардык башка баалуулуктар үчүн иштейт. if операторуңузду аягына чейин бүтүрүп, программалоого өтүңүз. температура сенсору.
Термо айнымалыны башка readVoltage командасына барабар кылыңыз, буйрук "readVoltage (a, 'X#')". Биздин учурда, температура чыңалуу бирдиктеринен Цельсийге айландырылышы керек болчу, андыктан "tempC = (thermo-.5).*100" теңдемеси чыңалуудан Цельсийге айлануу үчүн. Жеңилдик үчүн Цельсийдеги температураны Фаренгейтке айландырдык, бирок бул жөн гана милдеттүү эмес.
Коюу үчүн код
күндүн нуру = readVoltage (a, 'A1'), эгерде күндүн нуру <3
info. TOD = 'түн'
башка
info. TOD = 'күн'
аяктоо
thermo = readVoltage (a, 'A3');
tempC = (термо-.5).*100;
info.tempF = (9/5.*tempC) +32
4 -кадам: Жамгырдын жана топурактын нымдуулук сенсорлорун коддоңуз
Акыркы кадамда айтылгандай, Arduino тактасында сенсорлоруңуз кайсы портторго туташтырылганын билиңиз, анткени бул кадамды капа кылат. Жамгыр суусу сенсорунан баштаңыз жана if билдирүүсүн баштаңыз. "ReadVoltage (a, 'X#')> 4" үчүн биринчи шартты коюп, анын өндүрүмүн "info. Rain =" жаан -чачын жок "деп коюңуз. Elseif кошуңуз жана анын шартын readVoltage командасына мурун коюңуз, бирок аны> 2 деп коюңуз. Аткарылышы керек болгон дагы бир шартты билдирүү үчүн "&&" кошуңуз жана аны мурункудай readVoltage командасына коюп, аны <= 4 деп коюңуз. Чыгаруу "info. Rain = 'misting'" болот. Акырында, башкасын кошуп, анын өндүрүмүн "info. Rain = 'нөшөрлүү'" деп коюңуз. Сиз иштеп жаткан бөлмөңүздүн нымдуулугуна негизделген шарттар үчүн баалуулуктарды тууралашыңыз керек болот.
Андан кийин, топурактын ным сенсорунун кодун баштаңыз жана if билдирүүсүнөн баштаңыз. If операторунун шартын "readVoltage (a, 'X#')> 4 деп коюп," info.soil = 'dry' "чыгарылышын кошуңуз. Elseif операторун кошуңуз жана жогорудагы readVoltage командасын колдонуп, аны> 2. "&&" кошуп, <= 4. үчүн дагы бир readVoltage буйругун коюңуз. Анын чыгарылышын "info.soil = 'оптималдуу каныктыруу" деп коюңуз. ", жана аягын кошууну унутпаңыз.
Коюу үчүн код
if readVoltage (a, 'A0')> 4 info. Rain = "жаан -чачын жок"
elseif readVoltage (a, 'A0')> 2 && readVoltage (a, 'A0') <= 4
info. Rain = "туман"
башка
info. Rain = "жамгыр"
аяктоо
эгер readVoltage (a, 'A2')> 4
info.soil = "кургак"
elseif readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4
info.soil = 'оптималдуу каныктыруу'
башка
info.soil = 'сел'
аяктоо
5 -кадам: Динамик жана билдирүү кутучасы Output Coding
Бул түзмөктүн жыйынтыктары ар кандай болушу мүмкүн, бирок, бул учурда, биз сизди түзмөккө орнотулган динамиктин чыгышы жана алыскы компьютерде карала турган билдирүү кутусунун чыгышы аркылуу карайбыз. Биздин спикер түшүмдүн оптималдуу температурасы, күндүн нуру, топурактын нымдуулугу жана жаан -чачын үчүн ар кандай жыштыктарды чыгаруу үчүн иштелип чыккан. Спикердин чыгуу кодун if билдирүүсү менен баштаңыз жана анын шартын "readVoltage (a, 'X#')> 4 || info.tempF = 3 || readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4 ". Жогоруда көрсөтүлгөндөй ошол эле playTone командасын кошуңуз, бирок 200дөн 1000ге чейин өзгөртүп, жогору, оң обон чыгарыңыз. Андан кийин, башкасын кошуп, ошол эле playTone командасын кайра кошуңуз, бирок 1000ден 1500гө өзгөртүңүз. Бул ар кандай обондор талаанын абалынын оордугун көрсөтөт. If билдирүүсүн аягына чыгаруу үчүн чекитти кошкондугуңузду текшериңиз.
Биздин коддун акыркы бөлүмү билдирүү кутучасын чыгаруучу продукт болот. Кашаадагы 'белгилерин колдонуу менен сап түзүңүз жана структураңыздын бөлүктөрүн "num2str (info.x)" буйругун колдонуу менен сапка айлантыңыз, мында x - маалымат структурасындагы подструктуранын аты. Билдирүү кутуңузга жаңы саптарды кошуу үчүн "саптын жаңы линиясын" колдонуңуз жана жогоруда айтылган num2str буйругун колдонуп, талаанын чыныгы баасын сапка кошуп, тырмакча аркылуу текстке билдирүүңүздү териңиз. Акырында, аныкталган сап менен, маалыматты мониторуңузда билдирүү кутусу катары көрсөтүү үчүн "msgbox (string)" командасы колдонулган.
Коюу үчүн код
if readVoltage (a, 'A2')> 4 || info.tempF <32 playTone (a, 'D9', 200, 1)
эгерде күндүн нуру> = 3 || readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4
playTone (a, 'D9', 1000, 3)
башка
playTone (a, 'D9', 1500, 5)
аяктоо
string = ['Температура (градус F)', num2str (info.tempF)]
string = [string newline 'Топурак', num2str (info.soil)]
string = [string newline 'Сыртта жаан -чачын болот', num2str (info. Rain)]
string = [string newline 'Күндүн убактысы', num2str (info. TOD)]
msgbox (сап)
6 -кадам: Жыйынтык
Дүйнө мурда дан эгиндеринен алынган продуктыларга синтетикалык альтернативаларга көбүрөөк таянууну улантып жаткан учурда, айыл чарба, албетте, узак убакыт бою экономиканын актуалдуу жана маанилүү фактору бойдон кала берет. Дыйкан үчүн түшүмдүн көп бөлүгүн алуу үчүн айыл чарба жерлерин тийиштүү түрдө көзөмөлдөө абдан маанилүү, жана биздин аппарат менен дыйканчылыктын бардык жерин алыстан көзөмөлдөп туруу мүмкүн эмес, бирок муну арзан, оңой ишенимдүү түрдө орнотуу. Бул колдонмо маалыматтуу жана ээрчүүгө оңой болду деп үмүттөнөбүз жана бул түзмөк сиз аны ишке ашыргыңыз келсе же аны менен эксперимент кылгыңыз келсе пайдалуу деп үмүттөнөбүз.
Бактылуу коддоо, Айыл чарба сенсорлорунун командасы
Сунушталууда:
Айыл чарбасына LoRa негизделген визуалдык мониторинг системасы - Firebase & Angular колдонуп алдыңкы колдонмону иштеп чыгуу: 10 кадам
Айыл чарбасына LoRa негизделген визуалдык мониторинг системасы | Firebase & Angular колдонуп алдыңкы тиркемени иштеп чыгуу: Мурунку бөлүмдө сенсорлор loRa модулу менен Firebase Realtime маалымат базасын толтуруу үчүн кандайча иштеп жатканы жөнүндө сүйлөшөбүз жана биз абдан жогорку деңгээлдеги диаграмманы көрүп жатабыз. Бул бөлүмдө биз кантип кыла аларыбыз жөнүндө сүйлөшөбүз
IoT негизиндеги Smart Gardening жана ESP32 колдонуу менен акылдуу айыл чарба: 7 кадам
IoT негизделген акылдуу багбанчылык жана акылдуу айыл чарба ESP32 колдонуу менен: Дүйнө убакыттын өтүшү менен өзгөрүп жатат, азыр айыл -чарба. Айыл чарбасында электрониканын биригиши дыйкандарга жана бакчаларды башкарган адамдарга жардам берип жатат
Кол чабуу менен иштетилген LED массиви: 4 кадам
Кол чабуу менен иштетилген LED массиви: Бул көрсөтмөнүн аягында сиз кол чабуулар сыяктуу катуу үндөрдү угуучу жана 3 LEDди күйгүзүү же өчүрүү менен жооп бере турган түзмөк кура аласыз. Жогоруда акыркы жыйынтыктын сүрөтү бар
Айыл чарба түтүкчөлөрүнөн аз кубаттуу FM өткөргүч антенна: 8 кадам (сүрөттөр менен)
Айыл чарба түтүктөрүнөн FM кубаттуулугунун антеннасы: FM өткөргүч антеннасын куруу анча деле кыйын эмес; ал жерде көптөгөн дизайн бар. Биз Түндүк Угандада баштаган төрт (жакында 16!) Жамааттык станциялардын топтому үчүн дүйнөнүн каалаган жеринен ала турган бөлүктөрдөн дизайн жасоону кааладык
POLOLU QTR 8RC-сенсор массиви бар PIDге негизделген линия: 6 кадам (Сүрөттөр менен)
POLOLU QTR 8RC-сенсорунун жардамы менен PIDге негизделген линия робот: Саламатсызбы! Бул менин көрсөтмөлөргө биринчи жолу жазуум, бүгүн мен сени жолдон алып кетем жана QTR-8RCди колдонуп, PIDге негизделген линияны кантип бузуу керектигин түшүндүрөм. сенсор массиви. Роботтун имаратына өтүүдөн мурун, биз