![Свържете растението си с облака: 10 стъпки Свържете растението си с облака: 10 стъпки](https://i.howwhatproduce.com/images/008/image-22690-j.webp)
Съдържание:
- Консумативи
- Стъпка 1: Отпечатване на кутията (по избор)
- Стъпка 2: Окабеляване
- Стъпка 3: Създайте приложение в мрежата на нещата
- Стъпка 4: Свързване на Arduino към мрежата на нещата
- Стъпка 5: Тълкуване на данните в мрежата на нещата
- Стъпка 6: Свързване на приложението ви към AWS
- Стъпка 7: Създаване на ламбда
- Стъпка 8: Създаване на крайна точка на API
- Стъпка 9: Свържете растението си към мрежата на социалните заводи
- Стъпка 10: Облегнете се и се потупайте по гърба
2025 Автор: John Day | [email protected]. Последно модифициран: 2025-01-23 12:57
![Свържете растението си с облака Свържете растението си с облака](https://i.howwhatproduce.com/images/008/image-22690-1-j.webp)
![Свържете растението си с облака Свържете растението си с облака](https://i.howwhatproduce.com/images/008/image-22690-2-j.webp)
![Свържете растението си с облака Свържете растението си с облака](https://i.howwhatproduce.com/images/008/image-22690-3-j.webp)
В нашия офис има кактус, който не получи заслуженото внимание. Тъй като работя в IT компания и исках да експериментирам с LoRa, без сървърни решения и AWS, кръстих нашия кактус Стийв и го свързах с облака. Вече можете да наблюдавате Стийв от почти всяка точка на света, използвайки уеб страницата, която направих за него: уеб интерфейсът на Стийв.
Консумативи
1 кактус / любимото ви растение
1 Arduino MKR WAN 1300 (магазин Arduino)
1 868mHz/914mHz (зависи от вашето местоположение) антена (Amazon)
1 LoRa Gateway, когато не е в обхвата на един (Amazon)
2 батерии тип АА
1 сензор TMP102 (Amazon)
1 сензор за влажност на почвата (Amazon)
Проводими кабели (Amazon)
поялник
Поставка за батерия (Amazon)
случай
по избор: 3D принтер (ако можете да използвате 3D принтер, тогава нямате нужда от държач за батерия или калъф)
Стъпка 1: Отпечатване на кутията (по избор)
![Отпечатване на калъфа (по избор) Отпечатване на калъфа (по избор)](https://i.howwhatproduce.com/images/008/image-22690-4-j.webp)
![Отпечатване на калъфа (по избор) Отпечатване на калъфа (по избор)](https://i.howwhatproduce.com/images/008/image-22690-5-j.webp)
Изтеглете този zip файл, разархивирайте го и отпечатайте файловете. Файловете са маркирани с необходимото количество на артикула.
Чувствайте се свободни да добавите нещо към капака, както направих аз.
Отпечатах ги, използвайки височина на слоя 0,2 мм и 15% пълнеж.
Кутиите за кутии могат да бъдат прикрепени с винтове m3.
Когато кутията е отпечатана, можете да използвате някакъв проводник, за да направите необходимите връзки на държача на батерията. Можете да използвате предоставената снимка като справка.
Стъпка 2: Окабеляване
![Електрически инсталации Електрически инсталации](https://i.howwhatproduce.com/images/008/image-22690-6-j.webp)
- Преди да включите arduino, уверете се, че антената е свързана, включването на arduino без антената може да причини повреда.
- Свържете всичко според предоставената електрическа схема.
- Ако запоявате тези проводници, уверете се, че не преодолявате никакви щифтове върху сензорите или arduino!
Стъпка 3: Създайте приложение в мрежата на нещата
- Отидете на https://www.thethingsnetwork.org/ и ако все още нямате акаунт, направете го.
- След като имате акаунт и сте влезли, можете да отидете в конзолата (горе вдясно, щракнете върху потребителското си име и след това върху конзолата).
- Кликнете върху приложения.
- След като страницата се зареди, трябва да можете да кликнете върху „добавяне на приложение“.
- Попълнете формуляра и изберете правилния регион в долната част. Кликнете върху „добавяне на приложение“.
- Поздравления, току -що сте създали приложение в мрежата на нещата. = D
Стъпка 4: Свързване на Arduino към мрежата на нещата
За да програмирате arduino, съветвам ви да използвате онлайн arduino ide, това прави зареждането в необходимата библиотека много лесно.
- Отворете приложението си в мрежата на нещата.
- Трябва да има поле, озаглавено устройства, щракнете върху регистриране на устройство.
- ще видите поле, наречено Device Id. това е името, което искате да дадете на вашия сензор. Трябва да има още един, означен с EUI на устройството, това е уникалният ключ, който arduino използва, за да се удостовери.
- За да получим този ключ, трябва да прехвърлим arduino със специфична скица. Скицата може да се намери тук. Тази скица трябва да работи и през серийния монитор трябва да изпрати eui. Копирайте eui от серийния монитор в полето EUI на устройството в мрежата на нещата.
- Щракнете върху регистрация.
- Сега регистрирахме нашия arduino в облака. Време е да започнете да изпращате съобщения.
- Трябваше да бъдете пренасочени към страница, наречена преглед на устройството. Тук можете да видите вашето устройство eui, app eui и ключ на приложението.
- За да продължим, трябва да прехвърлим последната скица към arduino. Скицата може да се намери тук.
- Когато отворите тази връзка, ще видите, че има няколко раздела. Отворете раздела тайни. Има 2 ключа, с които трябва да се справите от мрежата с неща до файла с тайните.
- След като тези ключове бъдат попълнени, можете да мигате arduino. Той ще започне да изпраща данни към мрежата с неща веднъж на всеки час.
-
Ако всичко е наред, би трябвало да можете да видите съобщения, идващи в раздела Данни в мрежата на нещата при нулиране на arduino (единственият бутон на дъската).
- Ако няма данни, които се появяват тук, това може да означава, че не сте в обхвата на правилен шлюз LoRa. Можете да проверите карта с всички налични шлюзове на https://thethingsnetwork.org. Едноканалните шлюзове LoRa няма да работят с препоръчания arduino.
- Ако не сте в обхвата на шлюз, тогава можете да свържете свой собствен шлюз към мрежата на нещата. Тези шлюзове обикновено имат доста добри уроци за това как да ги свържете. Потърсете в списъка с доставки препоръчания шлюз.
Стъпка 5: Тълкуване на данните в мрежата на нещата
- За да получим използваеми данни от съобщенията в мрежата от неща, трябва да декодираме байстстрийма.
- В мрежата за неща отидете до вашето приложение.
- Трябва да има раздел с надпис „Формати на полезен товар“, щракнете върху този раздел.
- Има 4 бутона един до друг: "декодер", "конвертор", "валидатор", "енкодер".
- Кликнете върху декодера.
- Поставете следния код там.
функция Декодер (байтове, порт) {// Декодиране на съобщение нагоре от буфер // (масив) от байтове към обект от полета. var stringToDecode = bin2String (байтове); var res = stringToDecode.split (""); var temp = res [1]; var moist = res [3]; var bat = res [5]; var decoded = {"температура": temp, "влага": влажна, "батерия": bat}; връщане декодирано; } функция bin2String (масив) {var result = ""; for (var i = 0; i <array.length; ++ i) {result+= (String.fromCharCode (масив )); } връщане на резултата;}
- Щракнете върху запазване.
- Когато нулирате arduino и прегледате раздела си с данни, трябва да видите добре форматиран json обект, който можете лесно да прочетете.
Стъпка 6: Свързване на приложението ви към AWS
Ще използваме AWS за съхраняване и използване на данните от мрежата на нещата. Всички ресурси, които ще използваме, са обхванати от безплатното ниво на AWS.
- Отидете на AWS
- Влезте или създайте акаунт.
- За да свържете вашето приложение в мрежата с неща към AWS, препоръчвам да следвате този урок:
- След като завършите този урок, отидете в конзолата aws до сегмента на IoT-Core.
- В лявата лента на менюто има етикет „Управление“, щракнете върху това.
- Сега трябва да видите карта с името на вашия сензор.
- Отново в лявата лента на менюто кликнете върху „Действие“
- Ако има карта с надпис Магазин, добре е да тръгнете.
- Ако не, кликнете върху „Създаване“.
- Попълнете името „Магазин“.
- Можете да добавите описание, ако искате.
- Като заявка за заявка попълнете следния код: SELECT dev_id, metadata.time, payload_fields.temperature, payload_fields.moisture, payload_fields.battery ОТ 'cactus_network/devices/+/up'.
- Под „Задаване на едно или повече действия“кликнете върху добавяне на действие.
- Изберете „Разделяне на съобщението в няколко колони на DynamoDb таблица (DynamoDBv2)“.
- Щракнете върху конфигуриране на действие
- Щракнете върху създаване на нов ресурс.
- Щракнете върху създаване на таблица и дайте име на вашата таблица.
- Под първичния ключ попълнете „dev_id“.
- Щракнете върху добавяне на ключ за сортиране
- Попълнете "време".
- Щракнете върху създаване.
- Ако всичко е наред, трябва да се върнете на страницата за конфигуриране на действия.
- Има малко затъмнена област под „Изберете или създайте роля, за да предоставите на AWS IoT достъп за извършване на това действие“.
- Щракнете върху създаване на роля и дайте име на тази роля.
- Щракнете върху създаване на роля.
- Щракнете върху добавяне на действие.
- Щракнете върху създаване на правило.
- Сега трябва да имате правило, което автоматично да съхранява всички входящи съобщения от мрежата на нещата в DynamoDb.
- Можете да проверите дали това работи, като нулирате arduino и отидете да погледнете в таблицата DynamoDb, която току -що създадохте.
- Трябва да има запис със съобщението.
Стъпка 7: Създаване на ламбда
За да прочетем данните от DynamoDB, ще напишем AWS ламбда.
- В конзолата за управление на AWS под услуги има връзка с надпис „Lambda“, щракнете върху тази.
- Щракнете върху създаване на функция.
- Изберете име.
- Задайте време на изпълнение на python 3.7.
- Щракнете върху създаване на функция.
- Поставете този код в интегрираната IDE.
импортиране на json
import boto3 време за импортиране от datetime импортиране datetime, timedelta от boto3.dynamodb.conditions ключ за импортиране, Attr def lambda_handler (събитие, контекст): връщане retreive_data () def retreive_data (): # Вземете ресурса на услугата. dynamodb = boto3.resource ('dynamodb') таблица = dynamodb. Table ('ИМЕ НА ТАБЛИЦАТА ТУК') сега = datetime.now () вчера = сега - timedelta (часове = 24) fe = Ключ ('време'). между (вчера.изоформат (), сега.изоформат ()) подаден = ключ ('време'). f в recordsToDelete ['Items']: #print (f) table.delete_item (Key = {'dev_id': f ['dev_id'], 'time': f ['time']}) data = response ['Items '] връщане на данни
- Променете името на таблицата на избраното от вас.
- Превъртете надолу до роля за изпълнение.
- Щракнете върху създаване на нова роля от шаблоните на aws policy.
- Изберете име.
- Под шаблони на правила изберете „Разрешения за тестване на снопове“и „Прости разрешения за микрослужби“.
- Щракнете върху запазване.
- Щракнете върху тест.
- Може да се появи изскачащ прозорец, просто изберете име и запишете.
- Щракнете отново върху теста.
- Най -отгоре трябва да има зелен банер с надпис „Резултат от изпълнението: успешен“.
- Когато щракнете върху този банер, трябва да видите изхода на тази функция, това трябва да е списък със сензорни данни.
- Моля, имайте предвид, че този скрипт изтрива всички данни, които са по -стари от 24 часа.
- В случай, че вашият банер не е зелен, а червен, сте пропуснали нещо и щракването върху този банер ще ви даде пълното съобщение за грешка. В този случай Google е вашият най -добър приятел.
Стъпка 8: Създаване на крайна точка на API
- В конзолата за управление на AWS под услуги има връзка с надпис „api-gateway“, щракнете върху тази.
- Щракнете върху създаване на API.
- Уверете се, че са избрани „REST“и „New API“.
- Изберете име за вашия api.
- Щракнете върху създаване на API.
- Сега на екрана трябва да има бутон с надпис Действия, щракнете върху него.
- След това щракнете върху създаване на ресурс.
- Като име на ресурс трябва да направите нещо просто като „завод“или „данни за растенията“.
- Щракнете върху създаване на ресурс.
- Вляво трябва да има името, което току -що сте въвели. щракнете върху това име.
- Сега щракнете отново върху действия и сега щракнете върху метод за добавяне.
- Изберете GET.
- Щракнете върху отметката.
- Трябва да има текстово поле с надпис Lambda функция.
- Въведете името, което сте дали на ламбда функцията тук.
- Щракнете върху запазване.
- Може да има изскачащ прозорец, който ви предупреждава, че създава допълнителни разрешения.
- Приемете този изскачащ прозорец.
- Сега под действия щракнете върху разреши корс.
- Кликнете върху „активиране на CORS и подмяна на съществуващите заглавки на CORS“.
- Кликнете върху „да,…“.
- Щракнете отново върху действия и щракнете върху Разгръщане на API.
- Под етап на разгръщане изберете [Нов етап].
- Изберете име.
- Щракнете върху разполагане.
- Вече сте публикували вашия api онлайн в света.
- На екрана, където сте пристигнали сега, щракнете върху „ВЗЕМЕТЕ“и добавете ресурса, който току -що създадохте.
- Най -отгоре трябва да има връзка с надпис „URL за извикване“.
- Копирайте тази връзка.
- Поставете го в браузър и натиснете Enter.
- Трябва да видите данните, които са в базата данни.
Стъпка 9: Свържете растението си към мрежата на социалните заводи
- Отидете на
- Кликнете върху „Вход“.
- Щракнете върху създаване на акаунт.
- Попълнете формуляра, за да създадете своя акаунт.
- Моля, обърнете внимание, че потребителското име също трябва да бъде вашият имейл.
- Щракнете върху създаване на акаунт.
- Може да се наложи да потвърдите имейла си, преди да можете да продължите.
- Уверете се, че сте влезли.
- Върнете се към началната страница (щракнете върху логото в горния ляв ъгъл).
- Щракнете върху бутона за настройки.
- Попълнете формуляра, трябва да попълните всяко поле.
- Връзката към api е връзката, която сте запазили, след като сте създали крайната точка на API.
- Когато всичко е попълнено, щракнете върху бутона за запазване на растението. сега системата ще провери въведената от вас api връзка и ако това е правилно, тя ще запише вашето растение в мрежата.
- Върнете се на началната страница.
- Вече можете да кликнете върху всички растения, би трябвало да можете да видите всички регистрирани растения. вашето растение също трябва да е там. щракнете върху картата и ще бъдете отведени до страница за преглед на вашето растение, тя също ще покаже съвети въз основа на стойностите, които сте задали в настройките.
Стъпка 10: Облегнете се и се потупайте по гърба
Току -що сте свързали завод с интернет. Доста впечатляващо, нали?
Препоръчано:
Как да свържете Raspberry Pi към облака с помощта на Node.js: 7 стъпки
![Как да свържете Raspberry Pi към облака с помощта на Node.js: 7 стъпки Как да свържете Raspberry Pi към облака с помощта на Node.js: 7 стъпки](https://i.howwhatproduce.com/images/001/image-1333-12-j.webp)
Как да свържете Raspberry Pi към облака с помощта на Node.js: Този урок е полезен за всеки, който иска да свърже Raspberry Pi към облака, особено към платформата AskSensors IoT, използвайки Node.js. Нямате Raspberry Pi? Ако в момента не притежавате Raspberry Pi, ще ви препоръчам да вземете Raspberry
Как да свържете ESP8266 NodeMCU към IoT облака: 5 стъпки
![Как да свържете ESP8266 NodeMCU към IoT облака: 5 стъпки Как да свържете ESP8266 NodeMCU към IoT облака: 5 стъпки](https://i.howwhatproduce.com/images/005/image-12963-j.webp)
Как да свържете ESP8266 NodeMCU към облака на IoT: Тази инструкция ви показва проста демонстрация на Internet of Things, използваща ESP8266 NodeMCU и онлайн услуга на IoT, наречена AskSensors. Демонстрираме ви как бързо да получите данни от ESP8266 HTTPS клиента и да ги начертаете в графика в AskSensors Io
Мониторинг на температура и влажност с помощта на ESP-01 & DHT и облака AskSensors: 8 стъпки
![Мониторинг на температура и влажност с помощта на ESP-01 & DHT и облака AskSensors: 8 стъпки Мониторинг на температура и влажност с помощта на ESP-01 & DHT и облака AskSensors: 8 стъпки](https://i.howwhatproduce.com/images/005/image-12988-j.webp)
Мониторинг на температура и влажност с помощта на ESP-01 & DHT и облака AskSensors: В тази инструкция ще научим как да следим температурата и измерванията на влажността с помощта на платката IOT-MCU/ESP-01-DHT11 и платформата AskSensors IoT Избирам модула IOT-MCU ESP-01-DHT11 за това приложение, защото
Как да свържете ESP32 към облака на IoT: 8 стъпки
![Как да свържете ESP32 към облака на IoT: 8 стъпки Как да свържете ESP32 към облака на IoT: 8 стъпки](https://i.howwhatproduce.com/images/005/image-13053-j.webp)
Как да свържете ESP32 към облака на IoT: Тази инструкция идва в поредица от статии за свързване на хардуер като Arduino и ESP8266 към облака. Ще ви обясня как да направите вашия чип ESP32 свързан с облака с услугата AskSensors IoT. Защо ESP32? След големия успех
Как да свържете сензора за влажност на почвата и ESP8266 към облака на IoT на AskSensors: 10 стъпки
![Как да свържете сензора за влажност на почвата и ESP8266 към облака на IoT на AskSensors: 10 стъпки Как да свържете сензора за влажност на почвата и ESP8266 към облака на IoT на AskSensors: 10 стъпки](https://i.howwhatproduce.com/images/006/image-16288-11-j.webp)
Как да свържете сензора за влажност на почвата и ESP8266 към облака на нещата на AskSensors IoT: Тази инструкция ви показва как да свържете сензора за влажност на почвата и ESP8266 към облака IoT. За този проект ще използваме възел MCU ESP8266 WiFi модул и сензор за влажност на почвата който измерва обемното съдържание на водата вътре в така