В настоящее время существуют простые и недорогие  аппаратные и программные  средства, позволяющие широкой аудитории от школьников до профессиональных  разработчиков   быстро прототипировать и создавать конечные устройства для интернета вещей. Примерами этих средств являются платформы Arduino, Micro:bit,  Raspberry Pi.  

Эти платформы стали популярны благодаря низкой цене железа и удобным средам разработки, снижающим порог входа в IoT и позволяющим создавать учебные проекты, прототипы продуктов и и даже их рыночные варианты. К сожалению, на настоящий момент отсутствуют столь же дешевые, простые и удобные средства, которые позволяли бы даже школьнику создавать  многоэлементные системы класса  "умная территория", "умный дом", "умная теплица", "умная лаборатория" и т.п., включающие в себя множество взаимодействующих вещей.

Существующие  SCADA-системы, как правило, дороги, ориентированы на работу с недешевыми промышленными контроллерами и сложны в освоении. Кроме того, следует учесть, что IoT- системы ориентированы на решение различных задач в реальном физическом  мире  со множеством пользователей и  различной окружающей средой (как естественной, так и технической). Множественность естественных сценариев взаимодействия людей с IoT-объектами и IoT-объектов друг с другом требует  нового подхода к методам разработки, обеспечивающего продолжительное тестирование в условиях экспериментальной площадки, на которой течет повседневная жизнь. 

"Правильная"  (с точки зрения доступности широкой аудитории и эффективности получаемых решений) разработка  должна удовлетворять ряду специфических требований:

* быть ориентирована на использование недорогих маломощных платформ (Arduino, Micro:bit,  Raspberry Pi и им подобные) для создания отдельных IoT-объектов (с возможностью использования профессиональных контроллеров), 

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

* инфраструктура экспериментальной площадки должна строиться с использованием локальной сети, в которую входит IoT-сервер, обеспечивающий сбор данных с IoT-объектов, обработку этих данных и взаимодействие вещей на основе различных алгоритмов взаимодействия, 

* алгоритмы взаимодействия вещей должны задаваться с помощью специальных скриптов и понятных графических схем

* в качестве инструментов разработки пользовательских интерфейсов должны применяться программы-конструкторы приборных панелей, обеспечивающие быстрое создание интерфейсов, представляющих данные, поступающие от элементов систем и предоставляющие средства управления ими,

* экспериментальная площадка должна работать в многопользовательском режиме, позволяя многим разработчикам независимо одновременно тестировать свои решения (с возможностью  организации различных схем прав доступа к  каждой вещи)

* разработчики должны иметь возможность организовывать  передачу данных  на удаленные облачные IoT-сервисы

* на экспериментальной площадке должно проводиться ежедневное тестирование технологий в естественных условиях (в присутствии людей, занимающихся ежедневными делами и использующими технологии в рамках естественных сценариев поведения)

 

Цель проекта

Создание экспериментальной площадки, позволяющей изучать, разрабатывать и тестировать решения для IoT  с использованием в качестве базовых платформ систем Alterozoom и Ecoimpact

 

Проект был реализован в лаборатории физических основ и технологий беспроводной связи ННГУ с использованием платформы Alterozoom и персональной образовательной среды ECOIMPACT, имеющей в своем составе IoT-подсистему. Экспериментальная площадка отвечает большей части перечисленных выше требований и позволяет как обучать студентов IoT технологиям в рамках проектного подхода, так и разрабатывать новые IoT системы. 

В реализации проекта активное участие принимали сотрудники лаборатории,  студенты и аспиранты ННГУ. Особо стоит отметить студента Толгу Акара, который участвовал в проекте  в ходе подготовки своей дипломной работы (слайды презентации диплома использованы в настоящем документе).

В настоящее время ведется работа по стандартизации технических решений площадки, направленная на облегчение ее масштабирования и копирования.

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

 

Краткое описание экспериментальной площадки 

Архитектура IoT-подсистемы


Каждое IoT устройство имеет глобально-уникальный идентификатор самого устройства, а так же опционально идентификатор типа устройства, который задается одинаковый для партии выпускаемых устройств. Каждое устройство содержит в себе описание датчиков и команд управления, которые передает на локальный сервер. Для взаимодействия с устройством был разработан протокол прикладного уровня и его реализация под микроконтроллеры семейства Arduino и ESP8266. Этот протокол может использоваться поверх других сетевых протоколов, таких как IP (Ethernet, WiFi), RS485, RS232, ZigBee, Bluetooth и т.д.
Обработка данных и взаимодействие между устройствами может быть организовано двумя способами: скрипты на языке javascript, выполняющиеся локальным сервером, и сторонние приложения, подключающиеся к серверу и получающие от него уведомление о появлении новых данных и различных событиях на устройствах. Для облегчения процесса разработки подобных приложений предназначена библиотека на языке С++ под фреймворк Qt версии 5.4 и выше.

Приборная панель экспериментальной зоны (в приложении для компьютера)

Приборная панель наложена на план экспериментальной зоны.

В тестовой зоне установлены датчики температуры, влажности и давления воздуха, датчики углекислого газа, угарного газа и кислорода, а также датчики пыли, датчики освещенности и ряд других датчиков.

Приборная панель и голосовое управление позволяют открывать замки дверей, включать и выключать свет в разных зонах комнат, открывать и закрывать форточки, управлять кондиционерами, вентиляторами и увлажнителями в разных комнатах, а также фоновой музыкой. На территории экспериментальной зоны установлены интегрированные в нее фитостена и микротеплица. Также в тестовую зону интегрированы рабочие места студентов, позволяющие им выполнять лабораторные работы, посвященные технологиям интернета вещей.  На локальном сервере запущены скрипты, регулирующие параметры микроклимата за счет использования различных технических (и не только технических) средств.

В тестовую зону интегрированы экспериментальные установки студентов и аспирантов, работающих над самыми разными проектами, в которых используются системы мониторинга и управления.  

 Голосовое управление

Управление с помощью приборной панели



Передача данных на удаленный IoT сервер Alterozoom и интеграция со сторонними облачными сервисами (ThingSpeak)

Alterozoom

 

 

ThingSpeak






 

 
Температура в зале  Влажность в зале