Что такое разработка устройств для Интернета вещей Azure?

Интернет вещей Azure — это коллекция управляемых и платформенных служб, которые соединяют, отслеживают и контролируют устройства Интернета вещей. Интернет вещей Azure предоставляет разработчикам широкий набор вариантов. Вы можете использовать платформы устройств, поддержку облачных служб, пакеты SDK, поддержку MQTT и средства для создания облачных приложений с поддержкой устройств.

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

Пути разработки устройств

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

  • Общая разработка устройств. Соответствует современным методикам разработки, предназначен для языков более высокого порядка и выполняется в операционной системе общего назначения, такой как Windows или Linux.

    Примечание

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

  • Разработка встраиваемых устройств — это разработка устройств с ограниченными ресурсами. Часто вы используете устройство с ограниченными ресурсами для сокращения затрат на единицу, энергопотребления или размера устройства. Такие устройства напрямую взаимодействуют с аппаратной платформой, на которой они работают.

Общая разработка устройств

Некоторые разработчики адаптируют существующие устройства общего назначения для подключения к облаку и интеграции в свои решения Интернета вещей. Эти устройства могут поддерживать языки более высокого уровня, например C# или Python, и часто работают под управлением надежной операционной системы общего назначения, такой как Windows или Linux. Целевыми устройствами обычно являются компьютеры, контейнеры, Raspberry Pi и мобильные устройства.

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

Важно!

Сведения о пакетах SDK, используемых для разработки общих устройств, см. в разделе Пакеты SDK для устройств.

Разработка встраиваемых устройств

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

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

На данный момент все пакеты SDK для встраиваемых устройств предназначены для языка C. Пакеты SDK для встраиваемых устройств работают без операционной системы или поддерживают ОСРВ Azure. Они разработаны с учетом встроенных целевых объектов. Рекомендации по проектированию включают в себя необходимость минимального объема занимаемой памяти и невмеяние выделения проекта.

Важно!

Сведения о пакетах SDK для разработки встроенных устройств см. в разделе Пакеты SDK для внедренных устройств.

Выбор оборудования

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

Дополнительные сведения о различиях между типами устройств, описанных в этой статье, см. в разделе Сведения о типах устройств Интернета вещей.

Выбор пакета SDK

Как разработчик устройств Интернета вещей Azure, у вас есть разнообразный набор пакетов SDK, протоколов и средств для создания облачных приложений с поддержкой устройств.

Существует два main варианта подключения устройств и взаимодействия с Центр Интернета вещей:

  • Используйте пакеты SDK для Интернета вещей Azure. В большинстве случаев рекомендуется использовать пакеты SDK для Интернета вещей Azure, а не MQTT напрямую. Пакеты SDK упрощают разработку и упрощают подключение устройств и управление ими. Центр Интернета вещей поддерживает протокол MQTT версии 3.1.1, а пакеты SDK для Интернета вещей упрощают использование MQTT для взаимодействия с Центр Интернета вещей.
  • Используйте протокол MQTT напрямую. Есть некоторые преимущества создания Центр Интернета вещей решения для использования MQTT напрямую. Например, решение, использующее MQTT напрямую без пакетов SDK, можно создать на основе открытого стандарта MQTT. Подход, основанный на стандартах, делает решение более портативным и дает вам больше контроля над подключением устройств и взаимодействием. Однако Центр Интернета вещей не является полнофункциональный брокер MQTT и не поддерживает все поведения, указанные в стандарте MQTT версии 3.1.1. Частичная поддержка MQTT версии 3.1.1 увеличивает затраты и сложность разработки. Разработчикам устройств следует взвесить компромиссы использования пакетов SDK для устройств Интернета вещей и непосредственного использования MQTT. Дополнительные сведения см. в статье Взаимодействие с Центром Интернета вещей с помощью протокола MQTT.

Существует три набора пакетов SDK для Интернета вещей для разработки устройств:

  • Пакеты SDK для устройств (для использования языков более высокого порядка для подключения существующих устройств общего назначения к приложениям Интернета вещей)
  • Пакеты SDK для внедренных устройств (для подключения устройств с ограниченными ресурсами к приложениям Интернета вещей)
  • пакеты SDK для служб (для создания решений Интернета вещей Azure, соединяющих устройства с службами).

Дополнительные сведения о выборе пакетов SDK для устройств или служб Интернета вещей Azure см. в статье Общие сведения о пакетах SDK для устройств Azure IoT.

Выбор службы

Ключевым шагом в процессе разработки является выбор службы для подключения устройств. Существует два основных варианта службы Интернета вещей Azure для подключения устройств и управления ими: Центр Интернета вещей и IoT Central.

  • Центр Интернета вещей Azure. Используйте Центр Интернета вещей для размещения приложений Интернета вещей и подключения устройств. Центр Интернета вещей — это приложение PaaS (платформа как услуга), которое выступает в качестве центрального центра сообщений для двустороннего обмена данными между приложениями Интернета вещей и подключенными устройствами. Центр Интернета вещей можно масштабировать для поддержки миллионов устройств. По сравнению с другими службами Интернета вещей Azure, Центр Интернета вещей обеспечивает наибольший контроль и настройку над проектом приложения. Он также предлагает большинство средств разработчика для работы со службой за счет некоторого увеличения сложности разработки и управления.
  • Azure IoT Central. IoT Central предназначен для упрощения работы с решениями Интернета вещей. Его можно использовать в качестве подтверждения концепции для оценки решений Интернета вещей. IoT Central — это приложение SaaS( программное обеспечение как услуга), которое предоставляет пользовательский веб-интерфейс для упрощения задач создания приложений, а также подключения устройств и управления ими. IoT Central использует Центр Интернета вещей для создания приложений и управления ими, но обеспечивает прозрачность большинства сведений для пользователя.

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

После выбора оборудования и пакета SDK для устройства у вас есть несколько вариантов средств разработчика. Эти средства можно использовать для подключения устройства к Центр Интернета вещей и управления ими. В таблице ниже собраны стандартные варианты инструментов.

Инструмент Документация Описание
Портал Azure Создание Центра Интернета вещей с помощью портал Azure Веб-портал в браузере для Центра Интернета вещей и устройств, который также работает с другими ресурсами Azure, включая IoT Central.
Azure IoT Explorer Azure IoT Explorer Не удается создать Центры Интернета вещей. Подключается к существующему Центру Интернета вещей для управления устройствами. Часто используется вместе с Azure CLI и порталом Azure.
Azure CLI Создание Центра Интернета вещей с помощью CLI Интерфейс командной строки для создания приложений Интернета вещей и управления ими.
Azure PowerShell Создание Центра Интернета вещей с помощью PowerShell Интерфейс PowerShell для создания приложений Интернета вещей и управления ими.
Azure IoT Tools для VS Code Создание Центра Интернета вещей с помощью Azure IoT Tools для VS Code Расширение VS Code для приложений Центра Интернета вещей.

Примечание

Помимо перечисленных выше средств, вы можете программно создавать приложения Интернета вещей и управлять ими с помощью REST API, пакетов SDK Azure или шаблонов Azure Resource Manager. Дополнительные сведения см. в документации по службе Центр Интернета вещей.

Дальнейшие действия

Дополнительные сведения о пакетах SDK для устройств, которые можно использовать для подключения устройств к Интернету вещей Azure, см. в следующей статье.

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