Способы управления через Blynk
На данный момент есть два варианта управлять пином:
С помощью вебхуков
- https://blynk-cloud.com/<ваш_токен>/update/V0?value=1 — для замыкания реле
- https://blynk-cloud.com/<ваш_токен>/update/V0?value=0 — для размыкания реле
С помощью мобильного приложения blynk
- Вернёмся к созданному ранее проекту и добавим простую кнопку с помощью иконки «+» в верхнем правом углу приложения.
- Выберем в открывшемся меню «Button» и разместим, где удобней.
- Зададим виртуальный пин, управлять которым мы будем этой кнопкой. Для этого просто тапнем по созданной кнопке.
- По желанию называем кнопки, задаём цвет и текст, для включенного и выключенного состояний.
- Тип «Push<>Switch» (кнопка или переключатель). Push — нажали и отпустили, пин выключился. Switch — нажали и отпустили, пин запомнил состояние.
Отладка
#define BLYNK_DEBUG
Чтобы включить отладочную информацию на последовательном порту по умолчанию, добавьте в начало скетча.
ВАЖНО: это должна быть первая строка в вашем коде:
#define BLYNK_PRINT Serial // Определяет объект/порт, который используется для вывода #define BLYNK_DEBUG // Опционально, включает детализированный вывод
Обязательно включите последовательный вывод в :
Serial.begin(9600);
Откройте Serial Monitor, и вы увидите отладочные данные.
Вы также можете использовать запасные аппаратные последовательные порты или SoftwareSerial для вывода отладочной информации (вам понадобится адаптер для подключения к ПК).
ПРЕДУПРЕЖДЕНИЕ: Включение ‘ замедлит вашу аппаратную производительность в 10 раз!
BLYNK_LOG()
Когда параметр определен, вы можете использовать для записи ваших LOG журналов. Используется похоже на :
BLYNK_LOG("This is my value: %d", 10);
On some platforms (like Arduino 101) the may be unavailable, or may just use too much resources.
In this case you can use a set of simpler log functions:
На некоторых платформах (например, Arduino 101) может быть недоступен или просто использовать слишком много ресурсов. В этом случае вы можете использовать набор более простых функций журнала:
BLYNK_LOG1("Hello World"); // Print a string BLYNK_LOG1(10); // Print a number BLYNK_LOG2("This is my value: ", 10); // Print 2 values BLYNK_LOG4("Temperature: ", 24, " Humidity: ", 55); // Print 4 values ...
Полезные ссылки
- Remote Sensor Control Using MQTT Publish and Subscribe — https://www.mathworks.com/help/thingspeak/mqtt-publish-and-subscribe-with-esp8266.html (управление ESP8266 устройством через MQTT)
- Publish to a Channel Using an Arduino Client — https://www.mathworks.com/help/thingspeak/use-arduino-client-to-publish-to-a-channel.html
- https://www.snrelectronicsblog.com/iot/iot-mqtt-panel-user-guide/ — сайт IoT MQTT Panel
- MQTT протокол с примером в IoT MQTT Panel — https://1sheeld.com/mqtt-protocol/
- https://blogs.mathworks.com/iot/2017/01/20/use-mqtt-to-send-iot-data-to-thingspeak/
- https://blogs.mathworks.com/iot/2017/11/10/subscribe-to-thingspeak-iot-data-using-mqtt/
- https://www.mathworks.com/help/thingspeak/mqtt-basics.html
- https://www.mathworks.com/help/thingspeak/mqtt-api.html
- CloudMQTT и ESP8266
- Мой вопрос по поводу нестабильно работающего MQTT subscription на ThingSpeak.
Войдите в приложение Blynk
Приложение Blynk доступно бесплатно на Android и iOS. Это отправная точка для ваших проектов с простой в использовании системой перетаскивания для создания пользовательских элементов управления для вашей установки IoT. Рабочий процесс быстрый: при запуске нового проекта вам предлагается выбрать свою доску для разработки из обширного списка, а также способ подключения. Затем приложение отправляет токен авторизации по электронной почте для подключения к вашему устройству через сервер Blynk.
Элементы управления называются виджетами : различные типы методов ввода и вывода информации, включая кнопки, ползунки, джойстик, графики и текстовую обратную связь. Существуют также виджеты, специфичные для компонентов, со стилизованными элементами управления для светодиодов, ЖК-дисплеев и даже потокового видео. Также примечательны виджеты, которые добавляют функции, такие как автоматическая публикация в Twitter и пользовательские уведомления.
Хотя приложение бесплатное, оно ограничивает количество виджетов, которые вы можете использовать одновременно, предоставляя им все «энергозатраты». Приложение дает вам баланс в 2 000 для игры, с возможностью купить больше, если это необходимо.
Я обнаружил, что предоставленного начального баланса было более чем достаточно для примеров проектов, перечисленных здесь, хотя, если ваша установка более сложная, вы можете обнаружить, что сока достаточно быстро.
Каждый виджет имеет меню редактирования, позволяющее изменить имя и цвет. Затем вы выбираете, какой из выводов повлиять (будь то вывод на вашей доске или один из виртуальных выводов Blynk), а также диапазон значений для отправки. Для выходных дисплеев, таких как графики и текстовые поля, вы также можете выбрать, как часто вы хотите, чтобы он обновлялся, потенциально экономя драгоценную пропускную способность.
Blynk также имеет возможность назначать инструкции «виртуальным» контактам, которые являются настроенными пользователем соединениями между приложением и оборудованием. Поэтому одну кнопку в приложении можно использовать для запуска множества различных событий на устройстве. Мы расскажем, как использовать их позже в статье.
Приложение дает возможность поделиться своим проектом с другими. Генерируется QR-код, который можно отправить по электронной почте или отсканировать напрямую и использовать любой, у кого также есть приложение Blynk. Тот, с кем вы делитесь, не может вносить изменения в проект, что делает его быстрым и удобным способом управления своими устройствами. Однако стоит отметить, что ваш проект в приложении должен быть запущен, чтобы другие имели доступ к оборудованию.
Вы также можете поделиться проектом, не предоставляя доступ к своему оборудованию, что является отличным способом научить людей пользоваться приложением, не позволяя им включать и выключать свет!
Я нашел создание приложения очень быстрым и интуитивно понятным. После создания вы можете сразу начать использовать его, нажав на символ воспроизведения в правом верхнем углу. Если вам нужно внести изменения позже, вы можете просто нажать ту же кнопку, чтобы вернуться в режим редактирования.
NB-IoT в России
В РФ для протокола выделены следующие полосы частот:
В марте 2017 компания «Мегафон» в тестовом режиме развернула сеть NB-IoT. В сентябре 2018 оператор «Билайн» запустил первый облачный проект учета электроэнергии на базе протокола и счетчиков с его поддержкой. К июню 2019 компания активировала в Москве свыше 2500 базовых станций «интернета вещей» в диапазоне 1800 МГц.
В декабре 2019 компания МТС IoT запустила собственную сеть и предлагает корпоративным клиентам тариф «IoT-сеть». В его рамках дается возможность сбора сведений с контрольно-измерительных устройств. Предложение действует по всей России.
Задача инициализации беспроводного подключения в устройствах IoT
Технология Wi-Fi была создана для того, чтобы переносные устройства, такие как ноутбуки, а позже и более продвинутые мобильные устройства, такие как сотовые телефоны и планшеты, могли подключаться к Интернету без проводов. Такие персональные девайсы по определению имеют дисплей и клавиатуру в качестве интерфейса пользователя. Например, обычная процедура подключения сотового телефона к Wi-Fi осуществляется через страницу настроек этого устройства. Телефон выполняет поиск сетей Wi-Fi и предоставляет пользователю список доступных. После того как сеть выбрана, пользователю предлагается ввести пароль. Если пароль введен правильно, инициализация подключения считается успешной и часто указывается значком Wi-Fi на панели состояния.
Если же говорить об устройствах IoT, трудность заключается в том, что многие из них не имеют дисплея и клавиатуры, а зачастую у них вообще нет никакого пользовательского интерфейса. Таким «безголовым» устройствам нужны другие способы получения имени сети и пароля от пользователя. Альтернативный способ подключения должен быть простым и надежным. В большинстве случаев он предполагает использование ПК, телефона или планшета в качестве расширенного интерфейса пользователя для IoT-устройства, который позволяет ввести информацию о сети с помощью дисплея и клавиатуры ПК, телефона или планшета.
Далее мы приведем краткий обзор широко распространенных на рынке способов инициализации подключения. Затем рассмотрим ключевые аспекты выбора правильных способов инициализации и дадим рекомендации разработчику системы.
IoT Wi-Fi контроллер
Интерфейс этого приложения показывает все операции ввода и вывода на Ардуино. Переключение GPIO и показания АЦП управляют гаджетом в реальном времени.
Добавить WI-Fi к устройствам возможно с помощью IoT контроллера. Он имеет 8-битный микроконтроллер и IMU (Inertial Measurement Unit). Соединение защищено однокристальным крипто-ускорителем ECC 608.
Уникальный интерфейс IoT Wifi Controller отображает контакты в реальном времени с подробной информацией, благодаря уровню GPIO. Показатели ADC также можно подключать к плате с помощью телефона (Айфона) или маршрутизатора.
Не реализованные функции:
- расширенная подсветка анаграмм;
- автозаполнение;
- руководства для объединения других приложений.
Базы Uno R3 и FTDI в данное время поддерживают рабочее состояние платы Arduino. В процессе находится разработка Mega, Due и Nano. Используемые в обучении платы Arduino — USB кабель OTG не влетит в копеечку. Стоимость до 2 долларов.
Программа «умный дом» работает при помощи платформы Arduino. В данном случае используется данный андроид и сама платформа. Для работы совместили домашние и веб серверы. Результат превзошел ожидания. Теперь при помощи мобильного устройства можно управлять системой целого дома: включать и выключать свет, электрические приборы, закрывать двери, окна и другое.
В статье рассмотрены 10 обзорных приложений — для платы «Ардуино». В процессе работы и изучения не возникнет проблем с программированием Windows и в других. Затруднения решаются подключением к пинам. Те в свою очередь аппаратно запрограммированы UART. Далее используются традиционные библиотеки.
AWS Partner Device Catalog
В каталоге устройств партнеров AWS перечислены устройства IoT, совместимые с сервисами AWS IoT. Здесь можно выбрать комплекты средств разработки и встроенные системы для создания новых устройств, а также готовые устройства, такие как шлюзы, периферийные серверы, датчики и камеры для использования в своих проектах IoT. Использование оборудования с поддержкой технологий AWS из каталога устройств партнеров упрощает реализацию проектов IoT, так как вы получаете возможность использовать опыт и экспертные знания партнеров APN по оборудованию. Вы можете приобрести у партнеров устройства для оценки, создания прототипов и работы с опытными образцами.
Узнайте, какие устройства IoT совместимы с AWS IoT Core, в AWS Partner Device Catalog.
Узнайте больше о том, как партнеры могут сертифицировать IoT-оборудование для использования в AWS IoT Core согласно программе квалификации устройств AWS IoT Core с помощью советника по настройке устройств для самостоятельной сертификации устройств IoT и внесения их в AWS Partner Device Catalog.
Как работает Интернет вещей?
Интернет вещей стал возможным благодаря развитию и объединению ряда технологий, аналитики в реальном времени, датчиков, встроенных систем, беспроводных систем, автоматизации, систем управления и машинного обучения.
Интернет вещей работает через устройства и объекты со встроенными датчиками, которые подключаются к Интернету и обмениваются данными с платформой, которая применяет аналитику и обменивается информацией с приложениями, разработанными для удовлетворения конкретных потребностей.
Платформы Интернета вещей предназначены для определения того, какие данные используются, а какие можно отбросить, чтобы выявлять закономерности, давать рекомендации и находить проблемы, часто до того, как они возникнут.
Все это позволяет процессам стать более эффективными, а также позволяет автоматизировать определенные задачи, особенно повторяющиеся, требующие много времени или опасные. Например, если вы ведете машину и видите, что загорается индикатор неисправности двигателя, подключенный автомобиль может проверить датчик и связаться с другими людьми в автомобиле, прежде чем отправлять данные производителю. Затем производитель может предложить встречу для устранения неисправности у ближайшего дилера и убедиться, что необходимые запасные части есть на складе и готовы к вашему приезду.
Риски кибербезопасности Интернета вещей
Прямо сейчас устройства Интернета вещей представляют собой неограниченный источник уязвимостей для кибербезопасности. Вот почему:
- Безопасность в Интернете вещей сложно реализовать. Даже если производители постараются, обеспечить безопасность на устройствах Интернета вещей может быть сложно. Это из-за технических ограничений того, с чем они работают. Программирование самого устройства сильно отличается от программирования пользовательского интерфейса программы, и всё это обычно должно работать на потенциально проприетарных платформах с низким энергопотреблением. Это означает ограниченную вычислительную мощность для любого вида шифрования, дешифрования или других элементарных процессов, ориентированных на безопасность.
- Многие устройства IoT поставляются с логинами по умолчанию. Вместо того, чтобы давать каждому устройству уникальное имя пользователя и пароль, гораздо проще дать им пароли и логины по умолчанию (например, admin // admin). Если на устройстве даже есть инструкции по изменению пароля, большинство пользователей, вероятно, не последуют им. Это позволяет хакерам очень легко входить в них, если они могут их найти. Это подводит меня к следующему пункту…
- Уже существуют поисковики устройств в IoT. Shodan – это поисковая система, которая позволяет вам искать устройства IoT по всему миру. Вы можете искать по техническим параметрам или с помощью простых терминов, таких как «веб-камера», но и то, и другое вернёт вам тысячи устройств для просмотра. Если устройство подключено к Интернету, есть большая вероятность, что Shodan сможет его найти. Оттуда хакер, который провёл хотя бы небольшое исследование, может войти в систему с очень небольшими усилиями, если устройство уязвимо.
- Устройства Интернета вещей – отличные хосты для вредоносных программ. Поскольку их безопасность сомнительна, устройства IoT часто могут использоваться для размещения и запуска элементарных вредоносных программ. Они чрезвычайно полезны в DDoS-атаках, которые требуют множества устройств для работы простых ботов, чтобы поразить свои цели.
Даже если ваше IoT-устройство полностью защищено, есть ещё один огромный риск, которому оно может подвергнуть вас – нарушение конфиденциальности. Эти устройства печально известны сбором данных для своих производителей. Эти данные якобы используются только для улучшения устройств, но немногие компании смогут противостоять дополнительной прибыли, которую могут принести детализированные пользовательские данные.
Последствия взлома IoT-устройств
Поскольку устройства Интернета вещей (IoT) являются частью огромной инфраструктуры, последствия взлома могут затронуть миллионы людей. Например, хакеры могут взломать систему управления энергопотреблением и оставить весь город без электричества.
Как насчёт индустрии умного дома? Представьте, что сталкер наблюдает за вашей семьей через камеру видеонаблюдения или удаленно отпирает вашу дверь. Если ваш дом оснащён устройствами Интернета вещей, это означает, что кто-то с нужными навыками может отслеживать ваши действия и использовать ваш дом.
Даже умные часы ненадежны, так как они могут заставить пациентов принять таблетки и вызвать проблемы со здоровьем.
Создание Центра Интернета вещей
В этом разделе описывается создание центра Интернета вещей с помощью портала Azure.
Войдите на портал Azure.
На начальной странице портала Azure нажмите кнопку +Создать ресурс и введите текст Центр Интернета вещей в поле поиска в Marketplace.
В результатах поиска выберите Центр Интернета вещей и щелкните Создать.
Заполните следующие поля на вкладке Основные сведения.
Подписка: Выберите нужную подписку для концентратора.
Группа ресурсов. Выберите группу ресурсов или создайте новую. Чтобы создать новую, щелкните Создать и введите нужное имя. Чтобы выбрать существующую группу ресурсов, щелкните ее. Дополнительные сведения о группах ресурсов см. в статье об управлении группами ресурсов в Azure Resource Manager.
Регион. Выберите регион, в котором будет расположен концентратор. Выберите ближайшее к вам расположение. Некоторые функции, такие как потоки устройств Центра Интернета вещей, доступны только в определенных регионах. Для функций с такими ограничениями необходимо выбрать один из поддерживаемых регионов.
Имя Центра Интернета вещей. Введите имя для концентратора. Это имя должно быть глобально уникальным и содержать от 3 до 50 буквенно-цифровых символов
Имя может также содержать знак тире ().
Важно!
Так как центр Интернета вещей будет общедоступен в качестве конечной точки DNS, убедитесь, что в его имени не фигурируют конфиденциальные или персональные сведения.
По завершении выберите Next: Networking (Далее: сеть), чтобы продолжить создание центра.
Выберите конечные точки, с помощью которых устройства смогут подключаться к Центру Интернета вещей. Можете выбрать параметр по умолчанию Общедоступная конечная точка (все сети) либо выбрать Общедоступная конечная точка (выбранные диапазоны IP-адресов) или Частная конечная точка
Для нашего примера примите параметр по умолчанию.
По завершении выберите Next: Management (Далее: управление), чтобы продолжить создание центра.
Здесь вы можете принять настройки по умолчанию. При необходимости можете изменить любое из следующих полей:
Ценовая категория и категория масштабирования. Выбранный уровень решения. В зависимости от количества необходимых компонентов и ежедневно отправляемых сообщений с помощью решения, можно выбрать несколько уровней. Для тестирования и оценки можно использовать уровень «Бесплатный». Он позволяет подключить к концентратору 500 устройств и отправлять до 8000 сообщений в день. Для каждой подписки Azure можно создать один центр Интернета вещей на уровне «Бесплатный».
Если вы используете функцию «Быстрое начало» для потоков устройств Центра Интернета вещей, выберите уровень «Бесплатный».
Единицы центра Интернета вещей. Допустимое число сообщений за единицу в сутки зависит от ценовой категории концентратора. Например, если концентратор должен поддерживать 700 000 входящих сообщений, следует выбрать две единицы уровня S1.
Дополнительные сведения о других параметрах уровня см. в статье Масштабирование решения для Центра Интернета вещей.
Defender для Интернета вещей. Включите это решение, чтобы обеспечить дополнительный уровень защиты от угроз для ваших устройств и устройств Интернета вещей. Этот параметр недоступен для концентраторов на уровне «Бесплатный». Дополнительные сведения см. в документации по Microsoft Defender для Интернета вещей.
Дополнительные параметры Settings > С устройства в облако: Это свойство привязывает сообщения, отправляемые с устройства в облако, к числу одновременно работающих модулей чтения этих сообщений. Для большинства концентраторов достаточно четырех разделов.
По завершении выберите Next: Теги, чтобы перейти к следующему экрану.
Теги — это пары «имя — значение». Один и тот же тег можно присвоить нескольким ресурсам и группам ресурсов для их классификации и объединения счетов. В этом документе не будут добавляться какие-либо теги. Дополнительные сведения см. в статье Использование тегов для организации ресурсов в Azure.
По завершении выберите Next: Просмотр и создание, чтобы просмотреть выбранные параметры. Отобразится примерно следующий экран только со значениями, которые вы задали при создании центра.
Щелкните Создать, чтобы начать развертывание центра. Развертывание будет выполняться несколько минут, пока будет создаваться центр. Когда развертывание будет завершено, выберите Перейти к ресурсу, чтобы открыть новый центр.
Bluetooth
Bluetooth как протокол связи был разработан еще в середине 1990-х гг. специально для организации персональных локальных сетей, соединяющих различные носимые устройства, сотовые телефоны, компьютерную периферию и т. д. Bluetooth использует диапазон ISM 2,4 ГГц и первоначально был утвержден как стандарт IEEE 802.15.1. Сейчас его продвижением занимается специальная группа Bluetooth Special Interest Group (Bluetooth SIG), которая является альянсом многих тысяч компаний, создающих устройства с применением данной технологии. Со временем стандарты Bluetooth диверсифицировались: за счет добавления в 2006 г. Bluetooth Low Energy (BLE, Bluetooth LE, или Bluetooth Smart) и Bluetooth 5 в 2016 г.
Существует несколько типов поведения этой технологии при радиосвязи, т. е. протоколов доступа к мультимедиа. Они разработаны и легализованы в виде стандарта Bluetooth SIG, и некоторые из них несовместимы с другими протоколами Bluetooth MAC. MAC (Medium Access Control) — это подуровень («уровень» иногда называют «слоем», как калька с англ. «layer») управления доступом к среде, который осуществляет передачу фрагментов данных структуры МАС посредством физического канала. Технология Bluetooth на физическом уровне (англ. physical layer, PHY) использует GFSK-модуляцию (Gaussian Frequency-Shift Keying). Это вид частотной манипуляции модуляцией, при которой применяется фильтр Гаусса для сглаживания положительных и отрицательных частотных перестроек, представляющих собой бинарный информационный код — «1» или «0». Также Bluetooth может использовать модуляцию с расширенным спектром FHSS (Frequency-Hopping Spread Spectrum), которая повышает помехозащищенность канала связи путем псевдослучайной перестройки рабочей частоты. В технологии BLE применяется метод прямой последовательности для расширения спектра DSSS (Direct Sequence Spread Spectrum). Эта технология модуляции обеспечивает высокую производительность локальных беспроводных сетей путем расширения спектра излучаемого сигнала. Она заключается в повышении тактовой частоты модуляции, при этом каждому символу передаваемого сообщения ставится в соответствие достаточно длинная псевдослучайная последовательность. Последние протоколы Bluetooth имеют функции предотвращения влияния помех.
Технология Bluetooth настолько популярна, что определить область ее типичного использования довольно трудно. Она весьма распространена в беспроводных периферийных устройствах, предназначенных для ноутбуков и мобильных телефонов. Имеются в виду не только беспроводные мыши и гарнитуры, но также фитнес-мониторы и многие носимые устройства IoT. Кроме того, последние версии протокола способны обеспечить более широкий радиус связи и снизить потребление энергии от батареи, а многие протоколы доступа к мультимедиа упрощают разработку интеллектуальной рекламы, обмена ключами безопасности и дистанционного управления.
Профили Bluetooth (протоколы, ориентированные на приложения) имеют множество опций меню: можно использовать ограниченный вариант — для приложений без установления соединения — или полный протокол, который позволяет организовать безопасное соединение для надежной передачи данных, т. е. с установкой соединения. При последнем варианте передача начинается с данных вызова или с установки маршрута следования пакетов от источника к получателю. Затем происходит последовательная передача данных, и по ее окончании связь разрывается.
Некоторые устройства с Bluetooth, такие как принтеры с питанием от сети напряжения переменного тока, используют радиосвязь ближнего радиуса действия для того, чтобы исключить подключение кабелей, а не для ограничения потребления энергии. Однако для большинства устройств с питанием от батареи время их автономной работы является ключевым фактором (как правило, оптимальным является срок службы в десять лет). Это не только позволяет сократить сервисные затраты (на техническое обслуживание, связанное с заменой источников питания), но и делает использование таких устройств максимально комфортным.