Мазмұны:

Шағын серия: 11 қадам
Шағын серия: 11 қадам

Бейне: Шағын серия: 11 қадам

Бейне: Шағын серия: 11 қадам
Бейне: Кинода емес, өмірде де😂 2024, Қараша
Anonim
Шағын серр
Шағын серр
Шағын серр
Шағын серр

Студент кезімде бір нәрсені ұмытып кететін жаман әдетім бар. Осыған байланысты, егер мен өсімдіктің белгілі бір түрін өсіргім келсе, мен оны ұмытып кетемін және оған күтім жасайтын ешкім болмағандықтан өледі.

Мен бұл мәселені Mini-Serre көмегімен шешуге тырысамын. Mini-Serre-бұл бақшаны бақылайтын автоматтандырылған жүйе, ол Raspberry Pi-де жұмыс істейтін веб-серверге орнатылған әр түрлі сенсорлардың мәліметтерін жібереді. Осылайша, пайдаланушы қай жерде болмасын веб -сайттағы өсімдіктерін бақылай алады. Бұл тұжырымдама соңғы жоба ретінде мультимедиялық және коммуникациялық технологияның бірінші жылында, Howest Kortrijk, Бельгияда әзірленуде.

1 -қадам: материалдар

Материалдар
Материалдар

Бұл жобаны құру үшін сізге келесі элементтер қажет:

Электроника

  1. Raspberry pi 3 - жинақ
  2. Нан тақтасы
  3. Еркек-еркек жалғағыштары
  4. Еркек-әйел қосқыштары
  5. Dallas 18B20 (температура сенсоры)
  6. Фоторезисторды анықтау фотосезімтал жарық сенсоры
  7. MCP3008
  8. Потенциометр
  9. СКД дисплей
  10. Резисторлар
  11. Көк жарық диоды
  12. RGB жарық диоды

Қаптама:

