Используйте портал Azure и Azure CLI для управления устройствами с помощью двойников устройств и двойников модулей. В этой статье рассматриваются двойники устройств для простоты, но все понятия и процессы работают аналогичным образом для двойников модулей.
В этой статье описываются задачи управления двойниками устройств, доступные в портале Azure или с помощью Azure CLI для их удаленного администрирования. Сведения о разработке приложений для обработки изменений двойников устройств см. в статье "Начало работы с двойниками устройств".
В Концентраторе Интернета вещей двойник устройства — это документ JSON, в котором хранятся сведения о состоянии. Каждое идентификатор устройства автоматически связывается с двойником устройства при его создании. Серверное приложение или пользователь может обновить два элемента двойника устройства:
-
Требуемые свойства: требуемые свойства являются половиной связанного набора сведений о состоянии. Серверное приложение или пользователь может обновить желаемые свойства двойника, чтобы сообщить о желаемом изменении состояния, а устройство может обновить сообщаемые свойства для передачи текущего состояния.
-
Теги. Теги двойников устройств можно использовать для упорядочивания устройств и управления ими в решениях Интернета вещей. Теги можно задать для любой понятной категории, например типа устройства, расположения или функции.
Для получения дополнительной информации см. "Понимание и использование двойников устройств в IoT Hub" или "Понимание и использование двойников модулей в IoT Hub".
Перед началом работы подготовьте следующие предварительные требования.
Центр Интернета вещей в подписке Azure. Если у вас еще нет центра, выполните действия, описанные в разделе "Создание центра Интернета вещей".
Устройство, зарегистрированное в центре Интернета вещей. Если у вас нет устройства в Центре Интернета вещей, выполните действия, описанные в разделе "Регистрация устройства".
Azure CLI версии 2.36 или более поздней. Чтобы узнать версию, выполните команду az --version
. Сведения об установке или обновлении Azure CLI см. в статье "Установка Azure CLI".
Вы также можете выполнить команды в этой статье с помощью Azure Cloud Shell, интерактивной оболочки CLI, которая выполняется в браузере или в приложении, например Терминал Windows. При использовании Cloud Shell вам не нужно ничего устанавливать.
Центр Интернета вещей в подписке Azure. Если у вас еще нет центра, выполните действия, описанные в разделе "Создание центра Интернета вещей".
Устройство, зарегистрированное в центре Интернета вещей. Если у вас нет устройства в Центре Интернета вещей, выполните действия, описанные в разделе "Регистрация устройства".
Теги двойников устройств можно использовать как мощное средство для управления устройствами. При наличии нескольких типов устройств в решениях Интернета вещей можно использовать теги для задания типов, расположений и т. д. Например:
{
"deviceId": "mydevice1",
"status": "enabled",
"connectionState": "Connected",
"cloudToDeviceMessageCount": 0,
"authenticationType": "sas",
"tags": {
"deploymentLocation": {
"building": "43",
"floor": "1"
},
"deviceType":"HDCamera"
},
"properties": {
...
}
}
Просмотр и обновление двойников устройств
После создания удостоверения устройства двойник устройства неявно создается в Центре Интернета вещей. Вы можете использовать портал Azure или Azure CLI для получения двойника указанного устройства. Вы также можете добавлять, изменять или удалять теги и нужные свойства.
Найдите нужный Центр Интернета вещей на портале Azure.
В Центре Интернета вещей выберите "Устройства" в разделе управления устройствами в меню навигации.
На странице "Устройства" отображается список всех устройств, зарегистрированных в Центре Интернета вещей. Если у любого из устройств уже есть теги в двойниках устройств, эти теги отображаются в столбце "Теги ".
Выберите имя устройства, которым требуется управлять.
Совет
При обновлении тегов можно выбрать несколько устройств, а затем перейти к назначению тегов, чтобы управлять ими как группой.
На странице сведений об устройстве отображаются все текущие теги для выбранного устройства. Нажмите кнопку "Изменить " рядом с параметром "Теги ", чтобы добавить, обновить или удалить теги.
Совет
Чтобы добавить или обновить вложенные теги, перейдите на вкладку "Дополнительно " и укажите JSON.
Выберите Двойник устройства, чтобы просмотреть и обновить JSON двойника устройства.
Вы можете ввести непосредственно в текстовое поле для обновления тегов или требуемых свойств. Чтобы удалить тег или требуемое свойство, задайте для элемента null
значение .
Выберите Сохранить, чтобы сохранить изменения.
Вернитесь на страницу сведений об устройстве, выберите "Обновить ", чтобы обновить страницу, чтобы отразить изменения.
Если у устройства имеются идентификаторы модулей, привязанные к нему, эти модули также отображаются на странице сведений об устройстве. Выберите имя модуля, а затем выберите двойник удостоверения модуля для просмотра и обновления JSON двойника модуля.
Используйте наборы команд az iot hub device-twin или az iot hub module-twin для просмотра и обновления твинов.
Команда az iot hub device-twin show возвращает JSON двойника устройства. Например:
az iot hub device-twin show --device-id <DEVICE_ID> --hub-name <IOTHUB_NAME>
Команда az iot hub device-twin update применяет изменения к меткам или требуемым свойствам в двойнике устройства. Например:
az iot hub device-twin update --device-id <DEVICE_ID> --hub-name <IOTHUB_NAME> --tags <INLINE_JSON_OR_PATH_TO_JSON_FILE>
Команда az iot hub device-twin replace заменяет весь двойник устройства. Например:
az iot hub device-twin replace --device-id <DEVICE_ID> --hub-name <IOTHUB_NAME> --json <INLINE_JSON_OR_PATH_TO_JSON_FILE>
Совет
Если вы используете PowerShell, добавьте обратную косую черту \
, чтобы избежать двойных кавычек. Например: --tags '{\"country\":\"US\"}'
.
Запрос данных двойников устройств
Центр Интернета вещей предоставляет двойники устройств для Центра Интернета вещей как коллекцию документов, называемую устройствами. Можно выполнять запросы к устройствам на основе их твин-данных.
В этом разделе описывается, как выполнять запросы двойников в портал Azure и Azure CLI. Сведения о создании запросов двойника см. в статье "Запросы для Центр Интернета вещей двойников устройств и модулей".
Найдите нужный Центр Интернета вещей на портале Azure.
В Центре Интернета вещей выберите "Устройства" в разделе управления устройствами в меню навигации.
Вы можете использовать фильтр или запрос для поиска устройств на основе сведений о их двойнике устройства.
Используйте команду az iot hub query для возврата сведений об устройстве на основе запросов двойника устройства или двойника модуля.
az iot hub query --hub-name <IOTHUB_NAME> --query-command "SELECT * FROM devices WHERE <QUERY_TEXT>"
Та же query
команда может запрашивать двойники модулей, изменив команду запроса.
az iot hub query --hub-name <IOTHUB_NAME> --query-command "SELECT * FROM devices.modules WHERE <QUERY_TEXT>"
Обновление двойников устройств с помощью заданий
Возможность заданий может выполнять обновления двойника устройства для набора устройств в запланированное время. Дополнительные сведения см. в разделе "Планирование заданий на нескольких устройствах".
Задания не поддерживаются на портале Azure. Вместо этого используйте Azure CLI.
Используйте набор заданий az iot hub для создания, просмотра или отмены заданий.
Например, следующая команда обновляет требуемые свойства двойника в наборе устройств в определенное время:
az iot hub job create --job-id <JOB_NAME> --job-type scheduleUpdateTwin -n <IOTHUB_NAME> --twin-patch <INLINE_JSON_OR_PATH_TO_JSON_FILE> --start-time "<ISO_8601_DATETIME>" --query-condition "<QUERY_TEXT>"
Совет
Если вы используете PowerShell, добавьте обратную косую черту \
, чтобы избежать двойных кавычки. Например: --tags '{\"country\":\"US\"}'
.