Azure IoT

Интеграция модулей Telit в Azure IoT Hub
Практическая реализация

№ 4’2017
PDF версия
Облачный сервис Microsoft Azure предлагает Центр Интернета вещей (Azure IoT Hub) для управления устройствами, собирающими данные о физическом мире, включая окружающую среду, различного рода процессы (в том числе технологические) и самого человека. В статье на практическом примере рассматриваются возможности совместной работы модулей сотовой связи Telit со службой Azure IoT Hub.

Компания Telit производит модули передачи данных, предназначенные, с одной стороны, для интеграции с устройствами Интернета вещей (Internet of Things, IoT), а с другой -для взаимодействия с облачными сервисами IoT. Рассмотрим возможности совместной работы модулей сотовой связи Telit (в частности, UE866-EU) с облачным сервисом Microsoft Azure -Центром Интернета вещей (Azure IoT Hub) на практическом примере.

Создание «Центра «Интернета вещей»

Рис. 1. Создание «Центра «Интернета вещей»

Сервис Microsoft Azure IoT Hub позволяет получать данные практически с любого количества различных устройств, реализующих на практике принципы IoT, в реальном времени и отправлять команды на устройства, а также управлять устройствами.

Для начала работы с Azure IoT Hub необходимо иметь учетную запись Microsoft. Получение такой учетной записи тривиально и выходит за рамки данной статьи. После этого необходимо зайти на портал Microsoft Azure [1] и создать собственный Центр Интернета вещей (рис. 1).

В нашем примере он будет называться RuCenter, соответственно, имя узла будет RuCenter.azure-devices.net (оно потребуется чуть позже, при привязке устройства). Далее необходимо создать само устройство в Центре, для этого проще всего воспользоваться Обозревателем устройств (рис. 2).

Создание устройства в «Центре «Интернета вещей»

Рис. 2. Создание устройства в «Центре «Интернета вещей»

При желании Microsoft предлагает использовать вместо веб-интерфейса приложение Device Explorer, выполняющее аналогичные функции. Назовем наше устройство my_first_device. После создания устройства система автоматически создаст два симметричных ключа общего доступа, которые также потребуются для привязки устройства. После этого Центр уже готов к передаче сообщений в устройство и приему сообщений из устройства в IoT Hub. Для контроля переданных и принятых сообщений может использоваться несколько различных методов. Самым простым является использование уже упомянутого приложения Device Explorer, где можно непосредственно увидеть сами сообщения. Для того чтобы Device Explorer привязался к созданному ранее Центру Интернета вещей, необходимо его сконфигурировать. Для этого на вкладке Configuration необходимо ввести строку подключения к Azure IoT Hub, полученную из веб-интерфейса (рис. 3). На этом первичное конфигурирование IoT Hub заканчивается, и можно переходить к собственно устройству.

Конфигурирование Device Explorer

Рис. 3. Конфигурирование Device Explorer

Отладочная плата Telit UE866-EU + SE868V3 bundle

Рис. 4. Отладочная плата Telit UE866-EU + SE868V3 bundle

В качестве устройства будем использовать модуль UMTS/HSPA Telit UE866-EU [2]. Этот самый малогабаритный в мире модуль UMTS/HSPA с возможностью работы как в 3G-, так и в 2G-сетях уже рассматривался нами ранее [3]. Российский дистрибьютор Telit выпускает оригинальную отладочную плату Telit UE866-EU + SE868V3 bundle [4] (рис. 4), позволяющую испытать большинство функций UE866-EU без использования дополнительного оборудования (базовой платы, блока питания и пр.).

Существенным преимуществом модулей передачи данных Telit является то, что все они содержат в составе прошивки протокол MQTT [5] -один из протоколов IoT, который поддерживается также и Azure IoT Hub. Кроме того, во все модули сотовой связи Telit, включая UE866-EU, имплементирован протокол SSL/TLS, требующийся для обеспечения безопасности передаваемых данных. Основываясь на этих наработках, специалисты Telit разработали приложение AppZone [6], работающее непосредственно с Azure IoT Hub и управляемое со стороны модуля UE866-EU AT-командами. AT-команды UE866 для работы с Azure IoT Hub приведены в таблице.

Таблица.  AT-команды UE866-EU для работы с Azure IoT Hub

#AIHCFG — конфигурирование клиента «Центра «Интернета вещей»

AT#AIHCFG=<iothub_name>,
<iothub_suffix>,<device_id>,
<device_shared_key>

Параметры: <iothub_name> — имя узла IoT Hub (первая часть).
В нашем случае полное имя узла RuCenter.azure-devices.net, поэтому первая часть будет RuCenter.

<iothub_suffix> — вторая часть имени узла. В примере выше будет azure-devices.net.

<device_id> — имя устройства. Ранее было создано устройство my_first_device.

<device_shared_key> — первичный (или вторичный) симметричный ключ общего доступа.

AT#AIHCFG?

По команде возвращается текущее состояние конфигурации в формате:

#AIHCFG: <iothub_name>,<iothub_suffix>, <device_id>,<device_shared_key>

AT#AIHCFG=?

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

#AIHCONN — установить/разорвать соединение с Azure IoT Hub

AT#AIHCONN=<op>

<op> — операция: «0» — разорвать соединение, «1» — установить соединение. Примечание 1: перед выполнением команды должно быть произведено конфигурирование командой AT#AIHCFG.

Примечание 2: PDP-контент должен быть активным перед выполнением команды. Он может быть активирован командой AT#SGACT=1,1 (предварительно нужно сконфигурировать контент командой AT+CGDCONT).

После установления соединения модуль формирует сообщение #AIH: CONNECTED.

После разрыва соединения модуль формирует сообщение #AIH: DISCONNECTED.

AT#AIHCONN?

По команде возвращается текущее состояние соединения в формате: #AIHCONN: <status>,

где <status>:

«0» — неправильный PDP-контент;

«1» — соединение неактивно;

«2» — попытка соединения;

«3» — соединение установлено;

«4» — готовность к соединению.

AT#AIHCONN=?

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

#AIHSND — отправить данные в Azure IoT Hub

AT#AIHSND=<data_len>

Команда отправляет данные в «Центр «Интернета вещей», соединение с которым было установлено ранее.

<data_len> — длина сообщения в байтах, допустимый диапазон 1–1500. Модуль отвечает приглашением > и ожидает приема данных. По достижении заданной длины сообщение автоматически отправляется.

AT#AIHSND=?

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

#AIHVER — версия приложения AppZone

AT#AIHVER

По команде возвращается версия приложения, записанная в модуль.

AT#AIHVER?

Идентично AT#AIHVER.

В качестве примера отправим тестовое сообщение из UE866-EU в Azure IoT Hub. Ниже приведен лог AT-команд модуля, необходимый для инициализации соединения с Центром и передачи сообщения от устройства:

AT+CGDCONT=1,”IP”,”INTERNET” // параметры PDP-контента, необходимые для активации пакетного соединения

OK

AT#SGACT=1,1 // активация пакетного соединения

#SGACT: 100.82.125.252 // IP-адрес, выданный оператором

AT#AIHCFG=”RuCenter”,”azure-devices.net”,”my_first_device”,”sZKk/1pio2CU2qL4fegdT2WoOnpmnVwERi7y13hYZWo=”,2 // конфигурирование устройства

OK

at#aihconn=1 // установка соединения с Центром Интернета вещей

OK

#AIH: CONNECTED // соединение установлено

at#aihsnd=6 // отправка сообщения длиной 6 байт

> test77 // тело сообщения

OK

Полученное в IoT Hub сообщение отображается во вкладке Data приложения Device Explorer (рис. 5). Как видим, сообщение доставлено в том же виде, что было отправлено из устройства.

Сообщения, принятые из устройства

Рис. 5. Сообщения, принятые из устройства

Сообщения из Azure IoT Hub, отправленные на устройство, отображаются в виде URC (Unsolicited Result Code):

#AIH:<messageId>,<correlationId>,<userDefinedContentType>,<userDefinedContentEncoding > [,PROPS,<key1>,<value1> [,<key2>,<value2>] [,DATA,<user_message>]
Передача сообщения в устройство

Рис. 6. Передача сообщения в устройство

Все поля URC идентичны свойствам сообщения, которые можно увидеть в приложении Device Explorer (рис. 6). В нашем примере на устройство приходит строка:

#AIH: 67b73dec-22f4-422b-800d-36a4ddf5d3d3,<null>,<null>,<null>,DATA,Hello, World!

Как и в случае передачи из устройства в IoT Hub, сообщение передано без искажений.

Таким образом, Telit реализовал в своих модулях простой и удобный интерфейс взаимодействия с Azure IoT Hub. Реализация рассчитана на модули сотовой связи с поддержкой AppZone, но легко может быть портирована и на другие модули передачи данных -Bluetooth, Wi-Fi, LoRa и другие, поскольку поддержка MQTT и SSL имеется во всех модулях Telit. Это еще раз подтверждает лидерство Telit как производителя модулей для Интернета вещей.

Литература
  1. https://portal.azure.com
  2. http://www.telit.com/wp-content/uploads/2017/09/Telit_UE866_Datasheet_AG.pdf
  3. Рудневский А. Новая концепция унификации Telit: гнездовая система в семействе xE866 // Беспроводные технологии. 2016. № 2.
  4. http://atoma.spb.ru/catalog/4118/otladochnaja-plata-telit-ue866-eu-se868v3-bundle
  5. http://i-o-t.ru/protokol-mqtt/
  6. Рудневский А. AppZone от Telit: практическое создание приложений // Беспроводные технологии. 2016. № 1.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

سكس عربي مصري مجاني sexauskunft.net سكسحر unblurred hentai nicehentai.com omega hentai chinki sex renklipornoo.net village naked dance hot x porn video hindipornsite.com heather jayne nude huge dick comics streamhentai.net hentai msngs
قصص وصور سكس wiwiuku.com مشاهدة أفلام سكس ラブホテル完全盗撮 浮気ドキュメント 禁断の関係 javshare.info とらぶるだいありー brawling go 132 hentaika.org all the way through futa www.indiansexmms pornhindivideo.com ftv hot live 福岡 風俗 図鑑 javwhores.mobi 日本で一番黒いgカップグラドルの絶倫性欲でハメ撮りsexしまくった日常を記録
x videos american fucktube24.com sex odia video 完全拘束イラマチオ 3 あべみかこ javpussy.net 300maan-316 xnxx miya khalifa indianpornsearch.com www.tamil sex videos どエロイ女のムチムチ肉感!ふにゃふにゃ星人 羽生ありさ freejavstreaming.net 生意気j○妹プリ尻挑発 telugu outdoor sex hindipornmovies.org mehreen kaur pirzada