[Беспроводные технологии, Интернет вещей, Разработка для интернета вещей, Сотовая связь, Стандарты связи] NB-IoT. Non-IP Data Delivery или просто NIDD. Тестирование с коммерческим сервисом МТС
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Добрый день и хорошего настроения!
Это небольшой тьюториал по настройке NIDD (Non-IP Data Delivery) в облачном сервисе МТС с говорящим названием «М2М-менеджер». Суть NIDD — в энергоэффективном обмене небольшими пакетами данных по сети NB-IoT между устройствами и сервером. Если раньше GSM-устройства общались с сервером, обмениваясь пакетами TCP/UDP, то для устройств NB-IoT стал доступен дополнительный способ связи — NIDD. При этом сервер взаимодействует с сетью оператора, используя унифицированные POST/GET-запросы. Пишу для себя (чтобы не забыть) и всех, кому это окажется полезным.
Про NB-IoT можно почитать:
NB-IoT, Narrow Band Internet of Things. Общая информация, особенности технологии
NB-IoT, Narrow Band Internet of Things. Режимы энергосбережения и команды управления
Теория NIDD от МТС:
https://habr.com/ru/company/ru_mts/blog/473982/
Документация на модуль NB-IoT, который использовался в процессе тестирования:
Neoway N21
Сервис МТС для управления устройствами М2М:
https://m2m-manager.mts.ru
Чтобы пощупать NIDD, нам потребуется:
- SIM-карта NB-IoT МТС
- устройство NB-IoT с поддержкой NIDD
- пароль и логин от М2М-менеджера МТС
В качестве устройства я использовал плату N21 DEMO, а пароль и логин для доступа к М2М-менеджеру мне любезно предоставили сотрудники МТС. За это, а также за разнообразную помощь и многочисленные консультации большое им спасибо.
Итак, заходим в М2М-менеджер и проверяем, что:
- в пункте меню «SIM-менеджер» есть «Центр управления NB-IoT»;
- в «Центре управления NB-IoT» появилась наша карточка NB-IoT, а также разделы:
NIDD APN
NIDD Аккаунты
NIDD Безопасность
- в самом низу есть пункт меню «API M2M» с «Руководством разработчика NIDD»
Выглядеть всё это хозяйство должно примерно так:
Если чего-то в М2М-менеджере не хватает — смело отправляйте запрос вашему менеджеру в МТС с подробным описанием ваших пожеланий.
Если нужные пункты Центра управления NB-IoT на месте, можно начинать их заполнять. Причем пункт «NIDD Аккаунты» — в последнюю очередь: для него понадобятся данные из соседних разделов.
- NIDD APN: придумываем и заполняем имя нашего APN и «ID приложения».
- NIDD Безопасность: здесь указываем IP-адрес нашего сервера приложений, который будет общаться с устройствами NB-IoT через сервис (сервер) МТС.
- NIDD Аккаунты: просто заполняем все поля и нажимаем «Сохранить».
Как только все пункты заполнены, можно начинать разбираться с запросами, которые должен формировать наш сервер. Идём в «API M2M» и читаем «Руководство разработчика NIDD». Чтобы устройство могло зарегистрироваться в сети NB-IoT, нужно создать SCS AS конфигурацию:
В руководстве есть описание отдельных параметров запроса, я только приведу пару небольших комментариев:
- ссылка для передачи запросов: m2m-manager.mts.ru/scef/v1/3gpp-nidd/v1/{scsAsId}/configurations, где scsAsId — это «ID приложения» из пункта меню «NIDD APN»;
- базовый метод авторизации с логином и паролем — используйте логин и пароль, придуманные вами при заполнении пункта меню «NIDD Аккаунты»;
- notificationDestination — адрес вашего сервера. С него вы будете посылать non-ip-сообщения на устройства, и на него сервер МТС будет посылать уведомления об отправке и получении сообщений non-ip.
Когда конфигурация SCS AS создана, а устройство успешно зарегистрировалось в режиме NIDD в NB-IoT-сети оператора, можно попробовать обменяться первыми сообщениями non-ip между сервером и устройством.
Для передачи сообщения от сервера на устройство изучаем раздел «2.2 Отправка сообщения» руководства:
{configurationId} в ссылке запроса — значение типа «hex-абракадабра», полученное на этапе создания конфигурации. Имеет вид: b00e2485ed27c0011f0a0200.
data — содержимое сообщения в кодировке Base64.
Настройка устройства NB-IoT для работы в NIDD
Конечно, для обмена данными с сервером наше устройство должно не только уметь работать в сети NB-IoT, но и поддерживать режим NIDD (non-ip). В случае отладочной платы N21 DEMO или иного устройства на базе NB-IoT-модуля N21 последовательность действий для передачи non-ip-сообщений описана ниже.
Активируем конфигурацию с APN, который мы придумали при заполнении пункта «NIDD APN» М2М-менеджера (здесь — EFOnidd):
AT+CFGDFTPDN=5,«EFOnidd»
и просим устройство перерегистрироваться в сети:
AT+CFUN=0
AT+CFUN=1
после этого подаем команду
AT+CGACT=1,1
и передаем сообщение «test»:
AT+NIPDATA=1, «test»
При получении non-ip-сообщения на UART модуля N21 выдается незапрашиваемое сообщение вида:
+NIPDATA:1,10,3132333435 // принято non-ip-сообщение '12345'
где
1 — CID, pdp context
10 — количество байт данных после запятой
На сервер сообщение поступает в кодировке Base64 (в POST-запросе).
P. S. Для имитации передачи данных с сервера удобно использовать программу Postman. Для приема сообщений можно использовать любой скрипт, имитирующий HTTP-сервер.
Надеюсь, кому-нибудь пригодится.
Спасибо.
===========
Источник:
habr.com
===========
Похожие новости:
- [Законодательство в IT] Компании сочли законопроект по борьбе с телефонным спамом угрозой тайне связи
- [Софт, Интернет вещей] Будни OEMщика (Часть 3)
- [Беспроводные технологии, Программирование микроконтроллеров] Как подключить АЦП HX711 к NRF52832
- [C, JavaScript, Интернет вещей, Программирование микроконтроллеров, Разработка для интернета вещей] Термостат на ThingJS (beta)
- [Беспроводные технологии, Космонавтика, Разработка систем связи, Транспорт] Военные США разрешили SpaceX повторно запустить Falcon 9 с GPS-спутником
- [Разработка систем связи, Сетевое оборудование, Сотовая связь, Финансы в IT] Российские операторы предупредили, что затраты на 5G не окупятся до 2040 года
- [Open source, Интернет вещей, Облачные сервисы, Разработка для интернета вещей] Знакомство с Node-RED и потоковое программирование в Yandex IoT Core
- [Интернет вещей, Программирование микроконтроллеров, Разработка для интернета вещей, Разработка систем связи] MQTTv5.0: Обзор новых функций. Часть 2
- [Браузеры, Интернет вещей] KioskBrowser — бесплатный браузер для киосков с большой кириллической клавиатурой
- [Интернет вещей, Софт] Будни OEMщика (Часть 2)
Теги для поиска: #_besprovodnye_tehnologii (Беспроводные технологии), #_internet_veschej (Интернет вещей), #_razrabotka_dlja_interneta_veschej (Разработка для интернета вещей), #_sotovaja_svjaz (Сотовая связь), #_standarty_svjazi (Стандарты связи), #_nbiot, #_nonip_data_delivery, #_nidd, #_mts (МТС), #_neoway_n21, #_besprovodnye_tehnologii (
Беспроводные технологии
), #_internet_veschej (
Интернет вещей
), #_razrabotka_dlja_interneta_veschej (
Разработка для интернета вещей
), #_sotovaja_svjaz (
Сотовая связь
), #_standarty_svjazi (
Стандарты связи
)
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 07:23
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Добрый день и хорошего настроения! Это небольшой тьюториал по настройке NIDD (Non-IP Data Delivery) в облачном сервисе МТС с говорящим названием «М2М-менеджер». Суть NIDD — в энергоэффективном обмене небольшими пакетами данных по сети NB-IoT между устройствами и сервером. Если раньше GSM-устройства общались с сервером, обмениваясь пакетами TCP/UDP, то для устройств NB-IoT стал доступен дополнительный способ связи — NIDD. При этом сервер взаимодействует с сетью оператора, используя унифицированные POST/GET-запросы. Пишу для себя (чтобы не забыть) и всех, кому это окажется полезным. Про NB-IoT можно почитать: NB-IoT, Narrow Band Internet of Things. Общая информация, особенности технологии NB-IoT, Narrow Band Internet of Things. Режимы энергосбережения и команды управления Теория NIDD от МТС: https://habr.com/ru/company/ru_mts/blog/473982/ Документация на модуль NB-IoT, который использовался в процессе тестирования: Neoway N21 Сервис МТС для управления устройствами М2М: https://m2m-manager.mts.ru Чтобы пощупать NIDD, нам потребуется:
В качестве устройства я использовал плату N21 DEMO, а пароль и логин для доступа к М2М-менеджеру мне любезно предоставили сотрудники МТС. За это, а также за разнообразную помощь и многочисленные консультации большое им спасибо. Итак, заходим в М2М-менеджер и проверяем, что:
Выглядеть всё это хозяйство должно примерно так: Если чего-то в М2М-менеджере не хватает — смело отправляйте запрос вашему менеджеру в МТС с подробным описанием ваших пожеланий. Если нужные пункты Центра управления NB-IoT на месте, можно начинать их заполнять. Причем пункт «NIDD Аккаунты» — в последнюю очередь: для него понадобятся данные из соседних разделов.
Как только все пункты заполнены, можно начинать разбираться с запросами, которые должен формировать наш сервер. Идём в «API M2M» и читаем «Руководство разработчика NIDD». Чтобы устройство могло зарегистрироваться в сети NB-IoT, нужно создать SCS AS конфигурацию: В руководстве есть описание отдельных параметров запроса, я только приведу пару небольших комментариев:
Когда конфигурация SCS AS создана, а устройство успешно зарегистрировалось в режиме NIDD в NB-IoT-сети оператора, можно попробовать обменяться первыми сообщениями non-ip между сервером и устройством. Для передачи сообщения от сервера на устройство изучаем раздел «2.2 Отправка сообщения» руководства: {configurationId} в ссылке запроса — значение типа «hex-абракадабра», полученное на этапе создания конфигурации. Имеет вид: b00e2485ed27c0011f0a0200. data — содержимое сообщения в кодировке Base64. Настройка устройства NB-IoT для работы в NIDD Конечно, для обмена данными с сервером наше устройство должно не только уметь работать в сети NB-IoT, но и поддерживать режим NIDD (non-ip). В случае отладочной платы N21 DEMO или иного устройства на базе NB-IoT-модуля N21 последовательность действий для передачи non-ip-сообщений описана ниже. Активируем конфигурацию с APN, который мы придумали при заполнении пункта «NIDD APN» М2М-менеджера (здесь — EFOnidd): AT+CFGDFTPDN=5,«EFOnidd» и просим устройство перерегистрироваться в сети: AT+CFUN=0 AT+CFUN=1 после этого подаем команду AT+CGACT=1,1 и передаем сообщение «test»: AT+NIPDATA=1, «test» При получении non-ip-сообщения на UART модуля N21 выдается незапрашиваемое сообщение вида: +NIPDATA:1,10,3132333435 // принято non-ip-сообщение '12345' где 1 — CID, pdp context 10 — количество байт данных после запятой На сервер сообщение поступает в кодировке Base64 (в POST-запросе). P. S. Для имитации передачи данных с сервера удобно использовать программу Postman. Для приема сообщений можно использовать любой скрипт, имитирующий HTTP-сервер. Надеюсь, кому-нибудь пригодится. Спасибо. =========== Источник: habr.com =========== Похожие новости:
Беспроводные технологии ), #_internet_veschej ( Интернет вещей ), #_razrabotka_dlja_interneta_veschej ( Разработка для интернета вещей ), #_sotovaja_svjaz ( Сотовая связь ), #_standarty_svjazi ( Стандарты связи ) |
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 07:23
Часовой пояс: UTC + 5