NB-IoT. Entrega de datos non IP ou só NIDD. Proba co servizo comercial MTS

Boas tardes e bo humor!

Este é un pequeno tutorial sobre a configuración de NIDD (Non-IP Data Delivery) no servizo na nube MTS co nome autoexplicativo "M2M Manager". A esencia de NIDD é o intercambio eficiente enerxéticamente de pequenos paquetes de datos a través da rede NB-IoT entre os dispositivos e o servidor. Se os dispositivos GSM anteriores se comunicaban co servidor intercambiando paquetes TCP / UDP, estaba dispoñible un método de comunicación adicional para os dispositivos NB-IoT: NIDD. Neste caso, o servidor interactúa coa rede do operador mediante solicitudes POST/GET unificadas. Escribo para min (para non esquecer) e para todos os que lle resulten útil.

Podes ler sobre NB-IoT:

NB-IoT, Internet das cousas de banda estreita. Información xeral, características tecnolóxicas
NB-IoT, Internet das cousas de banda estreita. Modos de aforro de enerxía e comandos de control

Teoría NIDD de MTS

Documentación para o módulo NB-IoT que se utilizou no proceso de proba:
Neoway N21.

Servizo MTS para xestionar dispositivos M2M.

Para sentirnos NIDD, necesitamos:

  • Tarxeta SIM NB-IoT MTS
  • Dispositivo NB-IoT habilitado para NIDD
  • contrasinal e inicio de sesión desde M2M-manager MTS

Como dispositivo, usei unha placa DEMO N21, e o contrasinal e o inicio de sesión para acceder ao xestor de M2M foron amablemente facilitados polos empregados de MTS. Por iso, así como polas diversas axudas e numerosas consultas, moitas grazas a eles.

Entón, vai ao xestor de M2M e comproba que:

  • no elemento de menú "Xestor de SIM" hai "Centro de control NB-IoT";
  • a nosa tarxeta NB-IoT apareceu no Centro de control NB-IoT, así como nas seccións:
    NIDDAPN
    Contas NIDD
    Seguridade NIDD
  • na parte inferior hai un elemento de menú "API M2M" coa "Guía para desenvolvedores NIDD"

Toda a economía debería verse así:

NB-IoT. Entrega de datos non IP ou só NIDD. Proba co servizo comercial MTS

Se falta algo no xestor M2M, non dubide en enviar unha solicitude ao seu xestor en MTS cunha descrición detallada dos seus desexos.

Se os elementos necesarios do Centro de control NB-IoT están no lugar, podes comezar a enchelos. Ademais, o elemento "Contas NIDD" é o último: necesitará datos das seccións veciñas.

  1. NIDDAPN: inventamos e enchemos o nome do noso APN e o "ID da aplicación".
  2. Seguridade NIDD: aquí especificamos o enderezo IP do noso servidor de aplicacións, que se comunicará cos dispositivos NB-IoT a través do servizo MTS (servidor).
  3. Contas NIDD: Só tes que cubrir todos os campos e premer en "Gardar".

En canto se cubran todos os puntos, podes comezar a xestionar as solicitudes que debe formar o noso servidor. Imos a "API M2M" e lemos a "Guía para desenvolvedores de NIDD". Para que o dispositivo poida rexistrarse na rede NB-IoT, cómpre crear unha configuración SCS AS:

NB-IoT. Entrega de datos non IP ou só NIDD. Proba co servizo comercial MTS

O manual ten unha descrición dos parámetros individuais da consulta, só vou facer un par de pequenos comentarios:

  1. ligazón para enviar solicitudes: m2m-manager.mts.ru/scef/v1/3gpp-nidd/v1/{scsAsId}/configurations, onde scsAsId é o "ID da aplicación" do elemento de menú "NIDD APN";
  2. método de autorización básico con inicio de sesión e contrasinal: use o inicio de sesión e o contrasinal que creou ao cubrir o elemento do menú "Contas NIDD";
  3. notificationDestination é o enderezo do teu servidor. Desde el enviarás mensaxes non ip aos dispositivos e o servidor MTS enviaralle notificacións sobre o envío e a recepción de mensaxes non ip.

Cando se crea a configuración SCS AS e o dispositivo se rexistrou correctamente no modo NIDD na rede NB-IoT do operador, pode tentar intercambiar as primeiras mensaxes non IP entre o servidor e o dispositivo.

Para enviar unha mensaxe desde o servidor ao dispositivo, estude o apartado "2.2 Envío dunha mensaxe" do manual:

NB-IoT. Entrega de datos non IP ou só NIDD. Proba co servizo comercial MTS

{configurationId} na ligazón de solicitude, un valor do tipo "hex-abracadabra" obtido na fase de creación da configuración. Parece que: b00e2485ed27c0011f0a0200.

datos — contido da mensaxe en codificación Base64.

Configurando un dispositivo NB-IoT para que funcione en NIDD

Por suposto, para intercambiar datos co servidor, o noso dispositivo non só debe poder funcionar na rede NB-IoT, senón tamén admitir o modo NIDD (non ip). No caso da placa de desenvolvemento N21 DEMO ou outro dispositivo baseado en Módulo NB-IoT N21 a secuencia de accións para enviar mensaxes non ip descríbese a continuación.

Activamos a configuración co APN, que nos ocorreu ao cubrir o elemento "NIDD APN" do xestor M2M (aquí - EFOnidd):

AT+CFGDFTPDN=5,"EFonidd"

e pídelle ao dispositivo que se volva rexistrar na rede:

AT+CFUN=0

AT+CFUN=1

a continuación, emita o comando

AT+CGACT=1,1

e envía a mensaxe "test":

AT+NIPDATA=1, "proba"

Tras recibir unha mensaxe non IP no UART do módulo N21, emítese unha mensaxe non solicitada do formulario:

+NIPDATA:1,10,3132333435 // recibiu a mensaxe non ip '12345'
onde
1 - CID, contexto pdp
10 - número de bytes de datos despois do punto decimal

A mensaxe chega ao servidor en codificación Base64 (nunha solicitude POST).

PS Para simular a transferencia de datos desde o servidor, é conveniente usar o programa Carteiro. Podes usar calquera script que imite un servidor HTTP para recibir mensaxes.

Espero que sexa útil para alguén.
Grazas.

Fonte: www.habr.com

Engadir un comentario