13. Орталық саябақ квеккалары (https://www.brico.be/nl/tuin-buitenleven/moestuin/…) 14. Ағаш табақ (корпустың төменгі жағы) 15. Тырнақтар 16. Бұрандалар

Құралдар:

17. Балға 18. Аралау 19. Бұрауыш 20. Бұрғылау

2 -қадам: схеманы құру

Цикл құру
Цикл құру
Цикл құру
Цикл құру

2 -қадамда біз осы жобаның схемасын жасаймыз. Бұл жұмыс істеуін қаласаңыз, сізге қажет абсолюттік минимум. Тізбектің көшірмесін жасау үшін жұмсақ үстел мен диаграмманы қолданыңыз. Мұнда сізге 1 -қадамнан бастап барлық электрлік материалдар қажет.

Цикл туралы ақпарат:

Бізде MCP3008 -ге қосылған 2 сенсор бар, олар жарық сенсоры мен топырақ ылғалдылығы сенсоры. Температура сенсоры цифрлық шығысқа ие және Raspberry Pi-де GPIO-пин қолданады.

Қосымша:

Мен сонымен қатар ноутбукке қосылмай-ақ Raspberry Pi-ге қосылуды жеңілдететін СКД-дисплейді енгіздім. Бұл қажет емес, бірақ өте ұсынылады.

3 -қадам: Мәліметтер қорын құру

Мәліметтер қорын құру
Мәліметтер қорын құру

Сенсорлардан алынған мәліметтерді ұйымдасқан түрде қауіпсіз түрде сақтау өте маңызды. Сондықтан мен өз деректерімді дерекқорда сақтауды шештім. Осылайша мен бұл дерекқорға (жеке кабинетпен) кіре аламын және оны реттей аламын. Жоғарыдағы суретте сіз менің схемамды менің мәліметтер қорымнан және файлдың астынан дерекқорды бағдарламаға экспорттау үшін таба аласыз, мысалы MySQL.

Мәліметтер базасы бағдарламасы Біздің Raspberry Pi арқылы біздің мәліметтер қорының өздігінен жұмыс істей алатыны маңызды. Сіз мұны Raspberry Pi үшін MySQL немесе MariaDB жүктеу арқылы жасай аласыз. Алдымен компьютерде MySQL Workbench -те мәліметтер базасын құрғыңыз келеді. Содан кейін сіз бұл дерекқорды дербес файл ретінде экспорттайсыз. Енді MySQL Workbench арқылы Raspberry Pi дерекқорына қосылыңыз және осы жерде дерекқорды қалпына келтіріңіз. Енді сізде Raspberry Pi -де дерекқор жұмыс істейді!

4 -қадам: сенсорлық деректерді мәліметтер қорына жазу

Деректер базасы сіздің Raspberry Pi -де жұмыс істегеннен кейін, біз сенсорлар өз деректерін сақтай алатынын қалаймыз. Біз мұны 3 бөлек сценарий құру арқылы жасай аламыз (бұл PyCharm -да жасалған). PyCharm -тың жақсы ерекшелігі - сіз Pi -ге қосыла аласыз, осылайша сіз дерекқорға кіре аласыз және оған тікелей жаза аласыз. Деректерді Raspberry Pi тікелей оқиды және жарық диодтары сізге сәйкесінше жанып тұрады.

Көк жарық диоды жанады: топырақ жеткілікті ылғалды емес. RGB светодиоды жасыл түспен жануда: бәрі жақсы. RGB светодиоды қызыл түспен жанады: тым ыстық, сәл суыту үшін төбені ашыңыз. тым суық, егер ашық болса, төбені жабыңыз.

Сіз барлық сценарийлерді менің github репозиторийімнен жүктей аласыз:

Ескерту: Мен дерекқорларға жеке кіру ақпаратын қолдандым, сондықтан оны өзіңіздікіне сәйкес өзгертуіңіз қажет болуы мүмкін.

Ескерту: DB1 қалтасында сіздің дерекқорға қосылатын кодқа импортталатын «дерекқор» класы бар.

5 -қадам: IP мекенжайын дисплейде көрсету

IP мекенжайын дисплейде көрсету
IP мекенжайын дисплейде көрсету

Дисплейде сіздің Raspberry Pi жұмыс істейтін IP-адресі көрсетіледі, осылайша сіз Raspberry Pi-ге ешқандай сымсыз қосыла аласыз. Мен сондай-ақ сіздің сценарийіңізді жаздым, ол сіздің IP мекенжайын оқиды және оны дисплейде көрсетеді (сіздің GPIO түйреуіштері сәйкес келетінін ескеріңіз, әйтпесе ол жұмыс істемеуі мүмкін). Raspberry Pi бұл сценарийді іске қосу кезінде автоматты түрде іске қосады. Сіз мұны Raspberry Pi ішіндегі rc.local файлына кейбір кодты қосу арқылы жасай аласыз. Сіз оған 'sudo nano /etc/rc.local' теру арқылы жете аласыз, кодтың соңғы жолына 'Python3.5/home/user/filelocation &' қосқыңыз келеді.

Сценарийді мына жерден таба аласыз:

Ескерту: «&» соңында, бұл сценарийді бір рет іске қосады және оны бірден тоқтатады, сондықтан басқа сценарийлер де жұмыс істей алады.

6 -қадам: сенсорларды әр 10 минут сайын өлшеу

Датчиктерді әр 10 минут сайын өлшеу
Датчиктерді әр 10 минут сайын өлшеу

Біз дерекқорды 0,001 секунд ішінде сенсорлық деректермен толтырғанын қаламаймыз, әйтпесе бұл дерекқорға келіп түсетін барлық деректерді сақтауды қиындатады және ол бұзылуы мүмкін. Сондықтан мен Raspberry Pi -дегі 'crontab' жазбасын қостым. Crontab - бұл жоспарланған тапсырмаларды бақылайтын бағдарлама, осылайша сценарийді әр 10 минут сайын бір рет қана іске қосуға болады.

Оны қалай орнату керек:

Сіз мұны алдымен Raspberry Pi пәрмен жолына 'crontab -e' теру арқылы орната аласыз, бұл crontab үшін редакторды ашады. Файлдың төменгі жағына төмен жылжып, әр сенсорға бір жолдан 3 жолды қосыңыз.

' */10 * * * * python3.5/home/user/filepath/sensor1'

Ескерту: '*/10' - біз әр өлшеу арасында болғымыз келетін 10 минут. Мен енгізген код - бұл сіз жұмыс істейтін питон нұсқасы және сіз іске қосқыңыз келетін файл, сондықтан сіз әр сенсорға бір жолды жазуыңыз керек, себебі олар 3 түрлі файлдан тұрады.

7 -қадам: веб -сайт жасау

Веб -сайт жасау
Веб -сайт жасау

Мен өз веб -сайтымды Atom атты бағдарламада жасадым. Бағдарламаны қолдану өте қарапайым және егер сіз мен сияқты HTML мен CSS жазуды жаңадан білсеңіз, кеңес беруге болады.

Сіз барлық сілтеме бойынша қолданылған код пен суреттерді таба аласыз:

Мен веб-сайттың алдыңғы бөлігін Visual Studio Code-де жасадым, сондықтан егер сіз HTML және CSS-ті өзіңіз жасамайтын болсаңыз, файлдарды Atom орнына Visual Studio Code жаңа қалтасына қосуға болады.

8-қадам: Артқы жағын жасау

Артқы жағы мен алдыңғы жағы-бұл біз жасаған веб-сайтта бірдеңе жасауға мүмкіндік беретін нәрсе. Артқы жағында біз дерекқорға деректерді енгізудің орнына, біздің дерекқорға қайтадан қосыламыз. Біз қазір әр түрлі сенсорлардан алынған барлық деректерді оқимыз және Socket. IO көмегімен оны алдыңғы бетке жібереміз, сонда біз оны веб-сайтта көрсете аламыз.

Сіз кодты осында таба аласыз:

Ескерту: Біз бұрын қолданған дерекқор класын қолданамыз, сондықтан мен оны бұл репозиторийге қоспадым.

9-қадам: Front-end құру

Біз HTML және CSS кодтарын JavaScript пен Back-end-пен біріктіретін фронтальды бөлім. Мен жазған JavaScript жұмыс істейтін болуы керек артқы жағымен байланыс орнатуға тырысады. Енді Back-end сенсорлардан барлық деректерді жібереді және біз JavaScript-те HTML файлын өңдейтін бірнеше функцияларды жасай аламыз, ол біздің қазіргі мәндерімізге сәйкес келеді.

JavaScript-ті мына жерден табуға болады:

Ескерту: HTML -де JavaScript орналасқан жердің дұрыс қалтасына сілтеме жасағаныңызға көз жеткізіңіз, әйтпесе ол жұмыс істемеуі мүмкін.

10 -қадам: жылыжай жасау

Жылыжай жасау
Жылыжай жасау
Жылыжай жасау
Жылыжай жасау

Мен Brico-дан дайын пакетті сатып алдым:

Тек пакетпен бірге келетін қадамдарды орындаңыз. Бұл аяқталғаннан кейін, біз оған Raspberry Pi салуға дайын емеспіз. Алдымен біз жылыжайға «еден» немесе түбін жасауымыз керек, сіз мұны ағаш табақты алып, оны орналастыру үшін қаншалықты үлкен екенін өлшеу арқылы жасай аласыз. Мен алдымен ағаш жақтау жасадым, сондықтан ағаш тақтайшада демалатын нәрсе бар.

11 -қадам: Барлығын біріктіру

Барлығын біріктіру
Барлығын біріктіру
Барлығын біріктіру
Барлығын біріктіру
Барлығын біріктіру
Барлығын біріктіру

Біз дерлік дайынбыз! Бұл тек соңғы қадам және сіз баруға дайынсыз. Raspberry Pi мен жылыжайды алыңыз, светодиодты қоюға, дисплейге және Raspberry Pi қуат көзіне тесік жасауға болатындай бірнеше тесік жасаңыз. Барлығын жылыжайға салыңыз, Pi -ді қосыңыз, сонда бәрі дайын! Сізде жеке жылыжай бар!

Ұсынылған: