Андрей Смирнов
Время чтения: ~20 мин.
Просмотров: 4

Ещё одна система автополива растений с использованием ESP8266 и Blynk

Здравствуйте! У нас есть курс по управлению Arduino из телеграм чата. Много человек пишет, что api телеграма забанено, поэтому сделаем умный дом на Blynk. В этой статье  я предлагаю сделать умный дом на той же плате, но с другим ПО. При помощи blynk можно быстро и почти без программирования сделать красивый интерфейс для управления домом. Мы рассмотрим вывод с пинов nodemcu при помощи разных виджетов.

Для урока вам понадобится. NodeMCU, светодиод, макетная плата,соединительные провода.

Установка ESP8266 пакета понадобится нам для работы с NodeMCU в Arduino IDE.Перед установкой пакета убедитесь, что у вас не установлена другая версия. В противном случае обязательно удалите ее перед установкой. А далее следуйте простым шагам:

  1. Запустите среду разработки – Arduino IDE
  2. Откройте настройки
  3. В поле «Дополнительные ссылки для Менеджера плат» (меню Файл) вставьте ссылку на esp8266 пакет http://arduino.esp8266.com/versions/2.4.2/package_esp8266com_index.json
  4. Перейдите в Инструменты – Плата – Менеджер плат
  5. Прокрутите вниз. Найдите esp Выберите версию 2.3.0. Установите.
  6. В Инструменты – Плата выберите nodemcu. Остальные настройки платы выставляются автоматически.

Установите мобильное приложение blynk.

IOS

Android

Получите auth token.

Чтобы связать nodemcu и приложение нам понадобится auth token, который нам вышлют на электронную почту.

image18-576x1024.jpg

Создайте новый проект. Выберите плату и тип подключения.

photo_2018-11-17_20-50-49-576x1024.jpg

После создания, auth token придет вам на email.

Содержание

image15-576x1024.jpg

Установка библиотеки blynk

Библиотека должна быть установлена вручную, следуйте инструкции:

  1. Скачайте самую последнюю версию.
  2. Разархивируйте.
  3. Скопируйте все эти библиотеки в  your_sketchbook_folder в Arduino IDE. чтобы найти положение папки your_sketchbook_folder, перейдите в меню Arduino IDE: файл -> настройки

Структура папки your_sketchbook_folder должна выглядеть так

your_sketchbook_folder/libraries/Blynkyour_sketchbook_folder/libraries/BlynkESP8266_Libyour_sketchbook_folder/tools/BlynkUpdateryour_sketchbook_folder/tools/BlynkUsbScript

Библиотеки должны лежать в libraries, инструменты в tools. Если такой папки нет — создайте.

Теперь загружаем прошивку на плату. Скачать здесь. В нем надо поменять  ssid и password wifi сети и auth token присланный в email.

  #define BLYNK_PRINT Serial  #include   #include   char auth[] = "YourAuthToken";  char ssid[] = "YourNetworkName";  char pass[] = "YourPassword";  void setup(){    Serial.begin(9600);    Blynk.begin(auth, ssid, pass);  }  void loop(){    Blynk.run();  }  

Энергия — валюта для покупки виджетов.

Все элементы управления покупаются за энергию. Каждый новый пользователь имеет 2000 единиц энергии на старте. Для большего количества надо платить.

Она покупается разово и навсегда.

В этой статье мы разберем

  • Кнопки
  • Слайдеры
  • Таймер
  • Джойстик
  • RGB зебру
  • Счетчик

Кнопка

200 ед. энергии

Схема подключения:Короткая нога светодиода в землю, длинная в пин D3. Не стоит забывать, что плата имеет некоторые особенности в номинации пинов, поэтому ниже схема и распиновка.

Открываем созданный проект и добавляем в него кнопку.

Дальше нажимаем на нее и выбираем пин, на который будет подаваться сигнал HIGH, и в результате чего наш светодиод будет гореть. У кнопки есть переключатель режима PUSH или SWITCH. Пуш означает, что на пин будет передан сигнал продолжительностью нашего нажатия. Если выбран режим SWITCH, то кнопка превращается в переключатель ON / OFF. В разделе Design у кнопки можно поменять размер надписи и цвет текста.

Запускаем приложение и нажимаем кнопку. Результат на гифке.

Усложним проект, добавив ещё три светодиода. Повесим на каждый светодиод ещё по одной кнопке.

Выстраиваем в рабочей области кнопки так, как нам нравится и настраиваем их на соответствующие пины. Если у вас не добавляются кнопки, посмотрите на баланс энергии. На 4 кнопки нужно 800 единиц. 

Мы разобрали кнопку. А что если их много или какую-то надо выделить? Для этого есть стилизованная кнопка. У нее можно настроить цвета при нажатии, границы, надписи, форму. Но стоит она 300 единиц энергии.

Слайдер

200 ед. энергии

Для управления яркостью светодиода нам понадобится слайдер и его привязка к пину (на nodemcu все поддерживают шим). В графе PIN надо указать пин. В соседних окнах выбираем крайние значения — максимальный предел от 0 до 1023. Настройка отправки значения при удержании. Возможен показ значения на виджете.

Далее создав три слайдера (3х200 ед. энергии)можно управлять RGB светодиодом.

RGB зебра

400 ед. энергии

Но для этой цели лучше подходит виджет RGB зебры.Схема как в прошлом пункте. Здесь мы настраиваем три пина и три границы значений.

Счётчик

500 ед. энергии

Для постепенного изменения значения ШИМ сигнала на пине кроме слайдера есть счетчик. Настройки: PIN — пин выхода, 0-1023 пределы значений, STEP — шаг изменения значения, цикличность значений, иконка, показ значений на виджете, интервал отправки сообщений.

Таймер

200 ед. энергии

Допустим вы хотите включать свет перед домом вечером. Для этого существует отдельный виджет.

Настраиваем время включения и выключения, пин с нагрузкой, и таймер начнет работать. Можно изменить цвет и размер текста на кнопке. Если вы переживаете что устройство не будет работать без интернета, то не стоит этого делать. Информация обрабатывается в облаке.

Светодиод улицу не осветит, а вот подключив лампу через реле, можно получить пользу от работы. Вот пример простой схемы:

Джойстик

400 ед. энергии

Очень важный виджет для создания мобильных приложений управляющих роботами — джойстик. Он охотно используется для управления роботами и руками манипуляторами. В нашем случае подключается два светодиода — индикаторы осей джойстика.

Настройка. Совместное или раздельное получение данных с джойстика, пины подключения, пределы значений, автовозврат.

Демонстрация работы джойстика.

Blynk предоставляет удобный и простой интерфейс для управления нашими устройствами: не нужно изобретать велосипеды и тратить время на разработку визуального пульта. Всё что нужно, уже есть. Однако за такое удобство придётся заплатить. Если планируется сделать уникальный пульт управления или монитор работы, то Blynk может послужить замечательным инструментом для быстрого прототипирования.

Есть ли у вас проекты, использующие Blynk? Насколько хорошо он работает в работающих проектах? Поделитесь в комментариях.

DIY или Сделай сам Из песочницы Однажды, когда я отдыхал в компании друзей в студенческом лагере МИФИ, один из них рассказал мне, что недавно решил попробовать посадить на участке клубнику. Купил горшки, нарыл где-то почву, подвел шланги для полива. И все бы ничего, хозяин спит — клубника растёт, да только приходится стабильно раз в неделю или даже чаще ездить на дачу, дабы растения не засохли без воды. Вспомнив про завалявшуюся в комоде парочку Arduino, а также давнее желание осуществить нечто большее, чем просто моргание светодиодами, я сразу решил взяться за эту задачу и сделать в этот раз, по возможности, всё до конца. В качестве интерфейса управления системой было решено предусмотреть ручное управление «с кнопки», а также реализовать удаленное управление через Интернет. В качестве головного контроллера был выбран Arduino Mega, так как к нему легко подключается шилд с lcd-экраном и кнопками, а также имеет достаточное для данной задачи количество памяти и GPIO. Общая схема системы: Для взаимодействия с глобальной сетью была выбрана активно набирающая популярность Wi-Fi плата ESP8266. Выбор беспроводного протокола передачи данных был обусловлен, помимо низкой стоимости Wi-Fi модуля, наличием на даче «заказчика» постоянно включенного Wi-Fi роутера, что позволит избежать протяжки проводного соединения внутри дома. Несмотря на то, что ESP8266 появился на горизонте DIY-сообщества совсем недавно, в рунете уже активно развивается ресурс разработчиков на этом чипе, где Вы всегда можете поискать ответ на интересующий Вас вопрос, найти пример подключения конкретной ESP платы или попросить помочь с возникшей проблемой.

Смета проекта

Для контроля текущей влажности почвы был заказан стандартный датчик с Ebay. Для отображения и ввода информации было решено использовать LCD Keypad shield, представляющий собой электронный модуль с LCD экраном и 6-ю кнопками, подключаемыми к одному аналоговому входу. В качестве устройства контроля подачи воды был выбран 12-вольтовый механизированный кран с 2 проводами, открытие-закрытие которого осуществляется сменой знаков подаваемого напряжения. Поэтому дополнительно к крану был заказан 4-канальный реле-модуль (два реле меняют подаваемую полярность, один отвечает за подачу напряжения, еще один оставлен про запас). В качестве ESP8266 на Ebay была заказана простейшая его версию – ESP-01. Главное – помнить, что ESP8266 питается исключительно от 3,3 В, о чём нужно позаботиться заранее. Список необходимого оборудования:

  • Механизированный кран
  • Arduino Mega
  • WiFi модуль (ESP8266)
  • 4-х канальное реле
  • Датчики влажности почвы
  • LCD дисплей с кнопками

Итоговая стоимость (без учета стоимости всего необходимого для пайки, сборки, а также блока питания): $61,01. Основной вклад в конечную стоимость моей системы внесли механизированный кран ($23,32) и Arduino Mega 2560 official ($26,80).

Функционал системы

Немного поразмыслив, я решил, что система автополива должна иметь возможность функционировать в трех следующих режимах:

  • Ручной («с кнопки»). В этом режиме пользователь сам принимает решение о времени запуска полива на основе предоставляемой ему информации с датчика влажности почвы или основываясь на личном опыте;
  • Режим «по расписанию». Пользователь задает лишь параметры полива по расписанию (периодичность, длительность), после чего система сама осуществляет полив по выбранным установкам;
  • Режим «по сенсору». Полив осуществляется автоматически при достижении заданного порога влажности. Пользователю необходимо только выставить пороговое значение влажности и длительность полива;
  • Удаленный (со смартфона или компьютера). Включается в себя возможность удаленного управления системой с использованием логики любого из трех вышеперечисленных режимов.

Реализацию такого функционала трудно представить без простейшего меню, навигация по которому будет осуществляться с помощью кнопок LCD-Keypad шилда. Про реализацию меню на Arduino можно прочитать, например, тут.

Blynk

Размышляя над реализацией удаленного управления поливом, я наткнулся на интересный проект Blynk, сбор средств на реализацию которого был запущен на Kickstarter 16 января 2015 г. За месяц проект собрал $49,235 вместо $10,000, что, по всей видимости, отражает огромный интерес к такого рода проектам со стороны мирового гик-сообщества. Основная цель Blynk – создание доступной платформы для беспроводного управления самодельными электронными устройствами со смартфона. По задумке авторов, выход в Интернет не является необходимым условием – Blynk Server можно будет скачать и развернуть в домашней сети, получив полную автономность в рамках Вашего дома. Полный список поддерживаемых платформ (среди которых, безусловно, есть Arduino, Raspberry PI и Intel Edison), на которые планируется портировать Blynk, находится тут. Схематично принцип работы Blynk представлен на следующем рисунке: В списке интерфейсных возможностей программы для смартфона по управлению удаленным устройством и отображению получаемой от него информации анонсировано широкое разнообразие элементов («widgets»). Выделим основные из них:

  • Кнопки;
  • Слайдеры;
  • Одноосные и двухосные джойстики;
  • Управление с помощью гироскопа и акселерометров телефона;
  • Различного рода ручки управления;
  • Графики;
  • Стрелочные индикаторы;
  • Всплывающие уведомления.

