NB-IoT. Non-IP Data Delivery oder nur NIDD. Testen mit einem kommerziellen Dienst MTS

Guten Tag und gute Laune!



Dies ist ein kleines Tutorial zum Einrichten von NIDD (Non-IP Data Delivery) im MTS-Clouddienst mit dem selbsterklärenden Namen "M2M-Manager". Die Essenz von NIDD ist der energieeffiziente Austausch kleiner Datenpakete über das NB-IoT-Netzwerk zwischen Geräten und einem Server. Wenn frühere GSM-Geräte mit dem Server kommunizierten und TCP / UDP-Pakete austauschten, wurde eine zusätzliche Kommunikationsmethode für NB-IoT-Geräte verfügbar - NIDD. Gleichzeitig interagiert der Server mit dem Netzwerk des Betreibers über einheitliche POST / GET-Anforderungen. Ich schreibe für mich selbst (um nicht zu vergessen) und für alle, die es nützlich finden.



Sie können über NB-IoT lesen:



NB-IoT, Schmalband-Internet der Dinge. Allgemeine Informationen, Funktionen der

NB-IoT-Technologie, Narrow Band Internet of Things. Energiesparmodi und Steuerbefehle



NIDD-Theorie aus der MTS-



Dokumentation für das NB-IoT-Modul, das im Testprozess verwendet wurde:

Neoway N21 .



MTS-Dienst zur Verwaltung von M2M-Geräten .



Um die NIDD zu fühlen, brauchen wir:



  • SIM-Karte NB-IoT MTS
  • NB-IoT-Gerät mit NIDD-Unterstützung
  • Passwort und Login vom M2M-Manager von MTS


Ich habe die N21-DEMO- Karte als Gerät verwendet , und die MTS-Mitarbeiter haben mir freundlicherweise das Passwort und die Anmeldung für den Zugriff auf den M2M-Manager zur Verfügung gestellt. Dafür, für die vielfältige Unterstützung und die zahlreichen Konsultationen, vielen Dank an sie.



Gehen Sie also zum M2M-Manager und überprüfen Sie Folgendes:



  • im Menüpunkt "SIM-Manager" befindet sich "NB-IoT Control Center";
  • : unsere NB-IoT - Karte wurde in der "NB-IoT Control Center", sowie Abschnitte erschien

    NIDD APN

    NIDD NIDD Accounts

    Sicherheit
  • Ganz unten befindet sich ein Menüpunkt "API M2M" mit "NIDD Developer's Guide".


All diese Wirtschaftlichkeit sollte ungefähr so ​​aussehen:







Wenn im M2M-Manager etwas fehlt, können Sie Ihrem Manager in MTS eine Anfrage mit einer detaillierten Beschreibung Ihrer Wünsche senden.



Wenn die erforderlichen Elemente des NB-IoT-Kontrollzentrums vorhanden sind, können Sie sie ausfüllen. Darüber hinaus ist der Punkt "NIDD-Konten" der letzte: Er benötigt Daten aus benachbarten Abschnitten.



  1. NIDD APN: Geben Sie den Namen unseres APN und die "Anwendungs-ID" ein.
  2. NIDD-Sicherheit: Hier geben wir die IP-Adresse unseres Anwendungsservers an, der über den MTS-Dienst (Server) mit NB-IoT-Geräten kommuniziert.
  3. NIDD-Konten: Füllen Sie einfach alle Felder aus und klicken Sie auf "Speichern".


Sobald alle Elemente ausgefüllt sind, können Sie mit den Anforderungen beginnen, die unser Server generieren soll. Gehen Sie zu API M2M und lesen Sie das NIDD-Entwicklerhandbuch. Damit sich das Gerät im NB-IoT-Netzwerk registrieren kann, müssen Sie eine SCS AS-Konfiguration erstellen:







Das Handbuch enthält eine Beschreibung der einzelnen Anforderungsparameter. Ich werde nur einige kleine Kommentare geben:



  1. Link zum Senden von Anforderungen: m2m-manager.mts.ru/scef/v1/3gpp-nidd/v1/ {scsAsId} / configuration, wobei scsAsId die „Anwendungs-ID“ aus dem Menüpunkt „NIDD APN“ ist;
  2. Grundlegende Autorisierungsmethode mit Benutzername und Passwort - Verwenden Sie den Benutzernamen und das Passwort, die Sie beim Ausfüllen des Menüelements "NIDD-Konten" angegeben haben.
  3. Benachrichtigungsziel - Ihre Serveradresse. Von dort aus senden Sie Nicht-IP-Nachrichten an Geräte, und der MTS-Server sendet Benachrichtigungen über das Senden und Empfangen von Nicht-IP-Nachrichten an Geräte.


Wenn die SCS AS-Konfiguration erstellt wurde und sich das Gerät erfolgreich im NIDD-Modus im NB-IoT-Netzwerk des Betreibers registriert hat, können Sie versuchen, die ersten Nicht-IP-Nachrichten zwischen dem Server und dem Gerät auszutauschen.



Um eine Nachricht vom Server auf das Gerät zu übertragen, lesen Sie den Abschnitt "2.2 Senden einer Nachricht" des Handbuchs:







{configurationId} im Anforderungslink - den Wert des Typs "hex-abracadabra", der zum Zeitpunkt der Erstellung der Konfiguration erhalten wurde. Hat die Form: b00e2485ed27c0011f0a0200.



Daten - Nachrichteninhalt in Base64-Codierung.



Konfigurieren eines NB-IoT-Geräts für die Arbeit in NIDD



Um Daten mit dem Server auszutauschen, muss unser Gerät natürlich nicht nur im NB-IoT-Netzwerk arbeiten können, sondern auch den NIDD-Modus (Nicht-IP) unterstützen. Im Fall der N21-DEMO-Karte oder eines anderen Geräts, das auf dem N21-NB-IoT-Modul basiert , wird die Reihenfolge der Aktionen zum Übertragen von Nicht-IP-Nachrichten unten beschrieben.



Wir aktivieren die Konfiguration mit APN, die wir beim Ausfüllen des Elements "NIDD APN" des M2M-Managers (hier - EFOnidd) gefunden haben:



AT + CFGDFTPDN = 5, "EFOnidd"



und bitten das Gerät, sich erneut im Netzwerk zu registrieren:



AT + CFUN = 0



AT + CFUN = 1 Danach



senden wir den Befehl



AT + CGACT = 1,1



und senden die Nachricht "test":



AT + NIPDATA = 1, "test"



Wenn eine Nicht-IP-Nachricht auf dem UART des N21-Moduls empfangen wird, wird eine unerwünschte Nachricht der folgenden Form ausgegeben:



+ NIPDATA: 1,10,3132333435 // Nicht-IP-Nachricht '12345' empfangen,

wobei

1 CID ist, PDF-Kontext

10 die Anzahl der Datenbytes nach dem Dezimalpunkt



Die Nachricht wird in Base64-Codierung (in einer POST-Anforderung) an den Server gesendet.



PS Es ist bequem, Postman zu verwenden, um die Datenübertragung vom Server zu simulieren . Jedes Skript, das einen HTTP-Server simuliert, kann zum Empfangen von Nachrichten verwendet werden.



Hoffe, es ist praktisch für jemanden.

Danke.



All Articles