LoRaWan+NB-IOT+MQTT

С новия фърмуер 2.3.1(150), LoRaWan, NB-IOT и други външни сензори вече могат да бъдат интегрирани.

Предпоставката обаче е те да предадат своите сензорни данни на MQTT брокер; Тогава OpenSprinkler може да се абонира за това като данни от сензори.

Сензорът е интегриран със своята „тема“ и текстов/JSON филтър. След това контролерът за напояване може да използва тази стойност.

Опции за свързване

Ето как работи:

  • LoRa WAN сензорите се поставят в радиуса на LoRa WAN хъб, в зависимост от версията, с обхват до 10 km. Вие сами управлявате LoRa WAN хъба, наричан още шлюз, и го свързвате към вашата мрежа
  • NB-IoT сензорите са интегрирани чрез портала на доставчика. Тъй като NB-IoT работи през клетъчната мрежа, сензорът може да бъде разположен навсякъде - при условие че има приемане.
  • В шлюза или портала на доставчика активирайте функцията MQTT и я използвайте, за да експортирате данните от сензора. В зависимост от версията може да е необходимо по-нататъшно внедряване с инструмент за управление на IoT като ChirpStack, който преобразува „голите“ сензорни данни в данни, подлежащи на оценка.
  • В OpenSprinkler го свързвате чрез MQTT опциите и след това създавате нов сензор от тип „MQTT абонамент“.
  • Въведете информацията за абонамента и филтъра за данни в сензора.
  • Завършен! Веднага след като данните бъдат получени, стойностите се показват и записват.

Подробна конфигурация на сензора

Двата MQTT сензора са маркирани в червено. Другите сензори са интегрирани чрез аналоговата сензорна платка

 

Аналогов сензор 150 1

Редактиране на сензора

Като щракнете върху „Добавяне на сензор“ или върху името на съществуващ сензор, получавате следния редактор:

Аналогов сензор 150 2

Този пример показва CHIRPSTACK интегриране на MQTT данни. Структурата се определя, както следва:

application/<application-id>/device/<deviceid>/event/up

Най-добре е да разгледате възможните стойности с помощта на инструмент, като например MQTT Explorer. Често е объркващо, особено за начинаещи, че нищо не се показва в MQTT Explorer. Тъй като данните от сензора пристигат само на всеки 10 минути (в зависимост от конфигурацията), просто трябва да оставите MQTT Explorer за известно време.

За полето MQTT Filter въведете името на полето, което трябва да бъде прочетено. В CHIRPSTACK можете да видите прочетените полета под „Профили на устройства“ / „Измервания“. Ако тук не се появи нищо, първо трябва да запишете скрипт в раздела „CODEC“; шаблоните могат да помогнат тук или можете да попитате производителя на сензора.

Защо LoRaWAN или NB-IoT, а не Wi-Fi или Bluetooth?

Най-големият проблем със сензорите е, че те изискват захранване. Ако можете да поставите захранващ кабел, обикновено можете да поставите и кабел за данни. Но ако това не е възможно, как да свържете тези сензори?

За да отговорим на този въпрос, направихме няколко експеримента и представяме резултатите тук.

  • Bluetooth се проваля, обхватът е просто твърде малък (разбира се, освен ако растенията не са в рамките на 10 метра. Вижте тук)
  • Може да се използва WiFi, но консумацията на енергия е толкова висока, че или трябва да сменяте батериите на всеки 4 седмици, или имате нужда от огромни батерии. Това също може да се подобри с фотоволтаици, но тогава вече имате високи инвестиционни разходи за сензор. Освен това съществува известен риск от материални щети при монтаж на открито.
  • LoRaWAN е по-подходящ тук, защото батериите са дълготрайни и често издържат до 10 години. Обхватът на открито може да бъде до 10 km (открито поле, градски зони приблизително 2 km). Тъй като LoRaWAN може да се управлява без лиценз, има само еднократни разходи.
  • NB-IoT също е много подходящ, ако има подходящо покритие на мобилни телефони. Това означава, че диапазонът е практически „безкраен“, тъй като данните от сензора се доставят до облачна услуга. Има обаче текущи разходи

Реализация и тестване

За нашия тест използвахме Milesight UG65-868M като LoRaWAN шлюз, както и Dragino LSE01 и Milesight EM-500 SMTC сензори за влажност на почвата. Тъй като UG65 може също да активира MQTT брокер с най-новата актуализация (ChirpStack-common трябва да бъде активиран), той може да бъде свързан като независим MQTT сървър.

И двата сензора могат да измерват не само влажността на почвата, но и температурата на почвата и диелектричната проводимост (диелектрична проницаемост). Последната стойност е особено важна за селскостопанския сектор, тъй като може да се използва и за определяне на съдържанието на тор в почвата.

Img 20240318 183612