Полный перечень элементов можно найти на странице проекта Blynk на Kickstarter. Следует отметить, что проект находится в активной стадии разработки, поэтому пока что реализованы не все заявленные разработчиками функции. Однако, по их заверениям, это только дело времени. Имеющегося на сегодня функционала для нашего проекта будет достаточно.

Техническая реализация

Принципиальная схема устройства: Как видно из представленной схемы, обмен информацией между Arduino и ESP8266 будет осуществляться посредством UART. Чтобы не испытывать проблем при перепрошивке контроллера, Wi-Fi модуль подключим к контактам D2, D3, организовав на этих ножках аппаратный UART (Serial3) и установив скорость в 11520 бод. У внимательного читателя должен возникнуть логичный вопрос – каким образом будут общаться работающий на 5-вольтовой логике Arduino и 3,3-вольтовый ESP8266? Изучив этот вопрос в Интернете, я пришел к выводу, что большинство не придаёт этой проблеме абсолютно никакого значения (как выяснилось позже – не зря), напрямую соединяя соответствующие ножки этих двух плат. Лишь в нескольких статьях было предложено использовать простейший делитель напряжения, либо специально разработанные преобразователи. Преобразователя у меня естественно не было, поэтому сначала была предпринята попытка реализовать общение с помощью делителя, однако она не привела к каким-либо результатам, и я присоединился к упомянутому выше множеству закрывающих глаза на описанную проблему (благо все заработало и без согласования логических уровней).

Несколько слов о питании ESP8266

Как уже упоминалось во многих туториалах, для нормальной работы ESP необходимо стабильное питание в диапазоне 3,0-3,6 Вольт. Для этого можно использовать различные линейные преобразователи, например, популярный сегодня AMS1117 3.3. В даташите на AMS1117 указано, что входящее напряжение может достигать 15 В. Однако для стабильной работы в режиме выходного тока порядка 1 А рекомендуется понижать входное напряжение (на практике достаточно 5-6 В). По своему опыту скажу, что при подключении преобразователя к источнику 12 В начинается активный нагрев AMS, что быстро приводит к уменьшению выдаваемого напряжения и, как следствие, перезагрузке ESP8266.

Настройка ESP8266

Взаимодействие Arduino и ESP8266 при использовании Blynk можно реализовать двумя различными способами:

  • Использовать «родную» для ESP8266 AT-прошивку, а всю логику управления передать Arduino (т.н. режим «ESP8266 as shield»);
  • Залить в ESP написанный в Arduino IDE скетч с библиотекой Blynk, тем самым передав модулю управление данными, передающимися в мобильное приложение, а Arduino использовать для обработки команд ручного управления, данных с датчика влажности и открытия/закрытия крана (т.н. режим «ESP8266 as standalone»).

Оба варианта имеют свои плюсы и минусы, однако первый вариант удобнее тем, что нет необходимости работать с двумя программами и постоянно следить за совместимостью работы двух устройств. Для осуществления управления с помощью Blynk необходимо умение залить нужную прошивку на ESP8266. В нашем случае будет использована версия AT-прошивки v0.22 SDK v1.0.0. Для прошивки плат ESP8266 необходим USB-TTL преобразователь (например, такой), однако, можно использовать и Arduino, замкнув на нем ноги RST и GND между собой, и подключив RX Wi-Fi модуля к RX ноге Arduino, аналогично ТX к TX. Далее переводим ESP8266 в режим перепрошивки (для этого замыкаем выход GPIO0 на землю), и с помощью утилиты XTCom Util заливаем прошивку, как описано здесь. Остаётся только увеличить скорость UART до 115200 бод с помощью AT-команды AT+UART_DEF=115200,8,1,0,0, после чего настройка Wi-Fi модуля будет завершена.

