Διαχείριση συσκευών IoT με χρήση LwM2M

Διαχείριση συσκευών IoT με χρήση LwM2M

Κόμβος πηγής: 2007650
Διαχείριση συσκευών IoT με χρήση LwM2M
Εικόνα: © IoT για όλους

Στη σημερινή αγορά, Συσκευές IoT έρχονται σε διάφορες μορφές και σχήματα. Κάθε συσκευή έχει μια μοναδική στοίβα επικοινωνίας που συνοδεύεται από μια συγκεκριμένη δομή πακέτων δεδομένων και ένα προσεκτικά σχεδιασμένο επίπεδο διαχείρισης συσκευών. Τώρα φανταστείτε τους αγώνες ενός διανομέα ενέργειας που ανέπτυξε διάφορες μάρκες έξυπνων μετρητών όλα αυτά τα χρόνια για να μετρήσει τη χρήση ηλεκτρικής ενέργειας σε χιλιάδες κτίρια. Κάθε μετρητής διαθέτει διαφορετική δομή δεδομένων που πρέπει να μορφοποιηθεί. Πρέπει να εφαρμοστούν συγκεκριμένες διαδικασίες για την απομακρυσμένη διαχείριση των διαφορετικών συσκευών και πρέπει να τεθούν σε εφαρμογή συγκεκριμένοι μηχανισμοί για την ενημέρωση του υλικολογισμικού των συσκευών.

Όταν οι συσκευές χρησιμοποιούν το πρότυπο LwM2M, οι ενοποιητές IoT μπορούν να είναι βέβαιοι ότι κάθε συσκευή αναφέρει παρόμοια τα δεδομένα της. Οι διαμορφώσεις και το υλικολογισμικό μπορούν να ενημερωθούν χρησιμοποιώντας παρόμοιες εντολές διακομιστή ανεξάρτητα από το υλικό, την έκδοση υλικολογισμικού ή τους αισθητήρες που χρησιμοποιούνται. Ας εξερευνήσουμε τα τρία θεμελιώδη στοιχεία του LwM2M που διασφαλίζουν τη διαλειτουργικότητα: την τυποποιημένη μορφή δεδομένων, την αρχιτεκτονική LwM2M και τις λειτουργίες LwM2M.

«Όταν οι συσκευές χρησιμοποιούν το πρότυπο LwM2M, οι ενοποιητές IoT μπορούν να είναι σίγουροι ότι κάθε συσκευή αναφέρει παρόμοια τα δεδομένα της».

- AVSystem

Μορφή δεδομένων LwM2M

Το LwM2M είναι ένα πρωτόκολλο επικοινωνίας επιπέδου εφαρμογής που αναπτύχθηκε από την OMA SpecWorks για την απλοποίηση της ανταλλαγής μηνυμάτων και της διαχείρισης συσκευών των συσκευών IoT. Το πρωτόκολλο ορίζει τη σημασιολογία επικοινωνίας, τους μηχανισμούς διαχείρισης συσκευών, τις ενημερώσεις μέσω αέρα (FOTA) και τη συλλογή δεδομένων τηλεμετρίας και είναι κατάλληλο για συσκευές με περιορισμούς πόρων. Το πρότυπο LwM2M χρησιμοποιεί τα λεγόμενα έξυπνα αντικείμενα IPSO για να αναπαραστήσει διαμορφώσεις, λειτουργίες και αισθητήρες για να πραγματοποιήσει τη διαλειτουργικότητα δεδομένων. Κατά τη δόμηση των έξυπνων αντικειμένων IPSO με συγκεκριμένο τρόπο, δημιουργείται μια γλώσσα που μπορούν να κατανοήσουν τόσο ο πελάτης LwM2M όσο και ο διακομιστής LwM2M. Αυτή η γλώσσα περιέχει αντικείμενα, στιγμιότυπα αντικειμένων και πόρους.

#1: Αντικείμενα

