Съдържание:
- Стъпка 1: Материалите
- Стъпка 2: Осъществяване на веригата
- Стъпка 3: Създайте база данни
- Стъпка 4: Записване на сензорните данни в базата данни
- Стъпка 5: Показване на вашия IP на дисплея
- Стъпка 6: Измерване на сензорите на всеки 10 минути
- Стъпка 7: Създаване на уебсайта
- Стъпка 8: Създаване на Back-end
- Стъпка 9: Създаване на Front-end
- Стъпка 10: Създаване на оранжерия
- Стъпка 11: Съберете всичко заедно
Видео: Mini-Serre: 11 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
Като студент имам лош навик да забравям нещата. Поради това, ако искам да отглеждам определен вид растение, обикновено забравям за него и то умира, защото няма кой да се грижи за него.
Ще се опитам да поправя този проблем с Mini-Serre. Mini-Serre е автоматизирана система за наблюдение на градинарството, която изпраща данни за различните видове сензори, които са инсталирани на уеб сървър, работещ на Raspberry Pi. По този начин потребителят може да наблюдава растенията си на уебсайт, където и да се намира. Тази концепция се разработва като окончателен проект през първата година на мултимедийните и комуникационните технологии в Howest Kortrijk, Белгия.
Стъпка 1: Материалите
За да изградите този проект, ще ви трябват следните елементи:
Електроника
- Малина пи 3 - комплект
- Платка
- Конектори мъжки към мъжки
- Конектори мъжки към женски
- Dallas 18B20 (температурен сензор)
- Фоторезистор за откриване Фоточувствителен светлинен сензор
- MCP3008
- Потенциометър
- ЛСД дисплей
- Резистори
- Син светодиод
- 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 адреса, на който работи вашият Raspberry Pi, по този начин можете лесно да се свържете без никакви проводници към вашия Raspberry Pi. Аз също написах скрипт за това, който чете IP на вашето пи и го показва на дисплея (имайте предвид, че вашите GPIO пинове съвпадат, в противен случай може да не работи). Raspberry Pi изпълнява този скрипт автоматично при стартиране. Можете да направите това, като добавите код към файла rc.local на вашия Raspberry Pi. Можете да стигнете до там, като напишете „sudo nano /etc/rc.local“, преди последния ред код, който искате да добавите „Python3.5/home/user/filelocation &“.
Можете да намерите скрипта тук:
Забележка: '&' в края, това ще накара скрипта да се изпълни веднъж и незабавно да го спре, за да могат да се изпълняват и други скриптове.
Стъпка 6: Измерване на сензорите на всеки 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 и сте готови! Имате собствена оранжерия!
Препоръчано:
Плосък панел Mini IMac G4 - задвижван от NUC: 9 стъпки (със снимки)
Mini IMac G4 плосък панел - Осъществено от NUC: ВъведениеПроведох няколко проекта, които бяха вдъхновението за тази компилация. Един твърди, че е най -малкият функциониращ iMac в света, но в действителност това е Raspberry Pi, работещ под Linux дистрибуция с MacOS тема и не може да изпълнява истински M
Mini Bartop Arcade: 8 стъпки (със снимки)
Mini Bartop Arcade: Този път бих искал да ви покажа старата си аркадна версия, използваща Raspberry Pi Zero, базирана на Picade Desktop Retro Arcade Machini, както се вижда на този сайт: https: //howchoo.com/g/mji2odbmytj/picade -review-ra … Целта на този проект е да се изгради ретро
NEMA 17 - WeMos Mini - Blynk: 4 стъпки
NEMA 17 - WeMos Mini - Blynk: Стъпковите двигатели като NEMA 17 имат много приложения и този прототип ще помогне на читателите да разберат метода за управление на NEMA 17 от приложението Blynk. Това е опит да се направи IoT, който да ни помогне за достъп и контрол на NEMA 17 отвсякъде и по всяко време
Сензорен екран Macintosh - Класически Mac с IPad Mini за екрана: 5 стъпки (със снимки)
Сензорен екран Macintosh | Класически Mac с IPad Mini за екрана: Това е моят актуализиран и преработен дизайн за това как да заменим екрана на реколта Macintosh с iPad mini. Това е шестият от тези, които направих през годините и съм доста доволен от еволюцията и дизайна на този! През 2013 г., когато направих
Cara Menggunakan Wemos D1 R1/ Wemos D1 Mini/ NodeMCU: 7 стъпки
Cara Menggunakan Wemos D1 R1/ Wemos D1 Mini/ NodeMCU: Pada tutorial pertama ini, Saya ingin mengajak Anda bagaimana caranya menggunakan papan microkontroler yang sudah ada Module WiFi ESP8266 di dalamnya and juga sering dijumpai1 ) dengan menggunakan aplikasi