Съдържание:

Mini-Serre: 11 стъпки
Mini-Serre: 11 стъпки

Видео: Mini-Serre: 11 стъпки

Видео: Mini-Serre: 11 стъпки
Видео: #11 Growing a Small Vegetable Garden on my Balcony (8sqm) (2020) 2024, Юли
Anonim
Мини-Сер
Мини-Сер
Мини-Сер
Мини-Сер

Като студент имам лош навик да забравям нещата. Поради това, ако искам да отглеждам определен вид растение, обикновено забравям за него и то умира, защото няма кой да се грижи за него.

Ще се опитам да поправя този проблем с Mini-Serre. Mini-Serre е автоматизирана система за наблюдение на градинарството, която изпраща данни за различните видове сензори, които са инсталирани на уеб сървър, работещ на Raspberry Pi. По този начин потребителят може да наблюдава растенията си на уебсайт, където и да се намира. Тази концепция се разработва като окончателен проект през първата година на мултимедийните и комуникационните технологии в Howest Kortrijk, Белгия.

Стъпка 1: Материалите

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

За да изградите този проект, ще ви трябват следните елементи:

Електроника

  1. Малина пи 3 - комплект
  2. Платка
  3. Конектори мъжки към мъжки
  4. Конектори мъжки към женски
  5. Dallas 18B20 (температурен сензор)
  6. Фоторезистор за откриване Фоточувствителен светлинен сензор
  7. MCP3008
  8. Потенциометър
  9. ЛСД дисплей
  10. Резистори
  11. Син светодиод
  12. RGB LED

Корпус:

13. Central Park kweekkas (https://www.brico.be/nl/tuin-buitenleven/moestuin/…) 14. Дървена плоча (дъното на кутията) 15. Пирони 16. Винтове

Инструменти:

17. Чук 18. Трион 19. Отвертка 20. Свредло

Стъпка 2: Осъществяване на веригата

Осъществяване на веригата
Осъществяване на веригата
Осъществяване на веригата
Осъществяване на веригата

В стъпка 2 ще направим веригата за този проект. Това е абсолютният минимум, от който се нуждаете, ако искате да работи. Използвайте таблицата за фризиране и диаграмата, за да направите копие на веригата. Тук се нуждаете от всички електрически материали от стъпка 1.

Информация за веригата:

Имаме 2 сензора, свързани към MCP3008, които са сензор за светлина и сензор за влажност на почвата. Температурният сензор има цифров изход и използва GPIO-пин на Raspberry Pi.

Екстра:

Също така внедрих LCD дисплей, който по-късно ще улесни свързването с Raspberry Pi, без да е необходимо да се свързвате с вашия лаптоп. Това не е необходимо, но е силно препоръчително.

Стъпка 3: Създайте база данни

Създайте база данни
Създайте база данни

Много е важно да съхранявате данните си от сензорите по организиран, но и сигурен начин. Ето защо реших да съхранявам данните си в база данни. По този начин само аз мога да получа достъп до тази база данни (с личен акаунт) и да я поддържам организирана. На горната снимка можете да намерите моята схема от моята база данни и под файл за експортиране на базата данни в програма за бази данни, например MySQL.

База данни-програма Важно е нашата база данни да може да работи самостоятелно от нашия Raspberry Pi. Можете да направите това, като изтеглите MySQL или MariaDB за Raspberry Pi. Първо искате да направите базата данни на вашия компютър в MySQL Workbench. След това експортирате тази база данни като самостоятелен файл. Сега се свържете с базата данни на Raspberry Pi чрез MySQL Workbench и възстановете базата данни тук. Сега имате база данни, работеща на вашия Raspberry Pi!

Стъпка 4: Записване на сензорните данни в базата данни

След като базата данни работи на вашия Raspberry Pi, ние искаме нашите сензори да могат да съхраняват своите данни в нея. Можем да направим това, като създадем 3 отделни скрипта (което се прави в PyCharm). Приятна функция, включена в PyCharm, е, че можете да се свържете с вашия Pi и по този начин можете да получите достъп до вашата база данни и да пишете директно в нея. Данните също се четат директно от Raspberry Pi и светодиодите ще светят според това, от което се нуждаете.

Синият светодиод светва: почвата не е достатъчно влажна. RGB LED светва зелено: всичко е наред. RGB LED свети червено: твърде горещо, отворете покрива, за да го охладите малко. RGB LED светва синьо: твърде е студено, затворете покрива, ако е отворен.

Можете да изтеглите всички скриптове от моето хранилище на github:

Забележка: Използвах личната си информация за вход за базите данни, така че може да се наложи да я промените, за да отговаря на вашата.

Забележка: Папката DB1 съдържа клас 'база данни', който е импортиран в кода, който ще се свърже с вашата база данни.

Стъпка 5: Показване на вашия IP на дисплея

Показване на вашия IP на дисплея
Показване на вашия IP на дисплея

Дисплеят показва IP адреса, на който работи вашият Raspberry Pi, по този начин можете лесно да се свържете без никакви проводници към вашия Raspberry Pi. Аз също написах скрипт за това, който чете IP на вашето пи и го показва на дисплея (имайте предвид, че вашите GPIO пинове съвпадат, в противен случай може да не работи). Raspberry Pi изпълнява този скрипт автоматично при стартиране. Можете да направите това, като добавите код към файла rc.local на вашия Raspberry Pi. Можете да стигнете до там, като напишете „sudo nano /etc/rc.local“, преди последния ред код, който искате да добавите „Python3.5/home/user/filelocation &“.

Можете да намерите скрипта тук:

Забележка: '&' в края, това ще накара скрипта да се изпълни веднъж и незабавно да го спре, за да могат да се изпълняват и други скриптове.

Стъпка 6: Измерване на сензорите на всеки 10 минути

Измерване на сензорите на всеки 10 минути
Измерване на сензорите на всеки 10 минути

Не искаме нашата база данни да се запълва от сензорните данни през 0,001 секунди, в противен случай това ще затрудни базата данни да поддържа всички входящи данни и може да се срине. Ето защо добавих откъс към „crontab“на Raspberry Pi. Crontab е програма, която следи планираните задачи, така че по този начин можете просто да стартирате скрипта на всеки 10 минути само веднъж.

Как да го настроите:

Можете да настроите това, като първо въведете в командния ред на Raspberry Pi „crontab -e“, това отваря редактора за crontab. Превъртете надолу до дъното на файла и добавете 3 реда, по един за всеки сензор.

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

Забележка: „*/10“е 10 -те минути, които искаме да бъдем между всяко измерване. Кодът, който въведох след него, е версията на python, която използвате, и файлът, който искате да стартирате, така че трябва да напишете един ред за всеки сензор, защото те съществуват от 3 различни файла.

Стъпка 7: Създаване на уебсайта

Изработване на уебсайта
Изработване на уебсайта

Направих моя уебсайт в програма, наречена Atom. Това е много лесна за използване програма и препоръчителна, ако сте съвсем нови за писане на HTML и CSS като мен.

Можете да намерите целия код и изображения, използвани след тази връзка:

Направих предния край на уебсайта във Visual Studio Code, така че ако не планирате да правите HTML и CSS сами, можете просто да добавите файловете в нова папка във Visual Studio Code вместо в Atom.

Стъпка 8: Създаване на Back-end

Задният и предният край ще бъдат нещата, които всъщност карат нещо да се случи на уебсайта, който току-що направихме. В задната част се свързваме отново с нашата база данни и вместо да поставяме данни в базата данни. Сега ще прочетем всички данни от различните сензори и с помощта на 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 и сте готови! Имате собствена оранжерия!

Препоръчано: