NB-IoT. Ikke-IP-datalevering eller bare NIDD. Testing med MTS kommersiell tjeneste

God ettermiddag og godt humør!

Dette er en liten opplæring om å sette opp NIDD (Non-IP Data Delivery) i MTS skytjeneste med det selvforklarende navnet "M2M Manager". Essensen av NIDD er energieffektiv utveksling av små datapakker over NB-IoT-nettverket mellom enheter og serveren. Hvis tidligere GSM-enheter kommuniserte med serveren ved å utveksle TCP/UDP-pakker, har en ekstra kommunikasjonsmetode blitt tilgjengelig for NB-IoT-enheter - NIDD. I dette tilfellet samhandler serveren med operatørens nettverk ved hjelp av enhetlige POST/GET-forespørsler. Jeg skriver for meg selv (for ikke å glemme) og alle som finner det nyttig.

Du kan lese om NB-IoT:

NB-IoT, Narrow Band Internet of Things. Generell informasjon, teknologiske funksjoner
NB-IoT, Narrow Band Internet of Things. Strømsparingsmoduser og kontrollkommandoer

NIDD teori fra MTS

Dokumentasjon for NB-IoT-modulen som ble brukt under testing:
Neoway N21.

MTS-tjeneste for administrasjon av M2M-enheter.

For å få en følelse av NIDD trenger vi:

  • SIM-kort NB-IoT MTS
  • NB-IoT-enhet med NIDD-støtte
  • passord og innlogging fra M2M manager MTS

Jeg brukte et brett som en enhet N21 DEMO, og passordet og påloggingen for å få tilgang til M2M-sjefen ble gitt meg av MTS-ansatte. For dette, samt for den ulike bistanden og de mange konsultasjonene, takker vi dem veldig.

Så gå til M2M-administratoren og sjekk at:

  • i menypunktet "SIM Manager" er det "NB-IoT Control Center";
  • Vårt NB-IoT-kort har dukket opp i NB-IoT Control Center, samt følgende seksjoner:
    NIDD APN
    NIDD-regnskap
    NIDD Sikkerhet
  • helt nederst er det et menyelement "API M2M" med "NIDD Developer Guide"

Det hele skal se omtrent slik ut:

NB-IoT. Ikke-IP-datalevering eller bare NIDD. Testing med MTS kommersiell tjeneste

Hvis det mangler noe i M2M-manageren, send gjerne en forespørsel til din leder hos MTS med en detaljert beskrivelse av dine ønsker.

Hvis de nødvendige NB-IoT Control Center-elementene er på plass, kan du begynne å fylle dem ut. Dessuten kommer elementet "NIDD-kontoer" sist: det vil kreve data fra tilstøtende seksjoner.

  1. NIDD APN: Vi kommer opp med og fyller ut navnet på vår APN og "Application ID".
  2. NIDD Sikkerhet: her angir vi IP-adressen til vår applikasjonsserver, som vil kommunisere med NB-IoT-enheter gjennom MTS-tjenesten (server).
  3. NIDD-kontoer: Bare fyll ut alle feltene og klikk "Lagre".

Når alle elementene er fullført, kan du begynne å håndtere forespørslene som serveren vår skal generere. Gå til M2M API og les NIDD Developer's Guide. For at enheten skal registreres i NB-IoT-nettverket, må du opprette en SCS AS-konfigurasjon:

NB-IoT. Ikke-IP-datalevering eller bare NIDD. Testing med MTS kommersiell tjeneste

Håndboken inneholder en beskrivelse av individuelle forespørselsparametere, jeg vil bare gi et par små kommentarer:

  1. lenke for å sende forespørsler: m2m-manager.mts.ru/scef/v1/3gpp-nidd/v1/{scsAsId}/configurations, der scsAsId er "Application ID" fra "NIDD APN" menyelementet;
  2. grunnleggende autorisasjonsmetode med pålogging og passord - bruk påloggingsnavnet og passordet du opprettet når du fylte ut "NIDD-kontoer" menyelementet;
  3. notificationDestination - serveradressen din. Fra den vil du sende ikke-ip-meldinger til enheter, og MTS-serveren vil sende varsler om sending og mottak av ikke-ip-meldinger til den.

Når SCS AS-konfigurasjonen er opprettet og enheten er vellykket registrert i NIDD-modus i operatørens NB-IoT-nettverk, kan du prøve å utveksle de første ikke-ip-meldingene mellom serveren og enheten.

For å overføre en melding fra serveren til enheten, les avsnittet "2.2 Sende en melding" i håndboken:

NB-IoT. Ikke-IP-datalevering eller bare NIDD. Testing med MTS kommersiell tjeneste

{configurationId} i forespørselslenken - en verdi av typen "hex-abracadabra", oppnådd på stadiet for å lage konfigurasjonen. Ser ut som: b00e2485ed27c0011f0a0200.

dato — meldingsinnhold i Base64-koding.

Konfigurere en NB-IoT-enhet til å fungere i NIDD

Selvfølgelig, for å utveksle data med serveren, må enheten vår ikke bare kunne fungere i NB-IoT-nettverket, men også støtte NIDD (ikke-ip)-modus. I tilfelle av N21 DEMO utviklingskort eller annen enhet basert på NB-IoT-modul N21 Sekvensen av handlinger for overføring av ikke-IP-meldinger er beskrevet nedenfor.

Vi aktiverer konfigurasjonen med APN som vi kom opp med når vi fyller ut "NIDD APN"-elementet i M2M-manageren (her - EFOnidd):

AT+CFGDFTPDN=5,"EFOnidd"

og be enheten om å registrere seg på nytt på nettverket:

AT+CFUN=0

AT+CFUN=1

etter det gir vi kommandoen

AT+CGACT=1,1

og send meldingen "test":

AT+NIPDATA=1, "test"

Når en ikke-ip-melding mottas på UART-en til N21-modulen, utstedes en uønsket melding av skjemaet:

+NIPDATA:1,10,3132333435 // mottok ikke-ip-melding '12345'
der
1 - CID, pdp-kontekst
10 - antall databyte etter desimaltegn

Meldingen kommer til serveren i Base64-koding (i en POST-forespørsel).

PS For å simulere dataoverføring fra en server er det praktisk å bruke programmet Postbud. For å motta meldinger kan du bruke et hvilket som helst skript som simulerer en HTTP-server.

Jeg håper det er nyttig for noen.
Takk.

Kilde: www.habr.com

Legg til en kommentar