Τα αντικείμενα αντιπροσωπεύουν ένα φυσικό στοιχείο (έναν αισθητήρα, LED ή ενεργοποιητή) ή μια λογική οντότητα (όπως η προτιμώμενη τεχνολογία ραδιοφώνου, η διαμόρφωση ενημέρωσης υλικολογισμικού ή η εφαρμογή ασφαλείας). Όλα τα αντικείμενα ορίζονται από ένα αναγνωριστικό αντικειμένου. Το πρότυπο LwM2M ορίζει τρία υποχρεωτικά αντικείμενα που θεωρούνται απαραίτητα για τη σύνδεση και την επικοινωνία της συσκευής με έναν διακομιστή LwM2M. Τα υποχρεωτικά αντικείμενα είναι:

  1. Αναγνωριστικό αντικειμένου 0: Ασφάλεια LwM2M: Περιέχει εμπιστευτικές πληροφορίες σχετικά με τις συνδέσεις με τους διακομιστές LwM2M που έχουν ρυθμιστεί στον πελάτη.
  2. Αναγνωριστικό αντικειμένου 1: Διακομιστής LwM2M: Περιέχει μη εμπιστευτικές πληροφορίες σχετικά με τις συνδέσεις με τους διακομιστές LwM2M που έχουν ρυθμιστεί στον πελάτη.
  3. Αναγνωριστικό αντικειμένου 3: Συσκευή: Περιέχει βασικές πληροφορίες για τη συσκευή, όπως π.χ. σειριακό αριθμό και έκδοση υλικολογισμικού.

Δίπλα στα υποχρεωτικά αντικείμενα, μπορούν να υλοποιηθούν πρόσθετα αντικείμενα. Παραδείγματα μη υποχρεωτικών αντικειμένων είναι:

  • Αναγνωριστικό αντικειμένου 4: Παρακολούθηση συνδεσιμότητας: Παρέχει πληροφορίες σχετικά με την κατάσταση συνδεσιμότητας της συσκευής, όπως την ισχύ του σήματος και τον τύπο δικτύου.
  • Αναγνωριστικό αντικειμένου 5: Ενημέρωση υλικολογισμικού: Επιτρέπει την εκτέλεση απομακρυσμένων ενημερώσεων υλικολογισμικού.
  • ID αντικειμένου 6: Θέση: Παρέχει πληροφορίες σχετικά με τη γεωγραφική θέση της συσκευής, όπως το γεωγραφικό πλάτος και το μήκος της.
  • Αναγνωριστικό αντικειμένου 11: Προφίλ σύνδεσης APN LwM2M: Επιτρέπει σε μια συσκευή να συνδεθεί σε ένα APN.
  • ID αντικειμένου 3303: Θερμοκρασία: Αναφέρει μετρήσεις θερμοκρασίας.
  • ID αντικειμένου 3313: Επιταχυνσιόμετρο: Αντιπροσωπεύει ένα επιταχυνσιόμετρο 1-3 αξόνων.

#2: Στιγμιότυπα αντικειμένων

Ορισμένα αντικείμενα μπορεί να έχουν πολλαπλές παρουσίες αντικειμένων. Παραδείγματα τέτοιων αντικειμένων περιλαμβάνουν το αντικείμενο που διαχειρίζεται συνδέσεις με διακομιστές LwM2M καθώς μπορούν να διαμορφωθούν πολλαπλοί διακομιστές LwM2M ή συσκευές που περιέχουν πολλαπλούς SIM με διαφορετικά προφίλ APN. Όταν οι συσκευές περιέχουν πολλαπλούς πανομοιότυπους αισθητήρες, χρησιμοποιούνται στιγμιότυπα αντικειμένων για τη διάκριση των διαφορετικών αισθητήρων.

#3: Πόροι

Οι πόροι αντιπροσωπεύουν συγκεκριμένες ιδιότητες ενός αντικειμένου που μπορούν να διαβαστούν, να γραφτούν ή να εκτελεστούν. Κάθε πόρος προσδιορίζεται από ένα μοναδικό αναγνωριστικό πόρων. Για παράδειγμα, ένα αντικείμενο θερμοκρασίας έχει την τρέχουσα θερμοκρασία του πόρου, μια μονάδα μέτρησης και μια χρονική σήμανση. Ομοίως, το αντικείμενο της συσκευής έχει πόρους όπως όνομα κατασκευαστή, σειριακό αριθμό και έκδοση υλικολογισμικού. Το αντικείμενο τοποθεσίας έχει το γεωγραφικό πλάτος, το γεωγραφικό μήκος και το υψόμετρο του πόρου. Όλες οι λεπτομέρειες των αντικειμένων και των πόρων ορίζονται στο Μητρώο ΟΜΑ. Υπάρχει επίσης η δυνατότητα να ορίσετε το προσαρμοσμένο σας αντικείμενο εάν ένα συγκεκριμένο χαρακτηριστικό ή αισθητήρας δεν αναφέρεται στο μητρώο OMA.

Κάθε πόρος περιέχει ένα αναγνωριστικό, έναν τύπο (float, string, int, opaque) και επιτρεπόμενες λειτουργίες διακομιστή (όπως READ, WRITE ή EXECUTE). Ας ρίξουμε μια ματιά σε μερικά παραδείγματα.

Παραδείγματα

Το αντικείμενο της συσκευής αντιπροσωπεύεται με το αναγνωριστικό 3 και οι πόροι περιλαμβάνουν:

Αναγνωριστικό πόρου Όνομα πόρων Λειτουργία διακομιστή Χαρακτηριστικά
0 Κατασκευαστής Διάβασε Σπάγγος
1 Αριθμός μοντέλου Διάβασε Σπάγγος
3 Έκδοση υλικολογισμικού Διάβασε Σπάγγος
4 Επανεκκίνηση Εκτελέσιμο -
13 Τρέχουσα ώρα Εγγράψιμο Χρόνος
Αντικείμενο συσκευής

Το αντικείμενο θερμοκρασίας αντιπροσωπεύεται με το αναγνωριστικό 3303και οι πόροι περιλαμβάνουν:

Αναγνωριστικό πόρου Όνομα πόρων Λειτουργία διακομιστή Χαρακτηριστικά
5700 Τιμή αισθητήρα Διάβασε φλοτέρ
5701 Μονάδες αισθητήρων Διάβασε Σπάγγος
5518 Timestamp Διάβασε Χρόνος
Αντικείμενο θερμοκρασίας

Κατά την αποστολή δεδομένων, κάθε μήνυμα μορφοποιείται ως εξής: / / =

Για να στείλετε τα πιο πρόσφατα δεδομένα θερμοκρασίας, θα μπορούσε να μοιάζει κάπως έτσι: 3303/0/5700 = 23.5

Για να βελτιστοποιηθεί το εύρος ζώνης, τα δεδομένα κωδικοποιούνται συνήθως σε ένα δυαδικό ωφέλιμο φορτίο με απόδοση χώρου. Αν και τα δεδομένα μπορούν να αποσταλούν με απλό JSON, πιο συνηθισμένο είναι η χρήση CBOR ή SenML για τη μείωση του μεγέθους του ωφέλιμου φορτίου.

Αποστολή γεωγραφικού πλάτους και γεωγραφικού μήκους χρησιμοποιώντας τη μορφή δεδομένων LwM2M

Περιπτώσεις πόρων

Σε ορισμένες περιπτώσεις, οι πόροι έχουν πολλαπλές παρουσίες πόρων. Για παράδειγμα, το αντικείμενο Device 3 περιλαμβάνει τον πόρο 6: Available Power Sources. Οι διαφορετικές περιπτώσεις περιγράφουν τις διαφορετικές πηγές ενέργειας:

0: Ισχύς συνεχούς ρεύματος
1: Εσωτερική μπαταρία
2: Εξωτερική μπαταρία
3: Κυψέλη καυσίμου
4: Τροφοδοσία μέσω Ethernet
5: USB
6: Εναλλασσόμενο ρεύμα (κεντρικό δίκτυο).
7: Ηλιακός

Για να περιγράψει τη διαθεσιμότητα της ηλιακής ενέργειας, η μορφή μηνύματος γίνεται: 3/0/6/7.

LwM2M Architecture: Client & Server

Η αρχιτεκτονική LwM2M περιλαμβάνει τον πελάτη LwM2M και τον διακομιστή LwM2M. Η επικοινωνία λειτουργεί ανεξάρτητα από την (ασύρματη) τεχνολογία που χρησιμοποιείται και μπορεί να τρέξει πάνω από δίκτυα IP και μη. Οι δημοφιλείς τεχνολογίες IP περιλαμβάνουν το WiFi και το κινητό. Το μη IP περιλαμβάνει Bluetooth, LoRaWAN ή Wirepas. Τα δίκτυα που δεν είναι IP μπορούν να διευθυνσιοδοτηθούν χρησιμοποιώντας δίκτυα IEEE 802.15.4 (6LoWPAN). Για παράδειγμα, εκτελώντας ένα νήμα μέσω Bluetooth. 