Milesight UG65 има захранващи връзки отзад и може да се управлява чрез POE. Освен това има WiFi и дори може да служи като точка за достъп. Други антени и LTE модул също се предлагат като опции.

Img 20240318 183633

Milesight EM-500 SMTC е нещо повече от сензор за влажност на почвата. Може да измерва температурата и диелектричната проницаемост на почвата. Състои се от два компонента, които са свързани с кабел. Над земята е предавателят, под земята е действителният сензор. Включен е държач за мачта.

Lse01 10

Dragino LSE01 е подобен на EM500, той може също да измерва влажността на почвата, температурата и диелектричната проницаемост. Всички сензори Dragino изглеждат подобни, всички продукти имат един и същ предавател.

ChirpStack

Когато настройвате Chirpstack, важно е първо да настроите профили за сензорите („Профили на устройството“). Тук записвате сензорите с техните общи данни за устройството. Можете да изберете настройките по подразбиране, като използвате функцията „Избор на шаблон за профил на устройство“. Цялата тази конфигурация е необходима, за да могат двоичните данни от сензора да бъдат преобразувани в четливи стойности. Следователно функцията „Кодек“ също е най-важната функция тук.

Отне ми обаче известно време, за да разбера, че тези спецификации на кодеци са остарели. Текущите кодеци можете да намерите тук:

Milesight: https://github.com/Milesight-IoT/SensorDecoders

Драгино: https://github.com/dragino/dragino-end-node-decoder

За да направите това, просто изберете правилния сензор, изтеглете файла за ChirpStack, отворете го с редактор и го поставете в полето за кодек.

След това създайте „Приложение“ и въведете сензорите под „Устройства“. Също така е важно да знаете JOIN данните на сензорите; те обикновено са отпечатани върху устройствата, върху табелката с данни, в самото устройство или в придружаващите документи.

Сега, когато всичко е настроено, трябва да задействате JOIN на сензорите. Този процес първо свързва сензора с вашия шлюз - в противен случай всеки може да контролира вашите сензори. Можете или да направите това с ПРИЛОЖЕНИЕ (Milesight има ПРИЛОЖЕНИЕ „Кутия с инструменти“), или да отворите устройството и да натиснете специален бутон JOIN. Понякога просто трябва да извадите за кратко батерията и да я включите, след което се задейства процесът JOIN.

Драгино Chirpstack

Сега данните трябва да пристигнат в ChirpStack. Но моля, бъдете търпеливи, сензорите изпращат сигнал само на всеки 10 минути, така че това може да отнеме време.

MQTT

Chirpstack има свой собствен MQTT брокер, но можете да използвате и свой собствен MQTT. За да получи данните от Chirpstack MQTT брокера, настроих MQTT мост и препратих всичко. Необходимата програма за това се нарича "Mosquitto"

Forwarder.conf в папката /etc/mosquitto/conf.d изглежда така за мен:

connection bridge-01
address 192.168.0.50:1884
topic # out 0
topic # in 0

където 192.168.0.50:1884 е IP адресът и портът на Chirpstack MQTT брокера

След като всичко е настроено, стойностите трябва да се появят автоматично в OpenSprinkler, както е показано по-горе. Сега конфигурирайте програмна настройка за този сензор, напр. като това:

Корекция на програмата1

Това поддържа напояването между 10% до 20% влажност на почвата. Регулирането на напояването е от 0 до 200%

 

5 мисли за „LoRaWan+NB-IOT+MQTT

  1. Тобиас казва:

    здравей

    това звучи изключително интересно. Просто се чудя дали имате нужда от сравнително скъпия Milesight UG65-868M или той прави нещо по-просто?

    • Админ казва:

      Разбира се, това работи и с други LoRaWAN шлюзове. Тъй като интеграцията се осъществява чрез MQTT, може да се използва всяко съвместимо устройство.

  2. Андреа казва:

    За съжаление, с фърмуер 2.3.1 (164), когато е избран „MQTT абонамент“, полетата MQTT Тема/MQTT Филтър/Единица липсват 🙁
    Дори смяната на браузъра не промени нищо. Това известен бъг ли е?

    • Админ казва:

      Да, това се случва, когато използвате „оригиналния“ уебсайт на производителя, който за съжаление изостава в развитието си. Следователно адаптирайте съответно, както е описано в инструкциите /su.
      След това натиснете няколко пъти Ctrl+F5 в браузъра (или презаредете), така че страницата да се актуализира. Ето линк отново:

    • https://OpenSprinklerShop.de/2023/01/29/analog-sensor-configierung-aktivieren/
      • Андреа казва:

        благодаря Работи чудесно и е възможно да интегрирам моята метеорологична станция Ecowitt чрез Homeassistant => Mosquitto.

Оставете отговор

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани *

Този сайт използва Akismet за намаляване на спама. Научете как се обработват вашите коментарни данни.