Съдържание:
- Стъпка 1: Компоненти:
- Стъпка 2: ОСНОВЕН СЕНЗОР: Влажност на почвата FC 28
- Стъпка 3: Разбиране на MQTT: за отдалечено публикуване на данни
- Стъпка 4: MQTT: Настройка на MQTT брокерска сметка
- Стъпка 5: MQTT: Създаване на инстанция
- Стъпка 6: MQTT: Информация за инстанция
- Стъпка 7: MQTT: Добавяне на потребител
- Стъпка 8: MQTT: Присвояване на правило за ACL
- Стъпка 9: Nodemcu: Конфигуриране
- Стъпка 10: Nodemcu: Качване на Lua скриптове в Nodemcu с ESPlorer_1
- Стъпка 11: Nodemcu: Качване на Lua скриптове в Nodemcu с ESPlorer_II
- Стъпка 12: Nodemcu: Качване на Lua скриптове в Nodemcu с ESPlorer_III
- Стъпка 13: Nodemcu: Конфигуриране на Arduino за разговори с Nodemcu
- Стъпка 14: Nodemcu: Настройка на MQTT клиент в Android
- Стъпка 15: Допълнителни стъпки: Работа с Nokia LCD 5110
- Стъпка 16: Окончателното сглобяване
Видео: НАСЛЕДВАЙТЕ ВАШАТА ГРАДИНА: 16 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:54
Наблюдавайте градината си отвсякъде, използвайте местен дисплей, за да следите състоянието на почвата на местно ниво или използвайте Mobile за наблюдение от дистанционно. Веригата използва сензор за влажност на почвата, съчетан с температура и влажност, за да информира за околните условия на почвата.
Стъпка 1: Компоненти:
- Arduino uno
- Nodemcu
- Сензор за температура и влажност DHT 11
- Сензор за влажност на почвата - FC28
- Батерия 10000mah (за захранване на arduino и nodemcu)
- Nokia LCD 5110
- Резистор (5 x 10k, 1 x 330ohms)
- Потенциометър Ротационен тип (за регулиране на яркостта на LCD) 0-100K
- Кабелни проводници
- Платка
Стъпка 2: ОСНОВЕН СЕНЗОР: Влажност на почвата FC 28
За да измерваме влагата, използваме сензор за почвена влажност FC 28, чийто основен принцип е както следва:-
Спецификациите на сензора за влажност на почвата FC-28 са следните: Входно напрежение: 3.3-5V
Изходно напрежение: 0 - 4.2V
Входящ ток: 35mA
Изходен сигнал: аналогов и цифров
Сензорът за влажност на почвата FC-28 има четири щифта: VCC: Захранване
A0: Аналогов изход
D0: Цифров изход
GND: Земя
Аналогов режим За да свържете сензора в аналогов режим, ще трябва да използваме аналоговия изход на сензора. Когато приемаме аналоговия изход от сензора за влажност на почвата FC-28, сензорът ни дава стойност от 0 до 1023. Влагата се измерва в проценти, така че ние ще картографираме тези стойности от 0 до 100 и след това ще покажем тези стойности на серийния монитор. Можете да зададете различни диапазони на стойностите на влагата и да включите или изключите водната помпа според нея.
Модулът съдържа и потенциометър, който ще зададе праговата стойност. Тази прагова стойност ще бъде сравнена от сравнителя LM393. Изходният светодиод ще светне и намалява според тази прагова стойност.
Кодът за взаимодействие със сензора за влажност на почвата се приема в следващите стъпки
Стъпка 3: Разбиране на MQTT: за отдалечено публикуване на данни
Преди да започнем по -нататък, нека първо преминем през Отдалеченото публикуване на данни за IOT
MQTT означава MQ телеметричен транспорт. Това е изключително прост и лек протокол за съобщения за публикуване/абониране, предназначен за ограничени устройства и ниска честотна лента, с висока латентност или ненадеждни мрежи. Принципите на проектиране са да се сведат до минимум мрежовата честотна лента и изискванията за ресурси на устройството, като същевременно се опитва да се гарантира надеждност и известна степен на сигурност на доставката. Оказва се, че тези принципи правят протокола идеален за възникващия свят на свързани машини „машина към машина“(M2M) или „Интернет на нещата“, както и за мобилни приложения, където честотната лента и захранването на батерията са на първо място.
Източник:
MQTT [1] (MQ Telemetry Transport или Message Queuing Telemetry Transport) е стандарт ISO (ISO/IEC PRF 20922) [2] протокол за съобщения, базиран на публикуване и абониране. Работи върху TCP/IP протокола. Той е предназначен за връзки с отдалечени места, където е необходим „малък код за отпечатък“или мрежовата честотна лента е ограничена.
Източник:
Стъпка 4: MQTT: Настройка на MQTT брокерска сметка
Има различни акаунти за брокер на MQTT, за този урок използвах cloudmqtt (https://www.cloudmqtt.com/)
CloudMQTT са управлявани Mosquitto сървъри в облака. Mosquitto внедрява транспортния протокол MQ Telemetry, MQTT, който предоставя леки методи за осъществяване на съобщения, използвайки модел на опашки за публикуване/абониране.
Следните стъпки трябва да бъдат изпълнени за настройване на акаунта в cloudmqtt като брокер
- Създайте акаунт и влезте в контролния панел
- натиснете Create+, за да създадете нов екземпляр
- За да започнем, трябва да се регистрираме за клиентски план, можем да изпробваме CloudMQTT безплатно с плана CuteCat.
- След създаването на „екземпляр“, следващата стъпка е да създадете потребител и допълнително да присвоите разрешение на потребителя за достъп до съобщения (чрез правила за ACL)
Пълното ръководство за настройка на брокерски акаунт на MQTT в cloudmqtt може да бъде достъпно, като следвате връзката: -
Всички горепосочени стъпки се поставят една по една в следващите слайдове
Стъпка 5: MQTT: Създаване на инстанция
Създадох инстанция с име "myIOT"
план: Сладък план
Стъпка 6: MQTT: Информация за инстанция
Инстанцията се предоставя незабавно след регистрация и можете да видите подробностите за екземпляра, като информация за връзка, на страницата с подробности. Можете също да стигнете до интерфейса за управление от там. Понякога трябва да използвате определен URL адрес за връзка
Стъпка 7: MQTT: Добавяне на потребител
Създайте потребител с име „nodemcu_12“и дайте парола
Стъпка 8: MQTT: Присвояване на правило за ACL
След създаването на нов потребител (nodemcu_12) запазете новия потребител, сега следващият ACL ще бъде предоставен на новия потребител. На приложената снимка може да се види, че съм предоставил както достъп за четене, така и за запис на потребителя.
Моля, обърнете внимание: Темата трябва да бъде добавена, както е показано във формат (това е допълнително необходимо за четене и запис от възел към MQTT клиент)
Стъпка 9: Nodemcu: Конфигуриране
В този конкретен проект съм използвал nodemcu от Knewron Technologies, повече информация може да бъде получена чрез връзката: -(https://www.dropbox.com/s/73qbh1jfdgkauii/smartWiFi%20Development%20Module%20-%20User% 20Guide.pdf? Dl = 0)
Може да се види, че NodeMCU е фърмуер, базиран на eLua за ESP8266 WiFi SOC от Espressif. Nodemcu от knowron е предварително инсталиран с фърмуер, така че просто трябва да заредим софтуера на приложението, а именно: -
- init.lua
- setup.lua
- config.lua
- app.lua
Всички горни скриптове lua могат да бъдат изтеглени от Github, като следвате връзката: Изтеглете от Github
От горните скриптове lua променете скриптовете config.lua с името на хоста на MQTT, паролата, wifi ssid и т.н.
За да изтеглите горните скриптове в nodemcu, трябва да използваме инструменти като "ESPlorer", вижте документите за повече информация:
Работата с ESPlorer е описана в следващата стъпка
Стъпка 10: Nodemcu: Качване на Lua скриптове в Nodemcu с ESPlorer_1
- Щракнете върху бутона Опресняване
- Изберете COM (комуникационен) порт и скорост на предаване (често използвани 9600)
- Щракнете върху Отваряне
Стъпка 11: Nodemcu: Качване на Lua скриптове в Nodemcu с ESPlorer_II
Стъпка 12: Nodemcu: Качване на Lua скриптове в Nodemcu с ESPlorer_III
Бутонът за запазване и компилиране ще изпрати всичките четири скрипта lua до nodemcu, след като този nodemcu е готов да говори с нашия arduino.
Събиране на информацията за CHIP ID:
Всеки nodemcu има идентификатор на чип (вероятно някакъв номер). Този идентификатор на чип е допълнително необходим за публикуване на съобщение до брокера на MQTT, за да знаете за идентификатора на чипа, щракнете върху бутона Чип идентификатор в "ESPlorer"
Стъпка 13: Nodemcu: Конфигуриране на Arduino за разговори с Nodemcu
Посоченият по -долу код определя влажността на почвата, температурата и влажността и по -нататък показва данните на nokia LCD 5110 и серийно.
Код на Arduino
След това свържете Arduino RX --- Nodemcu TX
Arduino TX --- Nodemcu RX
Горният код включва и начини за използване на softserial библиотека, чрез която DO пиновете могат да се използват и за работа като серийни пинове, използвал съм RX/TX щифтове за свързване към серийния порт nodemcu.
Внимание: Тъй като nodemcu работи с 3.3V, се препоръчва използването на превключвател на нива, но аз се свързах директно без никакъв превключвател на нива и производителността изглежда точно подходяща за горното приложение.
Стъпка 14: Nodemcu: Настройка на MQTT клиент в Android
Последната стъпка за преглед на информацията за мобилни устройства с android клиент:-
Има различни приложения за Android MQTT, използвах това от google play със следната връзка:
.https://play.google.com/store/apps/details?
Конфигурацията за приложението за Android е доста проста и човек трябва да конфигурира следното
- MQTT Адрес на хоста заедно с порт №
- Потребителско име и адрес на MQTT
- Адрес на възел на брокер на MQTT
След като добавите по -горе подробности, свържете приложението, ако приложението е свързано с MQTT брокер, тогава всички данни за състоянието на входа / серийната комуникация от arduino се показват като дневник.
Стъпка 15: Допълнителни стъпки: Работа с Nokia LCD 5110
Следват конфигурацията на щифтове за LCD 5110
1) RST - Нулиране
2) CE - Разрешаване на чип
3) D/C - Избор на данни/команди
4) DIN - Сериен вход
5) CLK - Часовник
6) VCC - 3.3V
7) LIGHT - Контрол на подсветката
8) GND - Земя
Както е показано по-горе, свържете arduino към LCD 5110 в горния ред с 1-10 K резистор между тях.
Следват връзките с пин за контакт за LCD 5110 към Arduino uno
- CLK - Arduino Digital pin 3
- DIN - Arduino цифров щифт 4
- D/C - Arduino Digital pin 5
- RST - Arduino Digital pin 6
- CE - Arduino Digital pin 7
Допълнителен "BL" щифт на LCD 5110 може да се използва заедно с потенциометър (0-100K) за контрол на яркостта на LCD
Библиотеката, използвана за горния код, е: - Изтеглете PCD8544 от долупосочената връзка
Интеграцията на DHT11, сензор за температура и влажност с arduino може да се разгледа от следната връзка DHT11.
Стъпка 16: Окончателното сглобяване
Последната стъпка е да сглобите всичко по -горе в кутия за предпочитане, за захранване използвах 10000mah powerbank за захранване както на Arduino, така и на Nodemcu.
Можем да използваме и зарядно устройство за стенен контакт за дълго време, ако желаете.
Препоръчано:
Fanair: метеорологична станция за вашата стая: 6 стъпки (със снимки)
Fanair: метеорологична станция за вашата стая: Има безброй начини да разберете текущото време, но тогава знаете само времето навън. Ами ако искате да знаете времето във вашата къща, в определена стая? Това се опитвам да разреша с този проект. Fanair използва мул
Garduino - интелигентната градина с Arduino: 4 стъпки (със снимки)
Garduino - интелигентната градина с Arduino: Тези дни никой не е невинен. Има ли някой, който случайно не е убил растение ??? Трудно е да поддържате растенията си живи. Купувате ново растение и в най -лошия случай просто забравяте да го поливате. В по -добрия случай си спомняте, че съществува, но го правите
Интелигентна вътрешна билкова градина: 6 стъпки (със снимки)
Интелигентна билкова градина на закрито: В тази инструкция ще ви покажа как направих моята интелигентна билкова градина на закрито! Имах няколко вдъхновения за този проект, като първото беше, че имах известен интерес към домашните модели Aerogarden. Освен това имах неизползван Arduino Mega с
Автоматизирана саксия за растения - Малка градина: 13 стъпки (със снимки)
Автоматизирана саксия за растения - Малка градина: Аз съм студент по мултимедийни и комуникационни технологии в Howest Kortrijk. За финалната ни задача трябваше да разработим IoT проект по наш избор. Оглеждайки идеите, реших да направя нещо полезно за майка ми, която обича гроуи
Ротационна градина „Направи си сам“(TfCD): 12 стъпки (със снимки)
Ротари градина „Направи си сам“(TfCD): Здравейте! Събрахме малък урок за това как да направите своя собствена малка версия на ротационна градина, която според нас може да представлява градинарството на бъдещето. Използвайки намалено количество електричество и пространство, тази технология е подходяща за бързо