Το πρότυπο LwM2M χρησιμοποιεί το πρωτόκολλο CoAP για να επιτρέπει στις συσκευές να επικοινωνούν εύκολα με το cloud. Σκεφτείτε το CoAP ως το πρωτόκολλο HTTP, αλλά σχεδιασμένο για συσκευές με περιορισμούς πόρων. Το CoAP συγκρίνεται συχνά με το MQTT καθώς και τα δύο πρωτόκολλα χρησιμοποιούνται συνήθως σε εφαρμογές IoT. Μια βασική διαφορά είναι ότι το CoAP χρησιμοποιεί UDP από προεπιλογή ενώ το MQTT βασίζεται στο TCP. Το μικρό γενικό κόστος του UDP θεωρείται συχνά ως πλεονέκτημα σε σύγκριση με το TCP. Αν και το CoAP μπορεί να χρησιμοποιηθεί με το TCP, το UDP είναι συχνά η προτιμώμενη επιλογή όταν η αποτελεσματική χρήση των πόρων του δικτύου είναι προτεραιότητα.

Οι δημοφιλείς πελάτες LwM2M περιλαμβάνουν το Anjay (συντηρείται από την AVSystem) και το Zephyr LwM2M Client (συντηρείται από το Zephyr Project). Ο διακομιστής LwM2M που παρέχεται από την AVSystem ονομάζεται Coiote και μπορεί να χρησιμοποιηθεί για την επεξεργασία δεδομένων συσκευής, διαμορφώσεων και ενημερώσεων υλικολογισμικού.

Το LwM2M Client εκτελείται στην τελική συσκευή και επικοινωνεί με τον διακομιστή LwM2M χρησιμοποιώντας μια ασφαλή σύνδεση. Ο πελάτης ενημερώνει τον διακομιστή για τα υποστηριζόμενα αντικείμενα και πόρους κατά την πρώτη του σύνδεση καθώς και κατά τις περιοδικές ενημερώσεις κατάστασης. Καθ' όλη τη διάρκεια ζωής της συσκευής, ο πελάτης στέλνει μια ειδοποίηση στον διακομιστή με δεδομένα τηλεμετρίας μορφοποιημένα όπως ορίζονται από το πρότυπο LwM2M. Όλα τα δεδομένα συλλέγονται και αποθηκεύονται από τον διακομιστή LwM2M όπου μπορούν να υποβληθούν σε περαιτέρω επεξεργασία ή να προωθηθούν σε συγκεκριμένες βάσεις δεδομένων πλατφορμών όπως το Azure IoT Hub ή το AWS IoT Core.

Λειτουργίες LwM2M

Το τρίτο βασικό χαρακτηριστικό του πρωτοκόλλου LwM2M είναι λειτουργίες που μπορούν να ξεκινήσουν τόσο από τον πελάτη όσο και από τον διακομιστή. Οι λειτουργίες πελάτη χρησιμοποιούνται για την ενημέρωση του διακομιστή σχετικά με τα δεδομένα τηλεμετρίας ή την κατάσταση των συσκευών. Οι λειτουργίες διακομιστή χρησιμοποιούνται για την ανάγνωση ή εγγραφή δεδομένων ή για την απομακρυσμένη ενημέρωση διαμορφώσεων συσκευών ή υλικολογισμικού με την πάροδο του χρόνου. Μπορούν να διακριθούν δύο διεπαφές: Η διεπαφή αναφοράς πληροφοριών και η διεπαφή διαχείρισης συσκευής.

#1: Διεπαφή αναφοράς πληροφοριών

Ο πελάτης LwM2M μπορεί να ενημερώσει τον διακομιστή για δεδομένα τηλεμετρίας ή αλλαγές κατάστασης σε πραγματικό χρόνο, που ξεκινούν από τον Πελάτη. Ο διακομιστής μπορεί επίσης να καθορίσει τη συμπεριφορά της συσκευής ζητώντας από τη συσκευή να στέλνει δεδομένα σε περιοδικά διαστήματα ή όταν οι τιμές υπερβαίνουν ένα συγκεκριμένο όριο (π.χ. όταν η θερμοκρασία ανεβαίνει πάνω από 30 βαθμούς). Αυτό μπορεί να επιτευχθεί χρησιμοποιώντας τις λειτουργίες: ΠΑΡΑΤΗΡΗΣΗ, ΑΠΟΣΤΟΛΗ και ΕΙΔΟΠΟΙΗΣΗ.

  • ΠΑΡΑΤΗΡΩ: Όταν ενεργοποιηθεί η λειτουργία Παρατήρηση, ο Πελάτης θα αρχίσει να στέλνει μηνύματα ΕΙΔΟΠΟΙΗΣΗΣ στον Διακομιστή σχετικά με τα δεδομένα ή την κατάστασή του σε ρυθμιζόμενα χρονικά διαστήματα. Η λειτουργία ΠΑΡΑΤΗΡΗΣΗ μπορεί επίσης να ακυρωθεί κατά την αποστολή ΑΚΥΡΩΣΗ ΠΑΡΑΤΗΡΗΣΗΣ.
  • Αποστολή: Το μήνυμα SEND χρησιμοποιείται από τον Πελάτη για την αποστολή δεδομένων στον διακομιστή χωρίς ρητή αίτηση. Ανάλογα με το υλικολογισμικό της εφαρμογής, μπορεί να χρησιμοποιηθεί για την αναφορά νέων μετρήσεων ή για την ενημέρωση του διακομιστή σχετικά με μια αλλαγή στα δεδομένα τηλεμετρίας ή στην κατάσταση.
  • ΚΟΙΝΟΠΟΙΩ: Σε απόκριση στη λειτουργία OBSERVE που ξεκινά από τον διακομιστή, ο πελάτης στέλνει λειτουργίες NOTIFY με δεδομένα. Συνήθως, ο διακομιστής παρέχει ένα εύρος ζώνης στο οποίο ο πελάτης πρέπει να στείλει τα δεδομένα του. Π.χ. Τουλάχιστον κάθε 1 ώρα, αλλά όχι περισσότερο από μία φορά κάθε 15 λεπτά.

#2: Διεπαφή διαχείρισης συσκευής

Η διεπαφή διαχείρισης συσκευών επιτρέπει στον διακομιστή να συνδεθεί απομακρυσμένα με τον πελάτη LwM2M και να διαχειρίζεται τη διαμόρφωση, το λογισμικό, την ασφάλειά του κ.λπ.

  • ΑΝΑΚΑΛΥΨΤΕ: Ανάκτηση της λίστας αντικειμένων και πόρων που υποστηρίζονται από τον Πελάτη.
  • ΑΝΑΓΝΩΣΗ: Ανάκτηση της τρέχουσας τιμής ενός συγκεκριμένου πόρου ή ενός αντικειμένου στο σύνολό του.
  • Γράψτε: Τροποποίηση της τιμής ενός συγκεκριμένου πόρου ή ενός αντικειμένου στο σύνολό του.
  • ΕΚΤΕΛΕΣΗ: Επίκληση ενέργειας ή λειτουργίας σε έναν πόρο. Για παράδειγμα, οδηγίες σε μια συσκευή για επαναφορά, επανεκκίνηση ή αναβάθμιση του υλικολογισμικού της.
  • ΔΗΜΙΟΥΡΓΩ: Δημιουργία μιας νέας παρουσίας αντικειμένου.
  • ΔΙΑΓΡΑΦΗ: Διαγραφή παρουσίας αντικειμένου.

Απλοποιήστε με το LwM2M

Το τοπίο του IoT είναι κατακερματισμένο και είναι εύκολο να χαθεί κανείς όταν ψάχνει σε ασύρματες τεχνολογίες, πρωτόκολλα ανταλλαγής μηνυμάτων και μορφές δεδομένων. Το LwM2M υπόσχεται να απλοποιήσει τον συνδεδεμένο κόσμο μέσω της τυποποίησης και της διαλειτουργικότητας. Αυτό επιτυγχάνεται ως αποτέλεσμα των έξυπνων αντικειμένων IPSO με προκαθορισμένα αναγνωριστικά, επιτρέποντας τη δημιουργία μιας ψηφιακής αναπαράστασης της συσκευής. Η τυποποιημένη μορφή δεδομένων επιτρέπει σε οποιονδήποτε διακομιστή LwM2M να ερμηνεύει εύκολα τα δεδομένα. Η αρχιτεκτονική πελάτη-διακομιστή καθορίζει τον τρόπο ροής δεδομένων μεταξύ των τελικών συσκευών και του ιστού. Τέλος, οι προκαθορισμένες λειτουργίες επιτρέπουν στις συσκευές να στέλνουν δεδομένα και να διαμορφώνονται εκ νέου με την πάροδο του χρόνου.

Σφραγίδα ώρας:

Περισσότερα από IOT για όλους