NB-IoT. Non-IP Data Delivery ΠΈΠ»ΠΈ просто NIDD. ВСстированиС с коммСрчСским сСрвисом МВБ

Π”ΠΎΠ±Ρ€Ρ‹ΠΉ дСнь ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ настроСния!

Π­Ρ‚ΠΎ нСбольшой Ρ‚ΡŒΡŽΡ‚ΠΎΡ€ΠΈΠ°Π» ΠΏΠΎ настройкС 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 ΠΎΡ‚ МВБ

ДокумСнтация Π½Π° ΠΌΠΎΠ΄ΡƒΠ»ΡŒ NB-IoT, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ использовался Π² процСссС тСстирования:
Neoway N21.

БСрвис МВБ для управлСния устройствами М2М.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡ‰ΡƒΠΏΠ°Ρ‚ΡŒ 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Β»

Π’Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ всё это хозяйство Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

NB-IoT. Non-IP Data Delivery ΠΈΠ»ΠΈ просто NIDD. ВСстированиС с коммСрчСским сСрвисом МВБ

Если Ρ‡Π΅Π³ΠΎ-Ρ‚ΠΎ Π² М2М-ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π΅ Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ β€” смСло отправляйтС запрос Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Ρƒ Π² МВБ с ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΌ описаниСм Π²Π°ΡˆΠΈΡ… ΠΏΠΎΠΆΠ΅Π»Π°Π½ΠΈΠΉ.

Если Π½ΡƒΠΆΠ½Ρ‹Π΅ ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ Π¦Π΅Π½Ρ‚Ρ€Π° управлСния NB-IoT Π½Π° мСстС, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ ΠΈΡ… Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ ΠΏΡƒΠ½ΠΊΡ‚ Β«NIDD Аккаунты» β€” Π² послСднюю ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ: для Π½Π΅Π³ΠΎ понадобятся Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· сосСдних Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ².

  1. NIDD APN: ΠΏΡ€ΠΈΠ΄ΡƒΠΌΡ‹Π²Π°Π΅ΠΌ ΠΈ заполняСм имя нашСго APN ΠΈ Β«ID прилоТСния».
  2. NIDD Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ: здСсь ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ IP-адрСс нашСго сСрвСра ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ с устройствами NB-IoT Ρ‡Π΅Ρ€Π΅Π· сСрвис (сСрвСр) МВБ.
  3. NIDD Аккаунты: просто заполняСм всС поля ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Β«Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒΒ».

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ всС ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ‹, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с запросами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ наш сСрвСр. Π˜Π΄Ρ‘ΠΌ Π² Β«API M2MΒ» ΠΈ Ρ‡ΠΈΡ‚Π°Π΅ΠΌ «Руководство Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° NIDDΒ». Π§Ρ‚ΠΎΠ±Ρ‹ устройство ΠΌΠΎΠ³Π»ΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² сСти NB-IoT, Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ SCS AS ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ:

NB-IoT. Non-IP Data Delivery ΠΈΠ»ΠΈ просто NIDD. ВСстированиС с коммСрчСским сСрвисом МВБ

Π’ руководствС Π΅ΡΡ‚ΡŒ описаниС ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² запроса, я Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ ΠΏΠ°Ρ€Ρƒ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π²:

  1. ссылка для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ запросов: m2m-manager.mts.ru/scef/v1/3gpp-nidd/v1/{scsAsId}/configurations, Π³Π΄Π΅ scsAsId β€” это Β«ID прилоТСния» ΠΈΠ· ΠΏΡƒΠ½ΠΊΡ‚Π° мСню Β«NIDD APNΒ»;
  2. Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ с Π»ΠΎΠ³ΠΈΠ½ΠΎΠΌ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΌ β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π½Π½Ρ‹Π΅ Π²Π°ΠΌΠΈ ΠΏΡ€ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню Β«NIDD Аккаунты»;
  3. notificationDestination β€” адрСс вашСго сСрвСра. Π‘ Π½Π΅Π³ΠΎ Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒ non-ip-сообщСния Π½Π° устройства, ΠΈ Π½Π° Π½Π΅Π³ΠΎ сСрвСр МВБ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒ увСдомлСния ΠΎΠ± ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ сообщСний non-ip.

Когда конфигурация SCS AS создана, Π° устройство ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π»ΠΎΡΡŒ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ NIDD Π² NB-IoT-сСти ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌΠΈ сообщСниями non-ip ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвСром ΠΈ устройством.

Для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ сообщСния ΠΎΡ‚ сСрвСра Π½Π° устройство ΠΈΠ·ΡƒΡ‡Π°Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π» Β«2.2 ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° сообщСния» руководства:

NB-IoT. Non-IP Data Delivery ΠΈΠ»ΠΈ просто NIDD. ВСстированиС с коммСрчСским сСрвисом МВБ

{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