Скетч для Arduino

Основной библиотекой для работы с Blynk под Arduino IDE является библиотека BlynkSimpleEsp8266.h. Рассмотрим основные ее функции. 1) Blynk.begin(auth, «ssid», «pass») Как Вы уже догадались, функция получает параметры подключения к Wi-Fi точке – ее SSID и пароль, а также auth token нашего устройства для подключения к Blynk server.Важно! Процесс подключения к Blynk server начинается только после того, как в программе будет впервые вызвана любая из следующих функций: Blynk.run() или Blynk.connect(). Для отключения/подключения к Blynk server используются функции Blynk.disconnect() и Blynk.connect(), возвращающие результат в булевом типе. Для установления подключения (таймаута в секундах) используется Blynk.connect(s) (по умолчанию таймаут установлен в 30 с). 2) Blynk.run() Основная функция для синхронизации устройства с Blynk server и получения команд со смартфона. Обычно используется в цикле loop. Кроме того, эта функция позволяет управлять входами и выходами ESP платы (в режиме «Standalone»), не используя нигде в коде такие функции, как digitalRead, digitalWrite, analogRead, analogWrite. Достаточно в приложении на смартфоне добавить на экран управления нужные элементы и соотнести их с нужными GPIO ESP8266. 3) Работа с виртуальными контактами («Virtual Pins») Одной из особенностей Blynk является использование виртуальных контактов. Под этим термином понимается логический канал для передачи различной информации между мобильным приложением и устройством, будь то булевы переменные, численные величины (integer или long) или текстовые данные в виде строки. Виртуальные контакты не имеют прямой связи с выводами устройства и используются преимущественно для взаимодействия с библиотеками периферийных модулей (LCD, сервоприводы и пр.) или интерфейсом мобильного приложения. В коде скетча обработка обращения к виртуальному контакту с номером n происходит с помощью блоков BLYNK_READ(Vn){…} и BLYNK_WRITE(Vn){…}. Внутри фигурных скобок указывается код обработки обращения к виртуальному контакту. Например, если виджет приложения запросит по виртуальному контакту №2 значение влажности почвы для отображения в виде графика, то нам потребуется в скетче прописать что-то наподобие:

BLYNK_READ(V2) { //отправляем в приложение текущее значение влажности, хранящееся в переменной humidity:   Blynk.virtualWrite(2, humidity); } 

Аналогично можно считать параметр, отправляемый, например, через виртуальный контакт №9 от пользователя приложения Blynk:

BLYNK_WRITE(V9) { //Записываем полученное значение в целочисленную переменную x: int x = param.asInt(); } 

Здесь используется преобразование входной переменной в целочисленное значение с помощью param.asInt(). Также допустимы преобразования param.asStr() и param.asDouble().Важно! Процедуры BLYNK_READ/BLYNK_WRITE должны исполняться как можно быстрее, дабы устройство успевало обрабатывать все входящие от приложения запросы. Поэтому настоятельно не рекомендуется использовать функции sllep/delay внутри таких подпрограмм. Более подробную информацию по функционалу Blynk можно найти на странице github разработчика в папке examples или на странице docs. Теперь, вооружившись знаниями, вернемся к автополиву и напишем скетч. Предусмотрим следующие возможности взаимодействия мобильного приложения с системой:

  • Выбор режима работы системы: ручной, по сенсору, по расписанию;
  • Отображение влажности почвы, полученной от системы и вывод исторических данных;
  • Обмен информацией через элемент приложения «терминал».

Я постарался прокомментировать каждый кусок кода, отвечающий за ту или иную функцию системы, поэтому подробно на коде программы останавливаться не будем. Отмечу лишь, что для удобства пользования все внесенные пользователем настройки записываются в энергонезависимую память Arduino (EEPROM).Скетч можно скачать на GitHub.

Настройка мобильного приложения Blynk

Остался последний шаг – настройка мобильного приложения. В моем случае будут использоваться следующие элементы:

  • 4 световых индикатора «led» (Virtual Pins 1, 29, 30, 31);
  • 2 кнопки (Virtual Pins 2, 3);
  • Терминал для обмена информацией (Virtual Pin 4);
  • Числовой индикатор «Value Display» (Virtual Pin 8);
  • График с возможностью отображения исторических данных «History Graph» (Virtual Pin 8);
  • Виджет для активации работы с почтой («Email»);
  • Виджет для активации всплывающих уведомлений («Push»).

После установки мобильного приложения Blynk необходимо зарегистрироваться и выбрать устройство, которым необходимо управлять (в нашем случае это ESP8266). Далее, чтобы не потерять, отправляем себе на почту уникальный auth token, который используется в скетче для аутентификации на серверах Blynk. Ниже – скриншоты, иллюстрирующие настройку приложения.Создаём новый проект В открывшемся окне созданного проекта в правом верхнем углу 3 кнопки: глобальные настройки проекта, добавление элементов (виджетов) на форму и запуск:Пустая форма нового проекта Осталось на форму приложения добавить элементы управления и произвести их настройку. Некоторые из имеющихся на момент написания статьи виджетов представлены ниже:Список виджетов для добавления на форму приложения Для управления работой системы добавим на форму 2 кнопки: одна будет отвечать за выбор режима работы, вторая — за запуск полива в ручном режиме. Отображение состояния системы на текущий момент оформим с помощью четырех led-индикаторов. Один индикатор будет загораться во время осуществления полива, остальные три необходимы для отображения текущего режима. Осталось выбрать цвета элементов, добавить подписи и привязать их к нужным виртуальным контактам.Настраиваем led-индикаторы и кнопки Для отображения динамики влажности почвы добавим на форму график с возможностью отображения исторических данных («History Graph»). Текущее значение влажности будем отображать на числовом дисплее («Value Display»).Добавляем элементы History Graph и Value Display Для удобства удаленной настройки параметров системы, а также получения более полной информации о текущем состоянии добавим в приложение терминал. А для получения уведомлений на почту и телефон необходимо поместить на форму еще и элементы «Push» и «Email».Добавляем элементы Terminal, Push и Email Осталось разместить на форме все описанные выше виджеты и мы получим что-то наподобие этого:

Результат

Ниже — несколько фотографий системы в текущем состоянии и видео работы автополива и Blynk. Сразу оговорюсь, что подключать механизированный кран в квартире и подводить водоснабжение к горшку с цветами я не стал, да и острой необходимости нет — в моменты тестирования системы процесс полива (при открытии крана) успешно эмулируется женой и обычной лейкой. Фотография №1: Фотография №2: Видео:

Вместо заключения

Подводя итоги создания системы автополива с использованием Blynk можно сказать следующее: 1. Сам по себе сервис Blynk является очень удобным и простым для освоения инструментом, который, благодаря обилию поддерживаемых плат и устройств, легко интегрируется практически в любое устройство. Вкупе с низкой ценой Wi-Fi модуля ESP8266 указанные преимущества позволяют осуществить добавление удаленного управления в конкретный проект с наименьшими усилиями. Минусами использования такого решения, безусловно, является меньшая гибкость в настройки системы под себя и зависимость от разработчиков приложения, что, однако, нисколько не снижает его заслуг при использовании в небольших DIY-проектах. 2. Двумя основными недостатками описанной выше реализации системы автоматического полива являются её стоимость и низкое качество используемого датчика влажности почвы. Первый недостаток обусловлен, как уже упоминалось выше, высокой стоимостью электромагнитного крана и официальной платы Arduino Mega. Однако её можно существенно снизить, используя, например, Arduino-аналоги или реализуя всю электронную часть на другом подходящем МК. Кран, к сожалению, существенно дешевле найти не удалось, да и цели такой передо мной не стояло. Что касается датчика влажности, то для увеличения его срока службы и уменьшения продуктов электролиза между его контактами, во-первых, необходимо подавать на него напряжение только непосредственно перед измерением влажности (что и реализовано в моей системе), а, во-вторых, лучше заменить его либо на графитовые стержни, либо использовать контакты из нержавеющей стали. В ближайшем будущем планируется собрать электронную часть воедино и поместить ее в какой-нибудь достойный корпус и, надеюсь, наконец установить всё на даче. Спасибо за внимание!

Программирование разнообразных микроконтроллеров и микрокомпьютеров, таких как Arduino, Raspberry Pi и им подобные, — одно из самых интересных и актуальных занятий. Конструирование устройств на этих платформах вышло за рамки хобби гиков и профессиональных программистов: эти платы используются для создания роботов, станков, 3D-принтеров, квадрокоптеров, IoT-устройств (умный дом), серверов и даже Hi-Fi-аудиоинтерфейсов.

К сожалению, рынок микроконтроллеров сильно сегментирован. Их программирование осуществляется через различные среды и интерфейсы. Ситуацию призван спасти проект под названием Blynk.

Blynk представляет собой облачный сервис для создания графических пультов управления и подходит для широкого спектра микрокомпьютеров и микроконтроллеров. Там, где раньше для сбора информации с датчиков нужно было писать полноценный интерфейс ввода-вывода или приобретать дополнительные модули, теперь можно обойтись пятиминутной работой в Blynk.

Для создания собственного проекта с управлением через Blynk нужно совсем немного: установить приложение (доступны версии для iOS и Android) или воспользоваться веб-формой. Тут потребуется регистрация в один шаг — ввод email и пароля. Регистрация нужна ввиду того, что Blynk — облачное решение и без неё контроль над железкой может получить любой пользователь.

Желающие могут установить сервер локально. В таком случае доступ в интернет не нужен.

Blynk — Ардуино, ESP8266, RPi Разработчик: Blynk Inc. Цена: Бесплатно

Blynk — IoT for Arduino, ESP32 Разработчик: Blynk Inc Цена: Бесплатно

Работа приложения потребует определённых навыков. Сначала необходимо связать компьютер или смартфон с программируемой платой. Программа поддерживает соединение с платами посредством массы самых разных интерфейсов:

  • USB (Serial),
  • Adafruit CC3000 WiFi,
  • Official Arduino WiFi Shield,
  • Official Ethernet Shield (W5100),
  • ENC28J60,
  • ESP8266 (WiFi modem),
  • SeeedStudio Ethernet Shield V2.0 (W5200),
  • RN-XV WiFly,
  • ESP8266.

Кроме настройки соединения, потребуется только правильно соединить модули будущего устройства. После этого в рабочей форме приложения нужно добавить доступные модули (виджеты), настроить необходимые адреса выводов и указать желаемые параметры (при необходимости можно написать свой код). Кстати, для создания виджета или программы используется drag’n’drop. Для управления доступна масса имитаторов управляющих устройств — переключатели, слайдеры, дисплеи, для каждого из которых можно писать свою логику. Есть отдельные формы для вывода и систематизации информации с требуемых датчиков в виде графиков.

Таким образом, платформа подойдёт как новичкам, так и более продвинутым пользователям, которые не хотят тратить время на написание приложений для управления проектами: от считывания данных с метеостанции и управления умным домом до управления роботами.

Вся информация, необходимая для начала работы, размещена на официальном сайте. Blynk — это open-source-проект, так что каждый может поучаствовать в создании новых функций. На данный момент использование сервиса полностью бесплатно, в дальнейшем ситуация несколько изменится — прежде всего, за счёт монетизации новых функций. Так, уже сейчас известно, что доступ к GPIO-интерфейсам будет приобретаться как встроенная покупка.

На данный момент Blynk работает со следующими платами:

  • Arduino: Uno, Nano, Mini, Pro Mini, Pro Micro, Mega, YÚN (Bridge), Due;
  • Raspberry Pi;
  • Particle (ex Spark Core);
  • ESP8266;
  • TinyDuino (CC3000);
  • Wicked WildFire (CC3000).

Используемые источники:

  • https://the-robot.ru/study/nodemcu-blynk-uroki-1-ustrojsva-vyvoda/
  • https://m.habr.com/ru/post/388589/
  • https://lifehacker.ru/blynk/

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации