Loading…
IoT

Tο Internet of Things (Διαδίκτυο των Πραγμάτων) στην FOSDEM

IoT Ήμουν και εγώ λοιπόν στο FOSDEM 2015, με την αποστολή της EΕΛ/ΛΑΚ. Ήταν το πιο “πλούσιο” event πληροφορικής που έχω παρευρεθεί, με τόσες πολλές παράλληλες ομιλίες που έπρεπε να τρέχω πάνω/κάτω όλη την ώρα για να ακολουθήσω τον “ιδανικό συνδυασμό”, που είχα σχεδιάσει τις προηγούμενες ημέρες μετά απο πολύ μελέτη! :-)

Αν και ανακάτεψα πολλά tracks, κυρίως με ενδιέφερε το Internet of Things (Διαδίκτυο των Πραγμάτων), οπότε σε αυτό το track θα αναφερθώ.

Το wikipedia περιγράφει τον όρο IoT έτσι:

The Internet of Things (IoT) is the network of physical objects or “things” embedded with electronics, software, sensors and connectivity to enable it to achieve greater value and service by exchanging data with the manufacturer, operator and/or other connected devices. Each thing is uniquely identifiable through its embedded computing system but is able to interoperate within the existing Internet infrastructure.

Δηλαδή, με λίγα λόγια είναι το δίκτυο συσκευών που μεταδίδουν/αξιοποιούν δεδομένα από το φυσικό περιβάλλον για να παρέχουν κάποια υπηρεσία και μπορούν να επικοινωνούν (και) μέσω internet. Π.χ. μπορεί αυτό να είναι ένα έξυπνο τηλέφωνο (smartphone) ή ένας αισθητήρας υγρασίας εδάφους σε ένα χωράφι, που στέλνει μετρήσεις σε κάποια διαδικτυακή υπηρεσία μέσω του GSM δικτύου. Έχουμε ήδη παγκοσμίως, περίπου 18 δισεκατομμύρια συσκευές που “μπαίνουν” στο internet και προβλέπεται να φτάσουν στις 50 δις, μέχρι το 2020. Το μεγαλύτερο μέρος από αυτές ΔΕΝ είναι υπολογιστές με παραδοσιακή μορφή (smartphone/laptop/tablet), αλλά είναι “πράγματα” (things), δηλαδή κάποιο άλλο είδος συσκευής/embedded device με αισθητήρες (π.χ. για M2M χρήση)

Προφανώς το IoT σαν έννοια δεν είναι κάτι καινούριο, απλά τα τελευταία χρόνια χρησιμοποιούμε αυτόν τον ορό για να συνεννοούμαστε όταν πρόκειται για έργα/συστήματα/υπηρεσίες με αυτά τα χαρακτηριστικά. Έτσι, κάτω από την ομπρέλα του IoT έχουμε υπηρεσίες σε τομείς που ήδη γνωρίζουμε ή/και χρησιμοποιούμε όπως: enviromental sensors/weather stations, wearable devices, fitness, drones, home automation, smart cities, smart agriculture, ehealth, connected cars, και πολλά άλλα…

Οι εφαρμογές IoT σήμερα έχουν πολλά κοινά χαρακτηριστικά, και αντίστοιχα κοινά εμπόδια/δυσκολίες. Από την δική μου εμπειρία έχω καταλήξει ότι το IoT “πονάει” σήμερα στα εξής βασικά θέματα (μεταξύ άλλων):

  • protocol fragmentation
  • device managment/over the air updates.

Αυτά είχα στο μυαλό μου στο fosdem και έψαχνα για καινούρια εργαλεία που να βοηθούν τον developer να επιβιώσει στη ζούγκλα του IoT.

Με το όρο protocol fragmentation εννοώ την ασυμβατότητα στα πρωτόκολλα ανταλλαγής δεδομένων, που υπάρχει μεταξύ όλων αυτών των χιλιάδων συσκευών/τεχνολογιών που υπάρχουν στην διάθεσή μας. Δηλαδή το “έξυπνο” κλιματιστικό μου, μιλάει διαφορετική γλώσσα από τα “έξυπνα” φώτα μου, οπότε δεν μπορούν αυτά τα δυο να συνεννοηθούν, ώστε αν είναι μέρα και έχει ζέστη, να κλείσει το κλιματιστικό τα φώτα, για να μην ζεσταίνεται περισσότερο ο χώρος (σκαρφίστηκα τώρα ένα τυχαίο παράδειγμα).

Μια “λύση” για το protocol fragmentation, είναι να χρησιμοποιούμε όλοι το ίδιο, ανοιχτό και αρκετά γενικής χρήσης πρωτόκολλο που μπορεί να καλύψει τις περισσότερες ανάγκες στο IoT. Προς αυτή την κατεύθυνση  κινήθηκε η παρουσίαση του Joachim Lindborg για το XMPP – IoT an open solution for things. Σε παρόμοια κατεύθυνση κινήθηκε η παρουσίαση του  Matthew Hodgson με τίτλο IoT through Matrix – για ένα καινούριο πρωτόκολλο το “Matrix” με “μοντέρνα” χαρακτηριστικά.

Καλό θα ήταν να μιλούσαν όλες οι συσκευές το ίδιο (ή συμβατό) πρωτόκολλο, αλλά στην πραγματικότητα αυτό είναι πολύ δύσκολο να συμβεί μιας και ο κάθε κατασκευαστής θέλει να κρατήσει τους πελάτες του κλειδωμένους στο δικό του οικοσύστημα. Έτσι μπαίνουν στο παιχνίδι του IoT τα integration platforms/gateways, που μιλάνε πολλά πρωτόκολλα και κάνουν πραγματικότητα την ενοποίηση ετερογενών συστηματων.

Ένα integration platform, που παρουσιάστηκε ήταν από τον Alexandr Krylovskiy το Patchwork Toolkit – Lightweight Platform for the Network of Things. Τo patchwork toolkit θυμίζει το openhab, (σε πιο ανάλαφρη μορφή).

Με αφορμή την ακύρωση μιας ομιλίας στο IoT devroom, είχαμε την ευκαιρία να μιλήσουμε μεταξύ μας οι developers, και όταν αναφέρθηκα στο openhab και μου έκανε εντύπωση που οι περισσότεροι δεν το γνώριζαν. Ελπίζω και το openhab να είναι στο fosdem του χρόνου (ενημέρωσα τον δημιουργό του :-P )

Κοντά στην κατεύθυνση των integration platforms, ήταν και το Eclipse Kura, αν και δεν περιλαμβάνει το application logic (προσφέρει OSGI container), αλλά είναι περισσότερο εστιασμένο στις λειτουργίες του gateway και του device management.  Το παρουσίασε ο Benjamin Cabé  μαζί με διάφορες τεχνολογίες και projects που σχετίζονται με IoT στην ομιλία Building an open Internet of Things with Java and Eclipse IoT. Επίσης, παρουσίασε ένα (σχετικά) καινούριο πρωτόκολλο, το LightweightM2M στην ομιλια Manage all the things, small and big, with open source LwM2M implementations. Το lwM2M ουσιαστικά έχει φτιαχτεί για να λύσει το θέμα του device managment (όπου και απασχολούσε εμένα).

Έχουν εξαιρετικό ενδιαφέρον οι δυο open υλοποιήσεις απο eclipse:

  • Leshan (lwM2M server/client implementation in java – e.g. beaglebone)
  • Wakaama (lwM2M client/server implementation in C for embedded devices – e.g. arduino)

Ελπίζω να ωριμάσουν γρήγορα αυτά τα projects, γιατί είναι σίγουρα προς την σωστή κατεύθυνση. Π.χ. Θα είχε πολύ ενδιαφέρον μια υλοποίηση lwM2M για το CC3200 της TI, καθώς και η ενοποίηση του Kura με το Openhab (πιθανά μέσω Eclipse Smarthome).

Γενικά, με την υιοθέτηση όλων των παραπάνω τεχνολογιών, σε εφαρμογές IoT, σιγά σιγά προχωράμε σε πιο εύκολη/αποτελεσματική διαχείριση των “things” και είναι πολύ σημαντικό ότι μεταξύ άλλων μπορούν να δεχτούν ενημερώσεις μέσω δικτύου (OTA – over the air update). Αν αυτό το συνδέσει κανείς με την εξέλιξη της τεχνολογίας στον τομέα της τεχνητής νοημοσύνης (AI), και στις τεχνολογίες σύννεφου (cloud), τότε μπορούμε να πούμε ότι πλησιάζουμε επικίνδυνα στην ημέρα της κρίσης (Judgment Day) του Τerminator :-P

Μανώλης Νικηφοράκης
https://www.linkedin.com/in/mnikiforakis

Αφήστε μια απάντηση