NB-IoT. Niet-IP-gegevenslevering of eenvoudigweg NIDD. Testen met de commerciële dienst van MTS

Goedemiddag en goed humeur!

Dit is een kleine tutorial over het instellen van NIDD (Non-IP Data Delivery) in de MTS-cloudservice met de voor zichzelf sprekende naam “M2M Manager”. De essentie van NIDD is het energiezuinig uitwisselen van kleine datapakketjes over het NB-IoT netwerk tussen apparaten en de server. Als voorheen GSM-apparaten met de server communiceerden door TCP/UDP-pakketten uit te wisselen, is er een extra communicatiemethode beschikbaar gekomen voor NB-IoT-apparaten: NIDD. In dit geval communiceert de server met het netwerk van de operator met behulp van uniforme POST/GET-verzoeken. Ik schrijf voor mezelf (om niet te vergeten) en iedereen die het nuttig vindt.

U kunt lezen over NB-IoT:

NB-IoT, smalbandinternet der dingen. Algemene informatie, technologische kenmerken
NB-IoT, smalbandinternet der dingen. Energiebesparende modi en bedieningsopdrachten

NIDD-theorie van MTS

Documentatie voor de NB-IoT-module die tijdens het testen is gebruikt:
Neoway N21.

MTS-service voor het beheer van M2M-apparaten.

Om een ​​gevoel te krijgen voor NIDD hebben we nodig:

  • Simkaart NB-IoT MTS
  • NB-IoT-apparaat met NIDD-ondersteuning
  • wachtwoord en login van M2M manager MTS

Ik gebruikte een bord als apparaat N21 DEMO, en het wachtwoord en de login voor toegang tot de M2M-manager werden mij vriendelijk verstrekt door MTS-medewerkers. Hiervoor, maar ook voor de diverse hulp en het talrijke overleg, danken wij hen hartelijk.

Ga dus naar de M2M-manager en controleer of:

  • in het menu-item “SIM Manager” bevindt zich “NB-IoT Control Center”;
  • Onze NB-IoT-kaart is verschenen in het NB-IoT Control Center, evenals in de volgende secties:
    NIDD APN
    NIDD-accounts
    NIDD-beveiliging
  • helemaal onderaan staat een menu-item “API M2M” met “NIDD Developer Guide”

Het geheel zou er ongeveer zo uit moeten zien:

NB-IoT. Niet-IP-gegevenslevering of eenvoudigweg NIDD. Testen met de commerciële dienst van MTS

Mocht er iets ontbreken in de M2M-manager, stuur dan gerust een verzoek naar uw manager bij MTS met een uitgebreide omschrijving van uw wensen.

Als de vereiste NB-IoT Control Center-items aanwezig zijn, kunt u beginnen met het invullen ervan. Bovendien komt het item “NIDD Accounts” als laatste: hiervoor zijn gegevens uit aangrenzende secties nodig.

  1. NIDD-APN: We bedenken en vullen de naam van onze APN en “Application ID” in.
  2. NIDD-veiligheid: hier geven we het IP-adres aan van onze applicatieserver, die via de MTS-service (server) zal communiceren met NB-IoT-apparaten.
  3. NIDD-accounts: Vul gewoon alle velden in en klik op “Opslaan”.

Zodra alle items zijn voltooid, kunt u beginnen met het afhandelen van de verzoeken die onze server moet genereren. Ga naar de M2M API en lees de NIDD Developer's Guide. Om het apparaat te kunnen registreren in het NB-IoT-netwerk, moet u een SCS AS-configuratie maken:

NB-IoT. Niet-IP-gegevenslevering of eenvoudigweg NIDD. Testen met de commerciële dienst van MTS

De handleiding bevat een beschrijving van individuele verzoekparameters, ik zal slechts een paar kleine opmerkingen geven:

  1. link voor het verzenden van verzoeken: m2m-manager.mts.ru/scef/v1/3gpp-nidd/v1/{scsAsId}/configurations, waarbij scsAsId de “Applicatie-ID” is uit het menu-item “NIDD APN”;
  2. basisautorisatiemethode met login en wachtwoord - gebruik de login en het wachtwoord die u heeft aangemaakt bij het invullen van het menu-item “NIDD Accounts”;
  3. notificatieDestination - uw serveradres. Van daaruit verzendt u niet-ip-berichten naar apparaten, en de MTS-server stuurt er meldingen over het verzenden en ontvangen van niet-ip-berichten naar toe.

Wanneer de SCS AS-configuratie is aangemaakt en het apparaat succesvol is geregistreerd in NIDD-modus in het NB-IoT-netwerk van de operator, kunt u proberen de eerste niet-ip-berichten uit te wisselen tussen de server en het apparaat.

Om een ​​bericht van de server naar het apparaat over te brengen, bestudeert u paragraaf “2.2 Een bericht verzenden” van de handleiding:

NB-IoT. Niet-IP-gegevenslevering of eenvoudigweg NIDD. Testen met de commerciële dienst van MTS

{configuratieId} in de verzoeklink - een waarde van het type “hex-abracadabra” verkregen tijdens het maken van de configuratie. Ziet eruit als: b00e2485ed27c0011f0a0200.

gegevens — berichtinhoud in Base64-codering.

Een NB-IoT-apparaat configureren om in NIDD te werken

Om gegevens met de server uit te wisselen, moet ons apparaat uiteraard niet alleen in het NB-IoT-netwerk kunnen werken, maar ook de NIDD-modus (non-ip) ondersteunen. In het geval van het N21 DEMO-ontwikkelbord of een ander apparaat gebaseerd op NB-IoT-module N21 De volgorde van acties voor het verzenden van niet-IP-berichten wordt hieronder beschreven.

We activeren de configuratie met de APN die we hebben bedacht bij het invullen van het item “NIDD APN” in de M2M-manager (hier - EFOnidd):

AT+CFGDFTPDN=5,"EFOnidd"

en vraag het apparaat om zich opnieuw te registreren op het netwerk:

AT+CFUN=0

AT+CFUN=1

daarna geven we het commando

AT+CGACT=1,1

en stuur het bericht “test”:

AT+NIPDATA=1, “testen”

Wanneer een niet-ip-bericht wordt ontvangen op de UART van de N21-module, wordt een ongevraagd bericht van het formulier verzonden:

+NIPDATA:1,10,3132333435 // ontvangen niet-IP-bericht '12345'
waar
1 - CID, pdp-context
10 - aantal databytes achter de komma

Het bericht arriveert bij de server in Base64-codering (in een POST-verzoek).

PS Om de gegevensoverdracht vanaf een server te simuleren, is het handig om het programma te gebruiken Postbode. Om berichten te ontvangen, kunt u elk script gebruiken dat een HTTP-server simuleert.

Ik hoop dat het nuttig is voor iemand.
Dank u.

Bron: www.habr.com

Voeg een reactie