Подключение устройства к локальному серверу IoTSchool

Цель работы

Научиться подключать устройство к настроенному локальному серверу IoTSchool

Задачи работы

  1. Подключиться к ПК с установленным локальным сервером через удаленный терминал и подключить устройство к локальному серверу
  2. Создать хранилище для значений с датчика
  3. Привязать хранилище к облаку IoTSchool

Инструменты для выполения работы

  1. Компьютер с подключением к сети Internet.
  2. Плата Arduino с USB выходом (например, Arduino Uno) и загруженным скетчем из лабораторной работы "Разработка устройства для Alterozoom IoT".

Теоретическая часть

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

Выполнение работы

Подключиться к ПК с установленным локальным сервером через удаленный терминал и подключить устройство к локальному серверу

Примечание: в случае использования одного локального сервера несколькими людьми одновременно, необходимо использовать разные имена устройств, поменяв скетч (заменить led_blink_test, например, на led_blink_test2, led_blink_test3 и т.д.). Соответственно, аналогичным образом заменять имя устройства и во всех командах, приведенных ниже в работе.

Для подключения к ПК с установленным локальным сервисом используется протокол SSH (и одноименная утилита под ОС Linux). Для операционной системы Windows доступна программа Putty. При подключении к ПК с локальным сервером нужно указать логин и пароль.

Примечание: если используется предварительно настроенный ПК с сервером, спросить логин и пароль у его администратора.

Следующим шагом нужно физически подключить устройство к ПК с локальным сервером USB кабелем.
Затем выполнить в открытом терминале команду

wliotproxy list_identified

и убедиться, что устройство с нужным идентификатором и именем led_blink_test присутствует в списке.

Создание хранилища для значений с датчика

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

wliotproxy list_sensors led_blink_test

и проверяем, что присутствуют два датчика с названиями blinks_count и sin_x.
Создаем хранилище для датчика sin_x командой

wliotproxy add_storage led_blink_test sin_x last_n_values add_global_time --N=1000

Здесь "led_blink_test" - название устройства, "blinks_count" - название датчика на устройстве, "last_n_values" и "--N=100" означают, что будут храниться последние 100 значений, а add_global_time - что при записи данных нужно добавлять метку глобального (мирового) времени в локальном сервере.

Привязка хранилища к облаку IoTSchool

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

Необходимо авторизоваться на удаленном сервере под нужным аккаунтом (для примера, test@example.com)

wliotproxy-alterozoom-auth test@example.com iot.alterozoom.com

Приложение в процессе работы запросит пароль пользователя, в случае успешной аутентификации выдаст сообщение с идентификатором пользователя. Вызвав это же приложение без параметров, можно убедиться, что пользователь в списке присутствует. Если все в порядке, нужно перезапустить сервер

systemctl restart wliotproxyd

После этого можно привязывать хранилище к удаленному серверу

wliotproxy data_export add led_blink_test sin_x alterozoom email:test@example.com host:iot.alterozoom.com