Обновление прошивки и управление в OneM2M
OneM2M делит управление устройствами на два разных метода.
1- Управление устройством на уровне сервиса
2- Управление устройством с использованием технологий внешнего управления
Я хочу понять, как сделать обновление прошивки с помощью каждого из методов. Однако я нахожу только самые простые примеры, такие как получение объекта ресурса памяти в качестве примера для управления устройством. Но каков вариант использования для
Я понимаю, что узел является фактическим аппаратным устройством, а объекты управления - это ресурсы, которые представляют функции и объекты управления. Но я не понимаю взаимосвязи между
Предположим, у меня есть устройство (AE & Node). Он содержит информацию о прошивке, которую я храню как
Как мне запустить
Что OneM2M говорит, что ресурс
Как вы видите, я очень смущен. Не могли бы вы кратко объяснить и привести наглядный пример того, как выполнять управление устройствами (например, обновление прошивки) на OneM2M?
1 ответ
Я согласен, часть абстракции управления oneM2M может быть трудной для понимания. Я предполагаю, что наиболее важные моменты можно увидеть на рисунке TS-0001 "6.2.4.1.1-1: Архитектура управления устройствами" и сопровождающий текст в этой главе:
- Управляемое устройство - это узел (ASN, ADN или MN).
- Функциональность управления устройством реализована в CSE.
- "Деловая" часть управления устройствами (например, какие устройства должны получать обновление) представляет собой AE, который запускает, например, обновление. Этот AE также может выполнять роль системы управления устройствами и, следовательно, может также на этапе подключения устройства создавать все необходимые ресурсы специализаций
, и т. Д. Для этого устройства. - Функциональность управления устройством может быть реализована с помощью одного средства М2М или с использованием базового протокола управления, такого как TR-0069, OMA DM и т. Д. Привязки и сопоставления с этими протоколами определены в отдельных спецификациях (например, TS-0005 или TS-0006).
- Также возможно управлять устройствами не-oneM2M, но для этого необходим прокси-сервер управления на соединительном узле, который действует как прокси-сервер управления для выполнения (локального) управления, а также для сопоставления этих устройств с oneM2M
,
Для второй части (как AE выполняет команду управления): как указывалось ранее, ресурс
Для запуска команды управления (например, запуска обновления прошивки) применяется следующее:
- AE ОБНОВЛЯЕТ соответствующий
, но только атрибут execEnable. - CSE затем внутренне СОЗДАЕТ новый ресурс
для этого и возвращает его вместо (!) Обновленного . В действительности, атрибут execEnable не изменяется в ресурсе, он только инициирует создание . - Возвращенный
содержит всю необходимую информацию о ресурсе управления и действует как "прокси" для фактического управления АЕ.
Почему это так сложно? Удаленное управление не является немедленным процессом. Устройство может быть занято или даже выключено, операция может занять некоторое время и т. Д. Чтобы переместить (возможно, много времени и ресурсов) ответственность и работу из CSE в AE, ресурс
Я надеюсь, что это отвечает на ваши вопросы.