Internet of Things: Υλοποίηση κόμβων με τη χρήση του Alljoyn Framework. Μπούντρης Λεωνίδας ΑΕΜ: 7216 Επιβλέπων καθηγητής: Πέτρου Λουκάς

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Internet of Things: Υλοποίηση κόμβων με τη χρήση του Alljoyn Framework. Μπούντρης Λεωνίδας ΑΕΜ: 7216 Επιβλέπων καθηγητής: Πέτρου Λουκάς"

Transcript

1 Internet of Things: Υλοποίηση κόμβων με τη χρήση του Alljoyn Framework Μπούντρης Λεωνίδας ΑΕΜ: 7216 Επιβλέπων καθηγητής: Πέτρου Λουκάς

2 Εισαγωγή Το επόμενο μεγάλο βήμα στον τεχνολογικό τομέα αποτελεί το λεγόμενο Internet of Things. Ο όρος IoT, που εμφανίζεται όλο και συχνότερα τα τελευταία χρόνια, αναφέρεται ουσιαστικά σε ένα δίκτυο συνδεδεμένων εξυπνων αντικειμένων. Με απλά λόγια το Internet of Things επιτρέπει την σύνδεση συσκευών μεταξύ τους, με στόχο την μεταξύ τους επικοινωνία για την ανταλλαγή δεδομένων και την συλλογή πληροφοριών. Μια δημοφιλής εφαρμογή του IoT είναι το έξυπνο ψυγείο, το οποίο θα μπορεί να σε ενημερώνει πότε κάποιο προιόν έχει τελειώσει. Το IoT όμως δεν περιορίζεται σε κάποιες απλές εφαρμογές έξυπνου σπιτιού αλλά επεκτείνεται σε όλους τους τομείς της καθημερινής ζωής και αναμένεται να επιφέρει σημαντικές αλλαγές με την ανάπτυξή του. Σκοπός της παρούσας εργασίας είναι η περαιτέρω ανάλυση του όρου Internet of Things καθώς και παρουσίαση ενός παραδείγματος πρακτικής εφαρμογής του. Αναλυτικότερα, έγινε η ανάπτυξη δύο κόμβων IoT για την συλλογή μετρήσεων από το περιβάλλον με την χρήση αισθητήρων. Αρχικά, στο πρώτο κεφάλαιο γίνεται η περιγραφή του όρου Internet of Things. Παρουσιάζεται η αρχιτεκτονική του ΙοΤ και οι δυνατότητες και τα προβλήματα που δημιουργούνται από την ανάπτυξή του. Στο τέλος του κεφαλαίου περιγράφονται οι τρόποι με τους οποίους το ΙοΤ αναμένεται να επηρεάσει κάποιους βασικούς τομείς της καθημερινής μας ζωής. Στο δεύτερο κεφάλαιο γίνεται μια έρευνα αγοράς γύρω από τις υπάρχουσες πλακέτες που θα μπορούσαν να χρησιμοποιηθούν για την ανάπτυξη κόμβων IOT και περιγράφεται το υλικό που χρησιμοποιήθηκε στην παρούσα εργασία. Στη συνέχεια, στο τρίτο κεφάλαιο της εργασίας παρουσιάζεται το alljoyn framework, το οποίο χρησιμοποιήθηκε για την επικοινωνία των δύο κόμβων με τον κεντρικό υπολογιστή και αναλύεται η αρχιτεκτονική και τα πλεονεκτήματά του. Στο τέταρτο κεφάλαιο γίνεται μια σύντομη αναφορά στο λογισμικό που χρησιμοποιήθηκε κατά την δημιουργία των δύο κόμβων και στο επόμενο κεφάλαιο περιγράφεται ο τρόπος με τον οποίο έγινε η δημιουργία τους. Τέλος, το τελευταίο κεφάλαιο της διπλωματικής εργασίας περιλαμβάνει κάποια συμπεράσματα και συνοψίζει τα όσα αναφέρθηκαν παραπάνω. 1

3 Abstract The next big technological step is the so-called Internet of Things. The term Internet of Things refers, basically, to a network of interconnected smart objects. In simple words, Internet of Things is allowing devices to establish a connection between them for data exchanging and information gathering. One very common application is the smart fridge, which will send a notice each time you run out of a product. However, the Internet of Things is not limited to some simple smart-home applications, such the smart fridge, but it is about to affect every aspect of our everyday life. The purpose of this paper is the further analysis of Internet of Things and the development of an IoT application. For our project, we create two IoT nodes which are responsible for taking temperature measurements for the environment with the use of temperature sensors. The first chapter of our paper, is a presentation of the Internet of Things. We talk about the architecture of Internet things and about the possibilities and the problems that come along with its upgrowth. By the end of the chapter we also present some ways that the Internet of Things is going to change our everyday life. In the second chapter, we review some common development boards that can be used as nodes for an Internet of Things project and we describe the hardware that s been used for our project. Furthermore, the third chapter of our paper is about the alljoyn framework that is used in our project for the communication between the two nodes and our computer. This chapter includes the analysis of the architecture and the advantages of the alljoyn framework. Next, the fourth chapter of our paper includes a description of the software used for the implementation of our IoT project and in the following chapter we describe the whole process of our project s development. Finally, for the final chapter of our paper we give some thoughts and conclusions about all that we described above. 2

4 Περιεχόμενα Εισαγωγή... 1 Abstract... 2 Περιεχόμενα... 3 Εικόνες... 5 Πίνακες... 5 Κεφάλαιο 1: Internet of Things Αρχιτεκτονική του ΙοΤ Αισθητήρες και ενεργοποιητές Ενσωματωμένη επεξεργασία Συνδεσιμότητα και cloud Τεχνολογικές τάσεις Μέσα διευκόλυνσης Προβλήματα Αρχή διακυβέρνησης Ασφάλεια Ιδιωτικότητα Applications Health Intelligent home Μετακινήσεις Παραγωγή κατασκευές καλλιέργειες Εμπόριο Logistics Περιβάλλον Κεφάλαιο 2: Hardware Raspberry Pi 2/ Qualcomm DragonBoard 410C Arduino Yun Particle Photon Αισθητήρες Κεφάλαιο 3: Framework Αρχιτεκτονική Alljoyn Framework [2] Alljoyn Router

5 3.1.2 Alljoyn Bus Bus Attachment Ανακοίνωση και ανακάλυψη Συνεδρία και πύλη Bus Object Σύνοψη Πλεονεκτήματα Alljoyn Framework [2] Κεφάλαιο 4: Εργαλεία Λογισμικού Windows Windows 10 IoT Core Visual Studio 2015 Enterprize Windows 10 IoT Core Dashboard IoT Explorer for Alljoyn Κεφάλαιο 5: Υλοποίηση ΙοΤ κόμβων Προετοιμασία του περιβάλλοντος ανάπτυξης Introspection Μέθοδοι Ιδιότητες Σήματα Παραγωγός Δημιουργία Allljoyn Project Producer Service Class Κώδικας οδήγησης του αισθητήρα Αρχικοποίηση υλικού και AlljoynBus Έλεγχος παραγωγού Καταναλωτής Model- View- ViewModel [25] Δημιουργία των ViewModels Δημιουργία του View Τροποποίηση του MainPage.xaml Έλεγχος του καταναλωτή Επίλογος Βιβλιογραφία

6 Εικόνες Εικόνα 1.Εξέλιξη του αριθμού των συνδεδεμένων συσκευών... 7 Εικόνα 2. Βασική αρχιτεκτονική του IoT... 8 Εικόνα 3. Λειτουργία αισθητήρα Εικόνα 4.Παραδείγματα αισθητήρων Εικόνα 5. Παραδείγματα τοπολογιών δικτύου Εικόνα 6. Τεχνολογίες δικτύων Εικόνα 7. Εφαρμογές του ΙοΤ Εικόνα 8. Οικογένεια επεξεργαστών Cortex-M Εικόνα 9. Particle Photon Εικόνα 10. MPL3115A Εικόνα 11. SparkFun Weather Shield Εικόνα 12. Παράδειγμα ΙοΤ δικτύου Εικόνα 13. Alljoyn τοπικό δίκτυο Εικόνα 14. Alljoyn Router Εικόνα 15. Alljoyn Routers σε διάφορες συσκευές Εικόνα 16. Κατανεμημένος Alljoyn Bus Εικόνα 17. Alljoyn Session Εικόνα 18. Βασική αρχιτεκτονική του Alljoyn Εικόνα 19. IoT Dashboard Εικόνα 20. Visual Studio New Project Εικόνα 21. Visual Studio Add/Remove Alljoyn Interfaces Εικόνα 22. Σύνδεση MPL3115A Εικόνα 23. IoT Explorer for Alljoyn Εικόνα 24. Τελικό αποτέλεσμα Πίνακες Πίνακας 1.Χαρακτηριστικά Raspberry Pi 2 [30] Πίνακας 2.Χαρακτηριστικά Raspberry Pi 3 [30] Πίνακας 3.Χαρακτηριστικά DragonBoard 410C [30] Πίνακας 4. Χαρακτηριστικά Arduino Yun Πίνακας 5. Περιγραφή των ακροδεκτών του MPL3115A

7 Κεφάλαιο 1: Internet of Things Προβλέπεται ότι στο άμεσο μέλλον κάθε συσκευή θα έχει μια μοναδική ταυτότητα με αποτέλεσμα να δημιουργείται έτσι ένα δίκτυο από μοναδικά αναγνωρίσιμες συσκευές. Με αυτό τον τρόπο, αφού υπάρχει η δυνατότητα κάθε συσκευή γύρω μας να απευθυνθεί η μία στην άλλη και να επιβεβαιώσει την ταυτότητά της, όλες οι συσκευές θα μπορούν να ανταλλάσσουν πληροφορίες μεταξύ τους και να τις επεξεργάζονται για την λήψη αποφάσεων. Αυτό το δίκτυο συνδεδεμένων συσκευών που επικοινωνούν μεταξύ τους αποτελεί το λεγόμενο Internet of Things (IoT) [7]. Ο όρος IoT χρησιμοποιήθηκε πρώτη φορά το 1999 από τον Kevin Ashton αναφερόμενος σε ένα παγκόσμιο δίκτυο συσκευών συνδεδεμένων με ταυτοποίηση μέσω ραδιοσυχνοτήτων, RFID [6]. Η έκφραση Internet of Things αποτελείται από την ένωση δύο λέξεων και δύο εννοιών. Ο όρος Internet ορίζεται ως το παγκόσμιο σύστημα διασυνδεμένων δικτύων υπολογιστών, οι οποίοι χρησιμοποιούν μια καθιερωμένη ομάδα πρωτοκόλλων επικοινωνίας, ενώ ο όρος Thing αναφέρεται σε κάθε αντικείμενο του φυσικού κόσμου(φυσικό αντικείμενο) ή του εικονικού κόσμου(εικονικά αντικείμενα), το οποίο μπορεί να αναγνωριστεί και να ενσωματωθεί σε δίκτυα επικοινωνίας. Συνεπώς, η έκφραση Internet of Things σημαίνει ένα δίκτυο διασυνδεδεμένων αντικειμένων μοναδικά αναγνωρίσιμων, βασισμένο σε καθιερωμένα πρωτόκολλα επικοινωνίας [7][16]. Παρόλο που ο όρος Thing έχει αλλάξει τα τελευταία χρόνια, λόγω της τεχνολογικής εξέλιξης, ο στόχος της δημιουργίας ενός συστήματος που θα αντιλαμβάνεται πληροφορίες χωρίς τη βοήθεια του ανθρώπου παραμένει ο ίδιος. Έτσι το επόμενο τεχνολογικό βήμα είναι η εξέλιξη του τρέχοντος Internet σε ένα νέο δίκτυο διασυνδεμένων «αντικειμένων» που όχι μόνο θα αντιλαμβάνεται το περιβάλλον γύρω του και θα αλληλοεπιδρά με τον φυσικό κόσμο, αλλά θα χρησιμοποιεί ταυτόχρονα και τα υπάρχοντα πρότυπα του Internet για μεταφορά πληροφοριών και επικοινωνία. Η επανάσταση του Internet οδήγησε στην διασύνδεση μεταξύ ανθρώπων με ραγδαίους 6

8 ρυθμούς. Η επόμενη επανάσταση θα είναι η διασύνδεση μεταξύ «αντικειμένων» για την δημιουργία ενός «έξυπνου περιβάλλοντος». Ήδη, πριν το 2010, ο αριθμός των διασυνδεμένων συσκευών στον πλανήτη ξεπέρασε τον αριθμό των ανθρώπων και αναμένεται στα 50 δισεκατομμύρια μέχρι το 2020 [14][12]. Εικόνα 1.Εξέλιξη του αριθμού των συνδεδεμένων συσκευών Σε αυτή την αύξηση του αριθμού των συνδεδεμένων συσκευών έχουν συμβάλλει διάφορες τεχνολογικές εξελίξεις που έχουν καταστήσει δυνατή την σύνδεση περισσότερων και μικρότερων συσκευών με εύκολο και φθηνό τρόπο. Κάποιες από αυτές τις εξελίξεις αναφέρονται συνοπτικά παρακάτω [23] : Ευρεία συνδεσιμότητα. Η υψηλή ταχύτητας, δίχως κόστος, διαδικτυακή συνδεσιμότητα που απλώνεται παντού κυρίως μέσω ασύρματων υπηρεσιών και τεχνολογιών, μετατρέπει σχεδόν τα πάντα σε συνδέσιμα αντικείμενα. 7

9 Η καθιέρωση του πρωτόκολλου IP. Το IP αποτελεί το κυρίαρχο παγκοσμίως πρωτόκολλο για διαδικτύωση. Παρέχει μια καλώς-καθορισμένη πλατφόρμα λογισμικού και εργαλείων που μπορεί να ενσωματωθεί σε μια πληθώρα συσκευών εύκολα και χωρίς κόστος. Η πρόοδος στον κατασκευαστικό τομέα επιτρέπει σε εξελιγμένες τεχνολογίες υπολογισμού και επικοινωνιών να ενσωματωθούν σε αντικείμενα πολύ μικρού μεγέθους. Η πρόοδος στην ανάλυση δεδομένων. Νέοι αλγόριθμοι και η ραγδαία αύξηση σε υπολογιστική ισχύ, αποθηκευτικό χώρο δεδομένων και υπηρεσίες cloud επιτρέπουν την συλλογή, την συσχέτιση και την ανάλυση μεγάλων ποσοτήτων δεδομένων δημιουργώντας έτσι νέες δυνατότητες για εξαγωγή πληροφοριών και γνώσεων. Η ανάπτυξη του cloud computing. Κατά κάποιο τρόπο λοιπόν, το Internet of Things αποτελεί το αποτέλεσμα της ένωσης διάφορων τεχνολογιών υπολογισμού και συνδεσιμότητας που αναπτύσσονται τα τελευταία χρόνια [23]. 1.1 Αρχιτεκτονική του ΙοΤ Υπάρχουν τρία βασικά τμήματα που αποτελούν την τεχνολογική ραχοκοκαλιά του ΙοΤ [14] : Αισθητήρες και ενεργοποιητές Ενσωματωμένη επεξεργασία (Embedded processing) Συνδεσιμότητα και cloud Εικόνα 2. Βασική αρχιτεκτονική του IoT 8

10 1.1.1 Αισθητήρες και ενεργοποιητές Τα «έξυπνα» αντικείμενα χρησιμοποιούν αισθητήρες και ενεργοποιητές για να αλληλοεπιδράσουν με το περιβάλλον γύρω τους. Συγκεκριμένα, η χρήση των αισθητήρων στοχεύει στην μέτρηση της κατάστασης του περιβάλλοντος και των ενεργοποιητών στην αλλαγή ή την επιρροή του περιβάλλοντος. Ουσιαστικά, οι αισθητήρες παίρνουν ένα μηχανικό, οπτικό, μαγνητικό ή θερμικό σήμα και το μετατρέπουν σε τάση και ρεύμα. Αυτά τα δεδομένα μπορούν στην συνέχεια να επεξεργαστούν. Η λειτουργία τους φαίνεται και στο παρακάτω σχήμα. Από την άλλη πλευρά, οι ενεργοποιητές ακολουθούν την ίδια διαδικασία αλλά αντίθετα. Τάση και ρεύμα προκαλούν μια μηχανική, οπτική, μαγνητική ή θερμική αλλαγή στο φυσικό περιβάλλον [14]. Εικόνα 3. Λειτουργία αισθητήρα. Στον παρακάτω πίνακα εμφανίζονται κάποια παραδείγματα αισθητήρων που χρησιμοποιούνται στο ΙοΤ. Οι αισθητήρες επιλέγονται με βάση το κόστος, την κατανάλωση ενέργειας καθώς και με την ακρίβεια και την ανάλυσή τους [14]. 9

11 Εικόνα 4.Παραδείγματα αισθητήρων. Εικόνα 3. Παραδείγματα αισθητήρων Ενσωματωμένη επεξεργασία Η ενσωματωμένη επεξεργασία είναι αυτή που δίνει στα «έξυπνα» αντικείμενα την νοημοσύνη τους. Αυτή η λειτουργία, συνήθως, προσφέρεται από έναν μικροεπεξεργαστή, ο οποίος τρέχει το λογισμικό του «έξυπνου» αντικειμένου και είναι υπεύθυνος για την σύνδεση των αισθητήρων και των ενεργοποιητών με κάποιο ραδιοφωνικό πομποδέκτη. Βασικά, ο μικροελεγκτής είναι ένας μικρός, χαμηλής κατανάλωσης, υπολογιστής σε chip χωρίς οθόνη, πληκτρολόγιο ή ποντίκι. Για την 10

12 επιλογή του μικροελεγκτή λαμβάνονται υπόψη η απόδοσή του, η τιμή και η κατανάλωση ενέργειας. Για παράδειγμα, δεν είναι λογικό να επιλεχθεί ένας υψηλής απόδοσης, ακριβός και μεγάλης κατανάλωσης ενέργειας μικροελεγκτής, εάν η μοναδική του λειτουργία είναι η περιοδική μέτρηση της θερμοκρασίας [14] Συνδεσιμότητα και cloud Η συνδεσιμότητα μεταξύ των έξυπνων αντικειμένων πραγματοποιείται με διάφορες μορφές. Αρχικά, τα «έξυπνα» αντικείμενα μπορούν να επωφεληθούν από έναν αριθμό διαφορετικών τοπολογιών δικτύου (Εικόνα 4). Στη συνέχεια, μπορούν να χρησιμοποιήσουν μια πληθώρα διαφορετικών τεχνολογιών επικοινωνίας για να δημιουργήσουν τις παραπάνω τοπολογίες (Εικόνα 5). Για παράδειγμα, ένα τοπικό δίκτυο(lan) με τοπολογία αστέρα μπορεί να στηθεί είτε με Wi-Fi είτε με ZigBee, κτλ [14]. Εικόνα 5. Παραδείγματα τοπολογιών δικτύου. 11

13 Εικόνα 6. Τεχνολογίες δικτύων. 1.2 Τεχνολογικές τάσεις Στα πλαίσια, λοιπόν, αυτής της νέας πραγματικότητας προβλέπονται κάποιες τεχνολογικές τάσεις, οι οποίες απορρέουν από την προσπάθεια καθιέρωσης του Internet of Things [7]. Η πρώτη είναι η δραματική αύξηση του μεγέθους των δεδομένων που συλλέγονται και ανταλλάσσονται. Καθώς το τρέχον δίκτυο δεν είναι κατάλληλο για αυτή την εκθετική αύξηση στην κίνηση δεδομένων, θα πρέπει να γίνουν αλλαγές στο τρέχον δίκτυο και στις αρχιτεκτονικές αποθήκευσης. Επιπλέον, θα πρέπει να δημιουργηθούν νέοι τρόποι και μηχανισμοί για την εύρεση, την απόκτηση και την μετάδοση δεδομένων. Ο λόγος γι αυτό είναι η αύξηση του αριθμού των συσκευών που συλλέγουν και ανταλλάσσουν πληροφορίες όταν το Internet of Things γίνει πραγματικότητα. Η ενέργεια που χρειάζεται για την λειτουργία των «έξυπνων» συσκευών θα μειωθεί σημαντικά. Μακροπρόθεσμος στόχος του IoT είναι κάθε συσκευή 12

14 ή σύστημα να έχει μηδέν εντροπία, δηλαδή να συλλέγει ή να παράγει μόνο του την ενέργεια που χρειάζεται. Η σμίκρυνση των συσκευών αποτελεί ένα ακόμα βήμα προς το μέλλον του IoT Η πολυπλοκότητα των νέων συστημάτων απαιτεί την δημιουργία καινοτομιών στο χώρο του αυτοματισμού. Τα νέα συστήματα θα πρέπει να είναι πιο ανεξάρτητα και αυτοδιαχειριζόμενα. 1.3 Μέσα διευκόλυνσης Υπάρχουν πολλές σύγχρονες τεχνολογίες που ευνοούν την ανάπτυξη του ΙοΤ. Οι πλειοψηφία αυτών των τεχνολογιών αναφέρεται κυρίως στο δίκτυο που χρησιμοποιείται για την επικοινωνία μεταξύ των κόμβων που συνθέτουν μια εγκατάσταση ΙοΤ. Οι συσκευές που συμμετέχουν σε μια εφαρμογή ΙοΤ στην πλειοψηφία τους θα πρέπει να έχουν τρείς βασικές ιδιότητες [19] : Να έχουν μια συνεχόμενη ροή δεδομένων μεταξύ τους Να έχουν χαμηλή κατανάλωση ενέργειας Να μπορούν να επικοινωνούν σε μικρές αποστάσεις Με γνώμονα τις τρεις παραπάνω ιδιότητες χρησιμοποιούνται κάποια συγκεκριμένα πρωτόκολλα και τεχνολογίες ασύρματης επικοινωνίας. Μερικές από αυτές τις τεχνολογίες παρουσιάζονται παρακάτω [15][19][1][28] : Οι RFID(Radio Frequency Identification) τεχνολογίες. Ο όρος RFID αναφέρεται σε τεχνολογίες που χρησιμοποιούν ραδιοκύματα για να προσδιορίσουν ανθρώπους ή αντικείμενα. Οι NFC(Near Field Communication) τεχνολογίες. Οι NFC τεχνολογίες αποτελούν ένα σετ από πρωτόκολλα επικοινωνίας που επιτρέπουν σε δύο ηλεκτρονικές συσκευές να επικοινωνήσουν μεταξύ τους όταν βρίσκονται σε απόσταση πέντε εκατοστών η μία από την άλλη. Η NFC χρησιμοποιείται στις μέρες για πρόσβαση σε δημόσια μέσα μεταφοράς. Η ανάπτυξη νέων οπτικών τεχνολογιών όπως το Li-Fi μπορεί να συμβάλει καθοριστικά στην ανάπτυξη του ΙοΤ. Το Li-Fi αποτελεί μια μορφή 13

15 επικοινωνίας μέσω ορατού φωτός το οποίο μπορεί να αντικαταστήσει την RF επικοινωνία στην μεταφορά δεδομένων. (RF-limitations μπορώ να γράψω) Bluetooth Low Energy (BLE). To BLE αποτελεί μια τεχνολογία ασύρματου τοπικού δικτύου. Σε σχέση με την κλασσική Bluetooth τεχνολογία προσφέρει αρκετά χαμηλότερη κατανάλωση ενέργειας και κόστος, ενώ διατηρεί την ίδια ακτίνα επικοινωνίας. ZigBee. To ZigBee αποτελεί μια ομάδα πρωτόκολλων επικοινωνίας που χρησιμοποιούνται για να δημιουργηθεί ένα προσωπικό τοπικό δίκτυο με μικρούς, χαμηλής κατανάλωσης, ψηφιακούς ραδιοπομπούς. Z-Wave. To Z-Wave είναι ένα πρωτόκολλο ασύρματης επικοινωνίας, το οποίο χρησιμοποιείται κυρίως για οικιακούς αυτοματισμούς. Προσφέρει μια αξιόπιστη κι απλή μέθοδο για τον ασύρματο έλεγχο του φωτισμού, του συστήματος ασφαλείας και άλλων στοιχείων του οικιακού αυτοματισμού. Ο έλεγχος του συστήματος Z-Wave μπορεί να γίνει και μέσω Internet. Το IPv6 αποτελεί το τελευταίο Διαδικτυακό Πρωτόκολλο(IP) και αναμένεται να αντικαταστήσει το IPv4, λύνοντας με αυτόν τον τρόπο το αναμενόμενο πρόβλημα της εξάντλησης των διαθέσιμων IP διευθύνσεων. Επομένως, ο καινούριος αριθμός των νέων διευθύνσεων θα επαρκεί για να καλύψει τις ανάγκες για διευθυνσιοδότηση που δημιουργεί το Internet of Things. 1.4 Προβλήματα Όπως και κάθε άλλη νέα τεχνολογία που εμφανίζεται έτσι και η ανάπτυξη του Internet of Things δημιουργεί κάποιες ανησυχίες και προβλήματα που πρέπει να αντιμετωπιστούν πριν εδραιωθεί Αρχή διακυβέρνησης Ένα από τα βασικά στοιχεία του ΙοΤ είναι τα δεδομένα. Για την δημιουργία «έξυπνων», συνδεδεμένων μεταξύ τους συσκευών, είναι απαραίτητη η πρόσβαση, η αποθήκευση και η επεξεργασία δεδομένων. Για το λόγο αυτό οι εταιρείες που δραστηριοποιούνται στο χώρο του ΙοΤ συλλέγουν δεδομένα από πολλές διαφορετικές πηγές και τα αποθηκεύουν για μελλοντική επεξεργασία. Δημιουργούνται έτσι κίνδυνοι 14

16 όσον αφορά την ασφάλεια και την ιδιωτικότητα ευαίσθητων πληροφοριών [26]. Ακόμη, παρουσιάζονται επιπλέον θέματα αναφορικά με την ιδιωτικότητα των δεδομένων του χρήστη και την απόφασή του για τον τρόπο χρήσης τους [9]. Καθίσταται, λοιπόν, επιτακτική η ανάγκη δημιουργίας μιας αρχής που θα ελέγχει την εφαρμογή του ΙοΤ και θα προσπαθεί να αντιμετωπίσει τα προβλήματα που προκύπτουν από την εφαρμογή του, όπως αναφέρθηκαν παραπάνω. Ο FTC(Federal Trade Commission) σε μια αναφορά του για τα άνωθεν προβλήματα, πρότεινε τα εξής [24] : Όσον αφορά την ασφάλεια των δεδομένων, οι εταιρείες στο χώρο του ΙοΤ θα πρέπει να εξασφαλίζουν ότι η συλλογή, η αποθήκευση και η επεξεργασία των δεδομένων θα είναι ασφαλής σε κάθε περίπτωση. Επίσης, σκόπιμη είναι και η κρυπτογράφηση των δεδομένων σε κάθε στάδιο. Από την μεριά τους, οι χρήστες θα πρέπει να έχουν επιλογή ως προς τα ποια δεδομένα θα μοιράζονται με τις εταιρίες, ενώ παράλληλα θα πρέπει να ενημερώνονται σε περίπτωση που τα δεδομένα τους εκτεθούν σε τρίτους. Για την ελαχιστοποίηση των δεδομένων, οι επιχειρήσεις θα πρέπει να συλλέγουν μόνο τα δεδομένα που χρειάζονται και να διατηρούν τις πληροφορίες που συλλέχθηκαν μόνο για ένα περιορισμένο χρονικό διάστημα Ασφάλεια Ένα μεγάλο ζήτημα που δημιουργεί η ραγδαία ανάπτυξη του Internet of things είναι η εξασφάλιση της ασφάλειας των συστημάτων που το συνθέτουν. Έτσι καθώς το ΙοΤ αναπτύσσεται οι ηλεκτρονικές επιθέσεις αναμένονται να μετατραπούν όλο και περισσότερο σε φυσικές απειλές [8]. Ήδη πολλές οικιακές συσκευές που έχουν αρχίσει να συνδέονται στο σπίτι όπως κάμερες, τηλεοράσεις, κτλ, μπορούν να βοηθήσουν στην κατασκοπεία των κατοίκων μέσα στο ίδιο το σπίτι τους. Συσκευές στο αυτοκίνητο που ελέγχονται από υπολογιστή και αφορούν τον έλεγχο των φρένων, της μηχανής ή κάποιου άλλου μηχανικού μέρους είναι ιδιαίτερα ευαίσθητες στην παραβίαση από επιτιθέμενους, οι οποίοι αποκτούν πρόσβαση στο δίκτυο του αυτοκινήτου. Επιπλέον, στον τομέα της υγείας, υπάρχει μεγάλη ανάγκη για ασφάλεια. Ο έλεγχος μηχανημάτων που συνδέονται σε ένα δίκτυο από άτομα χωρίς εξουσιοδότηση μπορεί να αποβεί μοιραίος. Χαρακτηριστικό παράδειγμα αποτελεί ο βηματοδότης, μηχάνημα που είναι 15

17 υπεύθυνο για τη συντήρηση της ζωής του ανθρώπου στον οποίο εφαρμόζονται. Γίνεται φανερό, λοιπόν, ότι αν δεν ληφθούν κατάλληλα μέτρα για την εξασφάλιση της ασφάλειας των συστημάτων απέναντι σε μη εξουσιοδοτημένη πρόσβαση, η εφαρμογή του ΙοΤ στην καθημερινότητα μας εγκυμονεί πολλούς κινδύνους [29]. Στη συνέχεια, παρουσιάζονται κάποιοι από τους τρόπους που το Internet of Things μπορεί να δημιουργήσει κενά ασφαλείας [23] : Πολλές ΙοΤ συσκευές, όπως οι αισθητήρες, είναι σχεδιασμένες ώστε να αναπτυχθούν σε μεγάλη κλίμακα. Ως αποτέλεσμα η ποσότητα των συνδέσεων μεταξύ αυτών των συσκευών θα είναι πρωτοφανής. Ακόμη, πολλές από αυτές τις συσκευές θα μπορούν να δημιουργούν συνδέσμους και να επικοινωνούν με άλλες συσκευές από μόνες τους με απρόβλεπτο και δυναμικό τρόπο. Για το λόγο αυτό, τα εργαλεία και οι στρατηγικές που χρησιμοποιούνται σε τέτοια συστήματα σήμερα θα χρειαστούν επαναπροσδιορισμό. Η πλειοψηφία των ΙοΤ συστημάτων θα αποτελείται από ίδιες ή σχεδόν ίδιες συσκευές. Αυτή η ομοιογένεια μεγαλώνει το αντίκτυπο ενός κενού ασφαλείας σε όλες τις συσκευές που έχουν τα ίδια χαρακτηριστικά. Για παράδειγμα, ένα πρόβλημα ασφαλείας σε ένα πρωτόκολλο επικοινωνίας μιας ορισμένης μάρκας συνδεδεμένων-στο-διαδίκτυο λαμπών μπορεί να υπάρχει και σε κάθε μάρκα συσκευής που χρησιμοποιεί το ίδιο πρωτόκολλο επικοινωνίας ή έχουν κοινά χαρακτηριστικά κατασκευής. Ένας αριθμός από ΙοΤ συσκευές θα αναπτυχθεί με αναμενόμενη διάρκεια ζωής πολύ μεγαλύτερη από αυτή που σχετίζεται με άλλους εξοπλισμούς υψηλής τεχνολογίας. Επιπλέον, αυτές οι συσκευές μπορεί να αναπτυχθούν σε περιπτώσεις που είναι δύσκολη ή αδύνατη η επαναρύθμιση και η αναβάθμισή τους. Επίσης οι ίδιες συσκευές μπορεί να συνεχίσουν να λειτουργούν και σε περίπτωση που η εταιρεία που τις δημιούργησε διακόψει τη λειτουργία της με αποτέλεσμα να μείνουν χωρίς μακροχρόνια υποστήριξη. Τα παραπάνω σενάρια αποδεικνύουν ότι διάφοροι μηχανισμοί ασφαλείας που θεωρούνται επαρκείς κατά την εγκατάσταση των συσκευών ενδέχεται να μην είναι αρκετοί κατά την διάρκεια ζωής της συσκευής με τις ολοένα αυξανόμενες απειλές ασφαλείας. Η μακροχρόνια υποστήριξη και διαχείριση των ΙοΤ συσκευών αποτελεί ένα σημαντικό πρόβλημα ασφάλειας. 16

18 Διάφορες ΙοΤ συσκευές λειτουργούν με τέτοιο τρόπο ώστε ο χρήστης έχει λίγη επίγνωση όσον αφορά τις εσωτερικές διεργασίες της συσκευής και των δεδομένων που αυτή παράγει. Αυτό δημιουργεί ένα κενό ασφαλείας όπου ο χρήστης νομίζει ότι η συσκευή εκτελεί κάποιες συγκεκριμένες λειτουργίες ενώ στην πραγματικότητα μπορεί να εκτελεί κάποιες μη επιθυμητές λειτουργίες ή να συλλέγει περισσότερα δεδομένα από ότι ο χρήστης επιθυμεί. Η λειτουργία της συσκευής μπορεί επίσης να αλλάξει όταν ο κατασκευαστής προσφέρει μια αναβάθμιση χωρίς ειδοποίηση αφήνοντας τον χρήστη εκτεθειμένο σε όποιες αλλαγές αποφάσισε ο κατασκευαστής να κάνει. Τέλος κάποιες ΙοΤ συσκευές θα τοποθετηθούν σε μέρη όπου η φυσική ασφάλεια είναι δύσκολη ή αδύνατη να επιτευχθεί. Με αυτό τον τρόπο, οι επιτιθέμενοι θα μπορούν να έχουν φυσική πρόσβαση στη συσκευή δημιουργώντας έτσι σοβαρές απειλές ασφαλείας Ιδιωτικότητα Οι κόμβοι στο περιβάλλον του ΙοΤ αποστέλλουν δεδομένα αυτόνομα, ενώ ταυτόχρονα λειτουργούν σε συνεργασία με άλλους κόμβους και επικοινωνούν μεταξύ τους. Έτσι όταν δεδομένα από διαφορετικούς κόμβους συλλεχθούν και αναλυθούν μπορούν να προκύψουν ευαίσθητες πληροφορίες. Η συλλογή τέτοιων πληροφοριών ενδέχεται να οδηγήσει σε κοινωνικό έλεγχο και πολιτική χειραγώγηση. Οι μελετητές του ΙοΤ έχουν εντοπίσει προβλήματα ιδιωτικότητας σε όλα τα ενδιαφερόμενα μέρη του ΙοΤ από τους κατασκευαστές μέχρι τους προγραμματιστές εφαρμογών και τους τελικούς καταναλωτές. Μερικά από τα προβλήματα που τόνισαν παρουσιάζονται παρακάτω [31] : Συγκατάθεση Χρήστη (User Consent): Οι χρήστες με κάποιο τρόπο θα πρέπει να δίνουν την συγκατάθεσή τους στην συλλογή δεδομένων τους. Ελευθερία επιλογής (Freedom of choice): Κάθε πρότυπο προστασίας της ιδιωτικότητας θα πρέπει να προωθεί την ελευθερία της επιλογής. Οι χρήστες θα πρέπει να έχουν την επιλογή να επιλέξουν αν θα εμπλακούν σε μια επικοινωνία ή όχι. Ανωνυμία (Anonymity): Όλες οι πλατφόρμες του ΙοΤ θα πρέπει να δίνουν ιδιαίτερη προσοχή στην ανωνυμία του χρήστη κατά την αποστολή δεδομένων. 17

19 Με αυτό τον τρόπο, δε θα μπορεί να δημιουργηθεί ένα λεπτομερές προφίλ του χρήστη με βάση την συμπεριφορά των «αντικειμένων» που χρησιμοποιεί. Για να μην προσφέρει, λοιπόν, το ΙοΤ δύναμη σε κάποια ενδιαφερόμενα άτομα πάνω σε κάποια άλλα μέσω της συλλογής ευαίσθητων πληροφοριών από την χρήση των υπηρεσιών του, θα πρέπει να δοθεί ιδιαίτερη βάση στην εξασφάλιση της ιδιωτικότητας των χρηστών και την προστασία των προσωπικών τους δεδομένων. Ορισμένες ανησυχίες που πρέπει να ληφθούν υπόψη σχετικά με την ιδιωτικότητα στον χώρο του Internet of Things είναι οι εξής [23] : Το online πρότυπο ιδιωτικότητας που χρησιμοποιείται σήμερα όπου ο χρήστης μπορεί να εκφράσει τις ιδιωτικές του προτιμήσεις αλληλοεπιδρώντας με την οθόνη ενός υπολογιστή ή μιας κινητής συσκευής(πχ πατώντας «Συμφωνώ»), δεν καθίσταται πάντα εφικτό όταν ένα σύστημα δεν προσφέρει κάποιο μηχανισμό για αλληλοεπίδραση. Οι ΙοΤ συσκευές συχνά δεν περιλαμβάνουν κάποια διεπαφή χρήστη για την ρύθμιση των προσωπικών προτιμήσεων ιδιωτικότητας. Έτσι ο χρήστης δεν έχει κανένα έλεγχο ή επίγνωση του τρόπου με τον οποίο τα προσωπικά του δεδομένα συλλέγονται και χρησιμοποιούνται. Αυτό δημιουργεί ένα χάσμα ανάμεσα στις προτιμήσεις ιδιωτικότητας του χρήστη και στη συμπεριφορά συλλογής δεδομένων των ΙοΤ συσκευών. Υποθέτοντας ότι μπορεί να δημιουργηθεί ένας αποτελεσματικός μηχανισμός που θα επιτρέπει στον χρήστη να εκφράζει τις προτιμήσεις ιδιωτικότητάς στις ΙοΤ συσκευές, ο μηχανισμός αυτός οφείλει να μπορεί να διαχειριστεί τον μεγάλο αριθμό συσκευών που ο χρήστης θα ελέγχει. Δεν είναι δυνατό ο χρήστης να αλληλοεπιδρά απευθείας με καθεμιά συσκευή που χρησιμοποιεί στην καθημερινότητά του για να εκφράσει τις προτιμήσεις του. Αντίθετα οι μηχανισμοί που θα εξασφαλίζουν την ιδιωτικότητα θα πρέπει να μπορούν να ανταπεξέλθουν στο μέγεθος του IoT και συγχρόνως να παραμένουν κατανοητοί και πρακτικοί προς τον χρήστη. Οι απαιτήσεις για ιδιωτικότητα σε δημόσια μέρη διαφέρουν από τις αντίστοιχες απαιτήσεις σε ιδιωτικά μέρη και το ΙοΤ απειλεί αυτές τις απαιτήσεις. Για παράδειγμα, συστήματα παρακολούθησης, όπως κάμερες παρακολούθησης και συσκευές εντοπισμού που λειτουργούσαν σε δημόσια μέρη, τώρα μεταφέρονται σε ιδιωτικά όπως το σπίτι και το αυτοκίνητο όπου οι απαιτήσεις για 18

20 ιδιωτικότητα είναι πολύ διαφορετικές. Αλλά ακόμα και στα δημόσια μέρη η ιδιωτικότητα απειλείται συνεχώς με την διαρκώς αυξανόμενη παρακολούθηση σε μέρη όπως πάρκα, σταθμούς τρένων, κτλ. Επιπλέον πολλές φορές οι συσκευές ΙοΤ λειτουργούν με τέτοιο τρόπο ώστε η εγγύτητα μπορεί να εκθέσει διάφορα άτομα με την ίδια συλλογή δεδομένων. Ένας αισθητήρας εντοπισμού θέσης σε ένα αυτοκίνητο παρακολουθεί την θέση όλων των επιβατών του αυτοκινήτου ανεξάρτητα αν όλοι θέλουν να παρακολουθείται η θέση τους ή όχι. Σε τέτοιου είδους καταστάσεις δύσκολα διακρίνονται οι προτιμήσεις ιδιωτικότητας κάθε ατόμου. Καταληκτικά, η ανάλυση των δεδομένων που συλλέγονται από τις ΙοΤ συσκευές μπορεί να οδηγήσει σε λεπτομερή προφίλ των χρηστών που με τη σειρά τους ενδέχεται να οδηγήσουν σε διακρίσεις ή άλλα προβλήματα. Με αυτό τον τρόπο, το άτομο μπορεί να εκτεθεί σε φυσικό, οικονομικό, εγκληματικό κίνδυνο ή κίνδυνο δυσφήμισης. 1.5 Applications Εικόνα 7. Εφαρμογές του ΙοΤ 19

21 1.5.1 Health Ένας τομέας που θα επηρεαστεί από την ραγδαία εξέλιξη του ΙοΤ είναι αυτός της υγείας. Βιοδιασπώμενα υλικά θα επιτρέπουν την εισαγωγή αισθητήρων και καμερών στο εσωτερικό του οργανισμού του ασθενή για καλύτερη και πιο άμεση διάγνωση. Έτσι θα μπορούν για παράδειγμα να εντοπιστούν αντιγόνα σε μεταμοσχευμένα όργανα ώστε να προληφθεί η απόρριψη τους. Αισθητήρες πάνω στον ασθενή θα μετρούν ανά πάσα στιγμή τις βιολογικές του ενδείξεις. Με αυτόν τον τρόπο ο ασθενής και το νοσοκομείο θα πληροφορείται άμεσα για οποιαδήποτε κρίσιμη αλλαγή στην υγεία του προλαμβάνοντας έτσι πολλά προβλήματα. Επίσης, ο ασθενής μπορεί να αποφύγει τον συνωστισμό στα νοσοκομεία για check-up εφόσον γνωρίζει ότι η υγεία του είναι καλή. Παράλληλα, αυτό το νέο σύστημα απομακρυσμένης εποπτείας θα επιτρέψει την εξοικονόμηση χρημάτων και ανθρώπινου δυναμικού από την φροντίδα των ηλικιωμένων ανθρώπων προσφέροντάς τους ταυτόχρονα μεγαλύτερη ανεξαρτησία. Στο τομέα της φαρμακευτικής επίσης αναμένονται μεγάλες αλλαγές. Με την ενσωμάτωση της βιοδιασπώμενης σκόνης στα φάρμακα θα μπορεί να ελέγχεται η σωστή λήψη των φαρμάκων σύμφωνα με τη δοσολογία ενώ σε περίπτωση λάθους ή υπερδοσολογίας θα είναι εύκολη η αναγνώριση της ουσίας που λήφθηκε από την έξυπνη σκόνη και θα είναι πιο άμεση η αντιμετώπιση [13][17][7] Intelligent home Ένας από τους τομείς με την μεγαλύτερη ανάπτυξη τα τελευταία χρόνια, λόγω της εξέλιξης του ΙοΤ, είναι αυτός του οικιακού αυτοματισμού. Η δημιουργία ενός έξυπνου σπιτιού αποτελεί πια πραγματικότητα. Το νέο σπίτι θα είναι πιο οικονομικό και πιο φιλικό προς το περιβάλλον καθώς θα μετρά την κατανάλωση ενέργειας και νερού και θα εξασφαλίζει την εξοικονόμηση. Ο χρήστης θα μπορεί να ελέγχει όλες τις ηλεκτρονικές συσκευές από οπουδήποτε βρίσκεται, παραδείγματος χάριν θα έχει την δυνατότητα να κλείνει και να ανοίγει τα φώτα, τον θερμοσίφωνα, κτλ. Ακόμη, κάθε συσκευή θα ενημερώνει τον χρήστη για την κατάστασή της, καθιστώντας ευκολότερο τον έλεγχο για παραλείψεις του χρήστη όπως ανοιχτή πόρτα στο ψυγείο ή αναμμένος φούρνος. Επιπλέον, με αισθητήρες θα ελέγχεται η κατάσταση του περιβάλλοντος του σπιτιού και θα εντοπίζονται τυχόν διαρροές ή άλλες επικίνδυνες καταστάσεις. Ένα 20

22 ακόμα χαρακτηριστικό του έξυπνου σπιτιού είναι η ασφάλειά του. Το βελτιωμένο σύστημα ασφαλείας θα επιτρέπει την πρόσβαση στις κάμερες του σπιτιού μέσω Internet, το κεντρικό κλείδωμα όλων των παραθύρων και των εισόδων, κτλ. Σημαντικό πλεονέκτημα του «έξυπνου» σπιτιού αποτελεί επίσης η διευκόλυνση της επίβλεψης των ηλικιωμένων, όπως συζητήθηκε παραπάνω [13][17][7] Μετακινήσεις Τα οχήματα στις μέρες μας αποκτούν συνεχώς περισσότερη νοημοσύνη με την βοήθεια του ΙοΤ. Τα νέα αυτοκίνητα είναι σε θέση να εντοπίζουν και να πληροφορούν τον οδηγό για τυχόν προβλήματα στο αυτοκίνητο καθώς και να καθορίζουν πότε απαιτούν service. Ακόμη με την τοποθέτηση αισθητήρων πάνω στο αυτοκίνητο ο οδηγός πληροφορείται για την απόσταση από τα γύρω αντικείμενα. Επίσης το αυτοκίνητο είναι σε θέση να αντιδρά σε καταστάσεις ανάγκης, για παράδειγμα φρενάροντας όταν η απόσταση από το μπροστινό αυτοκίνητο γίνει πολύ μικρή. Τα νέα συστήματα πλοήγησης που ενσωματώνονται στα αυτοκίνητα φροντίζουν για την ελαχιστοποίηση της διαδρομής με βάση πληροφορίες για την κίνηση και άλλα στοιχεία που λαμβάνουν σε πραγματικό χρόνο. Ένα ακόμα χαρακτηριστικό των νέων συστημάτων πλοήγησης θα είναι η ειδοποίηση του οδηγού για διαθέσιμες θέσεις πάρκινγκ στην πόλη αποτρέποντας περιττές διαδρομές για την εύρεση θέσης. Πολλά πλεονεκτήματα στο τομέα των μεταφορών θα προσφέρει επίσης η ηλεκτρονική συλλογή διοδίων. Με την χρήση της τεχνολογίας RFID ο οδηγός δεν θα είναι πλέον υποχρεωμένος να σταματά και να περιμένει στα διόδια μιας και η πληρωμή θα γίνεται αυτόματα με το που περνάει, συμβάλλοντας στη μείωση του απαραίτητου ανθρώπινου δυναμικού [13][7][17] Παραγωγή κατασκευές καλλιέργειες Σημαντικές βελτιώσεις αναμένονται και στο χώρο της παραγωγής. Στην βιομηχανία η πρώτη εφαρμογή του ΙοΤ αφορά την πρόβλεψη της συντήρησης των μηχανών. Ο στόχος είναι η δημιουργία έξυπνων μηχανών που θα προβλέπουν το πότε χρειάζεται συντήρηση προλαμβάνοντας προβλήματα στη λειτουργία τους, μειώνοντας τον χρόνο εκτός λειτουργίας και αυξάνοντας έτσι την παραγωγικότητα των μονάδων. Στην αγροτική παραγωγή θα γίνεται χρήση αισθητήρων οι οποίοι θα μετρούν την 21

23 κατάσταση του εδάφους και την ανάπτυξη των φυτών. Με αυτό τον τρόπο τα φυτά ποτίζονται ανάλογα με τις ανάγκες τους και προλαμβάνονται πολλές ασθένειες. Η παραγωγή λοιπό αυξάνεται και βελτιώνεται η ποιότητά της ενώ ταυτόχρονα γίνεται πιο αυτοματοποιημένη. Τέλος ο έλεγχος και η εποπτεία μεγάλων αστικών και οδικών υποδομών θα αποτελέσει μια βασική εφαρμογή του ΙοΤ. Η υποδομή του ΙοΤ μπορεί να χρησιμοποιηθεί για την εποπτεία αλλαγών στην κατασκευαστική δομή που μπορεί να υπονομεύσουν την ασφάλεια της κατασκευής. Μπορεί επίσης να χρησιμοποιηθεί για τον αποτελεσματικό προγραμματισμό συντήρησης ή επισκευής μεγάλων έργων όπως για παράδειγμα μια γέφυρα μειώνοντας το χρόνο που βρίσκονται εκτός λειτουργίας [13][15][17][7][11] Εμπόριο Ένας από τους τομείς που θα βιώσει πρώτα την αλλαγή λόγω του ΙοΤ είναι εκείνος των εμπορικών συναλλαγών. Με την αντικατάσταση του barcode με RFID tags πάνω στα προϊόντα τα σύγχρονα καταστήματα μπορούν να αξιοποιήσουν πολλές από τις νέες τεχνολογίες για να βελτιώσουν την εμπειρία του καταναλωτή και να αυξήσουν την παραγωγικότητά τους. Στο νέο έξυπνο κατάστημα ο καταναλωτής θα μπορεί, σαρώνοντας με το κινητό του το RFID tag πάνω στα προϊόντα, να πάρει όλες τις πληροφορίες που χρειάζεται για το προϊόν καθώς και online κριτικές για αυτό. Ακόμη η χρήση έξυπνων καροτσιών μπορεί να βοηθήσει τους πελάτες να οδηγηθούν στους διαδρόμους ενός καταστήματος σύμφωνα με τα προϊόντα που έχουν εισάγει σε μια ηλεκτρονική λίστα. Όσον αφορά το κατάστημα, «έξυπνα» ράφια θα είναι σε θέση να ελέγχουν το υπόλοιπο των προϊόντων και να ενημερώνουν πότε πρέπει να γίνει νέα παραγγελία καθώς και πότε κάποιο προϊόν έχει ξεπεράσει την ημερομηνία λήξης του. Επιπλέον με τα νέα RFID tags οι αλλαγές στην τιμή των προϊόντων γίνεται εύκολα και σε πραγματικό χρόνο [7][13] Logistics Κάθε προϊόν πριν φτάσει στον καταναλωτή έχει διανύσει μια απόσταση από το εργοστάσιο παραγωγής και την αποθήκη που βρισκόταν. Έτσι ένας ακόμη τομέας που ευνοείται από την ανάπτυξη του ΙοΤ είναι αυτός της μεταφοράς και αποθήκευσης των προϊόντων. Η χρήση αισθητήρων για την μέτρηση κραδασμών, το άνοιγμα κάποιας 22

24 συσκευασίας, την θερμοκρασία και την υγρασία εξασφαλίζει ότι το προϊόν που φτάνει στην αποθήκη είναι εργοστασιακών προδιαγραφών και δεν έχει υποστεί καμία αλλοίωση κατά την μεταφορά του. Με τους ίδιους αισθητήρες μέτρησης θερμοκρασίας και υγρασίας μπορεί να εξασφαλιστούν και οι συνθήκες αποθήκευσης των προϊόντων κατά την παραμονή τους στην αποθήκη και να προληφθεί η καταστροφή τους από κάποια κακοτυχία. Επιπλέον με την χρήση RFID tags πάνω στα προϊόντα διευκολύνεται η εύρεση της τοποθεσίας τους μέσα στην αποθήκη για την γρήγορη φόρτωσή τους και για την αποφυγή τοποθέτησης επικίνδυνων μεταξύ τους προϊόντων σε κοντινή απόσταση. Για παράδειγμα, μια προειδοποίηση θα στέλνεται όταν αποθηκεύονται εύφλεκτα προϊόντα δίπλα σε προϊόντα που περιέχουν εκρηκτικά υλικά. Τέλος, με την παρακολούθηση σε πραγματικό χρόνο της διαδρομής των φορτηγών που μεταφέρουν επικίνδυνα, ευαίσθητα ή πολύτιμα προϊόντα, διασφαλίζεται το φορτίο από κλοπή ή κάποια καταστροφή λόγω κακής επιλογής διαδρομής [18][7][13] Περιβάλλον Η εξέλιξη του ΙοΤ και όλων των τεχνολογιών που αυτό απαιτεί θα έχει μεγάλη επίπτωση στην κατανάλωση ενέργειας και κατά συνέπεια και στο περιβάλλον. Όπως αναφέρθηκε και παραπάνω η εφαρμογή του ΙοΤ στους περισσότερους τομείς της σύγχρονης κοινωνίας συμβάλει καθοριστικά στην εξοικονόμηση ενέργειας. Αυτό σε συνδυασμό με την απαίτηση για την δημιουργία νέων συσκευών που θα παράγουν την ενέργεια που απαιτούν για την λειτουργία τους θα μειώσει ακόμα περισσότερο την συνολική ενέργεια που καταναλώνεται και θα οδηγήσει στην χρήση πιο καθαρών πηγών ενέργειας. Παράλληλα, με την χρήση αισθητήρων μετριέται η κατάσταση του αέρα και του νερού ώστε να λαμβάνονται μέτρα όταν η μόλυνση ξεπεράσει κάποια κρίσιμα όρια. Με την εποπτεία του περιβάλλοντος μπορούν αποφευχθούν πολλές περιβαλλοντολογικές καταστροφές. Για παράδειγμα, όταν διαπιστωθεί η διανομή επικίνδυνα μολυσμένου νερού μέσω των υπονόμων θα μπορεί να σφραγίζεται αυτόματα η έξοδος για να μην φτάσει το νερό σε κάποιο υδροφόρο ορίζοντα. Επιπλέον, καθίσταται δυνατή η πρόβλεψη περιστασιακών κρίσεων που συντελούν στην απώλεια ανθρωπίνων ζωών (πχ. σεισμός, τσουνάμι, κτλ) και η λήψη μέτρων [13][17][7][11]. 23

25 Κεφάλαιο 2: Hardware Για την δημιουργία ενός project στο χώρο του Internet of Things είναι απαραίτητη η επιλογή της κατάλληλης πλατφόρμας ανάπτυξης. Αρχικά θα πρέπει να ληφθεί υπόψη ο μικροεπεξεργαστής της κάθε πλατφόρμας που κυκλοφορεί στο εμπόριο. Έτσι η επιλογή του κατάλληλου επεξεργαστή θα γίνει με βάση την απόδοσή του, την τιμή και την κατανάλωση ενέργειας αναλόγως, βέβαια, και με τις απαιτήσεις κάθε περίστασης. Ακόμη κάθε πλατφόρμα ανάπτυξης θα υποστηρίζει διαφορετικά λειτουργικά συστήματα, οπότε ανάλογα με το επιθυμητό λειτουργικό σύστημα πρέπει να γίνει και η αγορά της αντίστοιχης πλακέτας. Ένας ακόμη παράγοντας που επηρεάζει την επιλογή είναι τα πρότυπα επικοινωνίας που υποστηρίζει η κάθε πλατφόρμα. Οπότε, αν για παράδειγμα ο κόμβος ΙοΤ που θα αναπτυχθεί επιθυμούμε να επικοινωνεί ασύρματα μέσω Bluetooth θα πρέπει η πλακέτα που θα χρησιμοποιηθεί να υποστηρίζει το πρωτόκολλο Bluetooth επικοινωνίας. Τέλος, σημαντικό ρόλο ανάλογα με το project μπορεί να παίζουν και οι θύρες που έχει πάνω της η πλακέτα, καθορίζοντας με αυτό τον τρόπο την επιλογή που θα γίνει. Με την διαρκή εξέλιξη του Internet of Things συνεχώς προκύπτουν νέες, βελτιωμένες επιλογές στον τομέα του hardware. Στην συνέχεια παρουσιάζονται μερικές δημοφιλής επιλογές πλακετών ανάπτυξης που χρησιμοποιούνται στο χώρο του ΙοΤ. 24

26 2.1 Raspberry Pi 2/3 To Raspberry Pi αποτελεί έναν από τους πιο δημοφιλείς single-board υπολογιστές και αναπτύχθηκε για να προωθήσει την διδασκαλία της επιστήμης των υπολογιστών στα σχολεία και στις υποανάπτυκτες χώρες. Η τελευταία έκδοση είναι το Raspberry Pi 3 το οποίο περιλαμβάνει πλέον ενσωματωμένο Wi-Fi και Bluetooth. Τα Raspberry Pi αποτελούν μία από τις πιο δημοφιλείς επιλογές για ανάπτυξη ΙοΤ εφαρμογών λόγω της ευκολίας εκμάθησης, των τεχνικών χαρακτηριστικών τους, την τιμή τους καθώς και την πληθώρα λειτουργικών συστημάτων που υποστηρίζουν. Μερικά από τα λειτουργικά συστήματα που υποστηρίζονται είναι το Raspbian, το οποίο αποτελεί μια Linux διανομή που βασίζεται στο Debian, τα Windows 10 IoT core, το RISC OS και κάποιες διανομές Linux βασισμένες στα Ubuntu. Παρακάτω παρουσιάζονται τα τεχνικά χαρακτηριστικά των Raspberry Pi 2 και 3 [21][22]. Πίνακας 1.Χαρακτηριστικά Raspberry Pi 2 [30] SoC CPU Memory GPU Broadcom BCM MHz quad-core ARM Cortex A7 (ARMv7 instruction set) 1 GB (shared with GPU) Broadcom VideoCore 250 MHz USB ports 4 Networking Video input Video outputs Audio inputs Audio outputs Storage GPS Peripherals 10/1000 Mbit/s Ethernet 15-pin MIPI camera interface (CSI) connector HDMI, composite video (PAL and NTSC) via 3.5 mm jack I²S Analog via 3.5 mm jack MicroSD No 17 GPIO plus specific functions, and HAT ID bus 25

27 Πίνακας 2.Χαρακτηριστικά Raspberry Pi 3 [30] SoC CPU Memory GPU Broadcom BCM MHz quad-core ARM Cortex A53 1 GB (shared with GPU) Broadcom VideoCore 250 MHz USB ports 4 Onboard WiFi a/b/g/n Networking Onboard Bluetooth 4.1 Video input Video outputs Audio inputs Audio outputs Storage GPS Peripherals 15-pin MIPI camera interface (CSI) connector HDMI, composite audio via 3.5 mm jack I²S Analog via 3.5 mm jack MicroSD No 17 GPIO plus specific functions, and HAT ID bus 2.2 Qualcomm DragonBoard 410C Η DragonBoard 410C αποτελεί την πρώτη πλακέτα ανάπτυξης βασισμένη στον Qualcomm Snapdragon 400 series επεξεργαστή. Η σειρά Snapdragon 26

28 αναπτύχθηκε από την Qualcomm με στόχο τις κινητές συσκευές και ήδη χρησιμοποιείται σε κινητά τηλέφωνα που υποστηρίζουν Android και Windows, σε ορισμένα netbooks, σε αυτοκίνητα και άλλες συσκευές. Η DragonBoard 410C λοιπόν προσφέρει προηγμένη υπολογιστική δύναμη, Wi-Fi, Bluetooth και GPS όλα συγκεντρωμένα σε ένα πολύ μικρό μέγεθος. Είναι σχεδιασμένη να υποστηρίζει γρήγορη ανάπτυξη λογισμικού, εκπαιδευτικούς σκοπούς και προτυποποίηση. Υποστηρίζει Windows 10 IoT core, Android 5.1(Lollipop) και Linux βασισμένα στο Debian 8.0. Όλα τα παραπάνω την κάνουν ιδανική επιλογή για ενσωματωμένα προϊόντα και προϊόντα Internet of Thing. Στη συνέχεια παρουσιάζονται τα βασικά τεχνικά χαρακτηριστικά της [10]. Πίνακας 3.Χαρακτηριστικά DragonBoard 410C [30] SoC CPU Memory GPU Display Video Output Storage Networking USB Peripherals Qualcomm Snapdragon 410 (APQ8016) 900 MHz quad-core ARM Cortex A7 (ARMv7 instruction set) 1 GB LPDDR3, 4GB emmc Qualcomm ADreno 400 MHz HDMI Full-size Type A connector (1080p 30fps) MIPI-DSI on Expansion Connector for optional display/touch (mutually exclusive with HDMI output) HDMI 1080p 30 fps MicroSD Onboard WiFi a/b/g/n Onboard Bluetooth Ports 12 GPIO pins 27

29 2.3 Arduino Yun Το Arduino είναι μια open-source πλατφόρμα ηλεκτρονικών βασισμένη σε hardware και software, τα οποία είναι εύκολα στη χρήση. Δημιουργήθηκε σαν ένα εύκολο εργαλείο για γρήγορη προτυποποίηση, κυρίως για μαθητές χωρίς γνώσεις προγραμματισμού και ηλεκτρονικής. Καθώς άρχισε να διαδίδεται και εκτός εκπαιδευτικού χώρου, ξεκίνησε να αλλάζει για να προσαρμοστεί στις καινούριες ανάγκες και προβλήματα που δημιουργήθηκαν, προσφέροντας πλέον από απλές 8-bit πλακέτες μέχρι προϊόντα για ΙοΤ εφαρμογές, 3D-εκτυπώσεις και ενσωματωμένα συστήματα. Τόσο οι πλακέτες Arduino, όσο και το software αποτελούν open-source προϊόντα. Το Arduino Yun που παρουσιάζεται στον παρακάτω πίνακα αποτελεί την ιδανική επιλογή Arduino για την ανάπτυξη συνδεδεμένων συσκευών και γενικότερα εφαρμογών Internet of Things, καθώς συνδυάζει την δύναμη των Linux με την ευκολία χρήσης του Arduino [5]. Πίνακας 4. Χαρακτηριστικά Arduino Yun AVR Arduino microcontroller Linux Microprocessor Microcontroller ATmega32U4 Processor Atheros AR9331 Operating Voltage 5V Architecture Input Voltage 5 Operating Voltage 3.3V Digital I/O Pins 20 Ethernet IEEE /100Mbit/s PWM Channels 7 WiFi IEEE b/g/n Analog Input Pins 12 USB Type-A 2.0 Host DC Current per I/O Pin 40 ma Card Reader Micro-SD only 28

30 DC Current for 3.3V Pin Flash Memory 50 ma RAM 64 MB DDR2 32 KB (of which 4 KB used by bootloader) Flash Memory 16 MB SRAM 2.5 KB SRAM 2.5 KB EEPROM 1 KB EEPROM 1 KB Clock Speed 16 MHz Clock Speed 16 MHz Παρατηρούμε ότι από τις τέσσερις δημοφιλείς επιλογές που παρουσιάστηκαν παραπάνω οι τρεις βασίζονται σε επεξεργαστές της οικογένειας ARM Cortex. Οι επεξεργαστές αυτοί αποτελούν μια δημοφιλή επιλογή για την ανάπτυξη εφαρμογών ΙοΤ. Η σειρά ARM Cortex A είναι σχεδιασμένη για να προσφέρει υψηλή απόδοση. Πολλές φορές όμως στο χώρο του ΙοΤ δεν είναι απαραίτητη η υψηλή απόδοση αλλά η χαμηλή κατανάλωση ενέργειας και το χαμηλό κόστος. Αυτά προσφέρουν οι επεξεργαστές της οικογένειας ARM Cortex M. Στον πίνακα που ακολουθεί φαίνονται πολύ συνοπτικά τα δυνατά σημεία καθενός από τους επεξεργαστές της οικογένειας Cortex-M. Εικόνα 8. Οικογένεια επεξεργαστών Cortex-M 29

31 Στη συνέχεια παρουσιάζονται δύο πλατφόρμες ανάπτυξης που χρησιμοποιούν επεξεργαστές της οικογένειας ARM Cortex-M. 2.4 Particle Photon Εικόνα 9. Particle Photon To Photon αποτελεί μία από τις μικρότερες πλακέτες προτυποποίησης που είναι διαθέσιμες στην αγορά. Βασίζεται στον επεξεργαστή ARM Cortex-M3 στα 120MHz και έχει 1ΜΒ flash μνήμη και 128KB RAM. Παράλληλα, προσφέρει Wi-Fi συνδεσιμότητα και αφού ρυθμιστεί μπορεί να προσπελαστεί από το Internet, το οποίο την κάνει ιδανική για την ανάπτυξη συνδεδεμένων εφαρμογών. Επιπρόσθετα, περιλαμβάνει πέντε αναλογικούς ακροδέκτες (pins) και οχτώ ψηφιακούς για την σύνδεση αισθητήρων και ενεργοποιητών. Για τους σκοπούς της παρούσας διπλωματικής επιλέχθηκε το Raspberry Pi 3 για την δημιουργία των κόμβων της Internet of Things εφαρμογής μας. Η επιλογή μας βασίστηκε κυρίως στην υποστήριξη των λογισμικών που προσφέρει το Raspberry και 30

32 τις γλώσσες προγραμματισμού που περιλαμβάνει. Επίσης υπάρχει μεγάλη κοινότητα πίσω από την συγκεκριμένη πλακέτα, έτσι ώστε να παρέχεται άμεσα βοήθεια στην επίλυση των διάφορων προβλημάτων με την πλακέτα. Καταληκτικά, καθώς είναι σχεδιασμένη για εύκολη και γρήγορη προτυποποίηση η ανάπτυξη εφαρμογών γύρω από αυτή είναι ιδιαίτερα απλή. 2.5 Αισθητήρες Εικόνα 10. MPL3115A2 Αφού επιλέξαμε την πλακέτα που θα αποτελεί την βάση για τους δύο κόμβους, μένει να επιλέξουμε τον αισθητήρα που θα δώσει την δυνατότητα στους δύο κόμβους να συλλέγουν τις απαραίτητες μετρήσεις θερμοκρασίες. Για το λόγο αυτό έχει επιλεγεί ο MPL3115A2 της Adafruit. Αυτό το chip αποτελεί μια εξαιρετική και φθηνή επιλογή όχι μόνο για την μέτρηση θερμοκρασίας αλλά και για την μέτρηση βαρομετρικής πίεσης και υψόμετρου. Ο αισθητήρας επικοινωνεί με την πλακέτα μας μέσω του πρωτοκόλλου I 2 C και μετρά θερμοκρασίες από -40 o C μέχρι +85 ο C με τυπική ακρίβεια ±1 ο C (μέγιστη ±3 ο C). Τα δεδομένα από την μέτρηση πίεσης και θερμοκρασίας που συλλέγονται περνάνε από έναν υψηλής ακρίβειας αναλογικό-σε-ψηφιακό μετατροπέα (ADC) με αποτέλεσμα να παρέχονται ψηφιακές τιμές θερμοκρασίας και πίεσης στην έξοδο του αισθητήρα. Στο παρακάτω πίνακα γίνεται η περιγραφή των ακροδεκτών του αισθητήρα. 31

33 Πίνακας 5. Περιγραφή των ακροδεκτών του MPL3115A2 Σύμβολο Pin Περιγραφή Vin 1 Είσοδος παροχής ενέργειας 5V GND 2 Γείωση 3vo 3 Είσοδος παροχής ενέργειας 3V INT2 4 Pressure interrupt 2 INT1 5 Pressure interrupt 1 SCL 6 Ι 2 C serial data SDA 7 I 2 C serial clock Εικόνα 11. SparkFun Weather Shield Ο MPL3115A2 περιλαμβάνεται επίσης στην Weather Shield της SparkFun, η οποία αποτελεί μια δημοφιλή επιλογή για την ανάπτυξη κόμβων IoT για την συλλογή μετρήσεων από το περιβάλλον. Η Weather Shield αποτελεί μια εύκολη-στηνχρήση Arduino Shield για την μέτρηση θερμοκρασίας, βαρομετρικής πίεσης, φωτεινότητας και θερμοκρασίας. Παρέχει επίσης την δυνατότητα σύνδεσης άλλων αισθητήρων όπως για παράδειγμα GPS και αισθητήρες μέτρησης ταχύτητας του αέρα. Για την μέτρηση της θερμοκρασίας και της υγρασίας η Weather Shield χρησιμοποιεί τον αισθητήρα HTU21D, για την μέτρηση της βαρομετρικής πίεσης τον MPL3115A2 και για την μέτρηση της φωτεινότητας τον ALS-PT19. 32

34 Κεφάλαιο 3: Framework Ένα IoT framework αποτελεί μια εργαλειοθήκη για την ανάπτυξη ΙοΤ εφαρμογών σύμφωνα με ένα συγκεκριμένο τύπο ή μέθοδο. Ένα ΙοΤ framework υιοθετεί ένα ή περισσότερα πρωτόκολλα εφαρμογών (application protocols), παρέχοντας APIs(Διεπαφές Προγραμματισμού Εφαρμογών) και βιβλιοθήκες που υλοποιούν διάφορες υπηρεσίες πάνω σε αυτά τα πρωτόκολλα. Επιπλέον, προσφέρει εργαλεία για την ανάπτυξη και τον έλεγχο εφαρμογών [20]. Η επιλογή του framework αποτελεί πολύ σημαντικό βήμα στην ανάπτυξη IoT εφαρμογών. Για την σωστή επιλογή ανάλογα με την κάθε περίπτωση θα πρέπει να λαμβάνονται υπόψη κάποια κριτήρια [20]. Την βιομηχανία για την οποία προορίζεται η εφαρμογή. Κάποια framework είναι ειδικά σχεδιασμένα ώστε να διευκολύνουν την ανάπτυξη εφαρμογών σε ένα συγκεκριμένο τομέα της βιομηχανίας του IoT. Τους περιορισμούς στο hardware. Ορισμένα framework απαιτούν περισσότερους υπολογιστικούς πόρους από άλλα και περισσότερη μνήμη για να τρέξουν σωστά. Αν η εφαρμογή θα υποστηρίζει cloud υπηρεσίες. Αν το framework θα είναι ανοιχτού κώδικα. Η αρχιτεκτονική του framework. Η αρχιτεκτονική του framework που θα επιλεγεί καθορίζει ιδιότητες όπως η ασφάλεια, η ιδιωτικότητα, ο χρόνος που απαιτείται για να ταξιδέψουν τα δεδομένα από την πηγή(πχ αισθητήρας) στον προορισμό, την ικανότητα της συσκευής ή της εφαρμογής να επικοινωνεί με άλλες διαφορετικού τύπου, κτλ. Για τους σκοπούς της παρούσας διπλωματικής χρησιμοποιήθηκε το Alljoyn framework της Allseen Alliance, το οποίο και παρουσιάζεται στη συνέχεια. 3.1 Αρχιτεκτονική Alljoyn Framework [2] To Internet of Things όπως είδαμε θα οδηγήσει στην δημιουργία «έξυπνων» αντικειμένων και συσκευών στο σπίτι, το αυτοκίνητο, τους δρόμους, κτλ τα οποία θα επικοινωνούν μεταξύ τους αποκτώντας, κατά αυτό τον τρόπο νέες δυνατότητες που θα 33

35 κάνουν την ζωή του ανθρώπου ευκολότερη. Οι διάφορες «έξυπνες» συσκευές που βρίσκονται σε μια περιοχή η μία κοντά στην άλλη θα δημιουργούν μικρά τοπικά IoT δίκτυα τα οποία θα μπορούν να επικοινωνούν μεταξύ τους μέσω του Διαδικτύου. Το παρακάτω σχήμα παρουσιάζει ένα παράδειγμα ενός ΙοΤ δικτύου, το οποίο αποτελείται από διάφορα μικρότερα, τοπικά IoT δίκτυα συνδεδεμένα μεταξύ τους μέσω Διαδικτύου. Εικόνα 12. Παράδειγμα ΙοΤ δικτύου. Το Alljoyn αποτελεί ένα framework που επιτρέπει σε συσκευές να ανακαλύπτουν η μία την άλλη και να επικοινωνούν μεταξύ τους. Προσφέρει μια τοπική, peer-to-peer, πλατφόρμα επικοινωνίας για συσκευές σε ένα κατανεμημένο σύστημα. Δεν απαιτείται ένας κεντρικός διακομιστής(server) για την επικοινωνία μεταξύ των συσκευών. Οι συσκευές τρέχουν μία ή περισσότερες εφαρμογές Alljoyn και σχηματίζουν ένα peer-to-peer, Alljoyn δίκτυο. Στη συνέχεια το Alljoyn επιτρέπει 34

36 στις εφαρμογές που τρέχουν στις συσκευές του δικτύου να ανακοινώνουν την παρουσία τους, να βρίσκουν άλλες εφαρμογές στο δίκτυο και να συνδέονται η μία με την άλλη ώστε να χρησιμοποιούν τις υπηρεσίες που προσφέρουν αυτές οι συσκευές. Επιπλέον το Alljoyn επιτρέπει στις παραπάνω εφαρμογές να διαφημίζουν τις υπηρεσίες που προσφέρουν μέσω του δικτύου με εντοπίσιμα APIs που παρουσιάζουν την λειτουργικότητα της εφαρμογής. Σε ένα τοπικό Alljoyn δίκτυο μια Alljoyn εφαρμογή μπορεί να έχει το ρόλο του προμηθευτή(producer), του καταναλωτή(consumer) ή και τα δύο, ανάλογα με το μοντέλο παροχής υπηρεσιών. Οι εφαρμογές-προμηθευτές ενσωματώνουν υπηρεσίες και τις διαφημίζουν μέσω του Alljoyn δικτύου. Οι εφαρμογές-καταναλωτές που ενδιαφέρονται για αυτές τις υπηρεσίες τις ανακαλύπτουν μέσω του δικτύου και στη συνέχεια συνδέονται με τις εφαρμογές-προμηθευτές για να χρησιμοποιήσουν αυτές τις υπηρεσίες όπως επιθυμούν. Μια εφαρμογή Alloyn μπορεί να λειτουργήσει ταυτόχρονα και σαν προμηθευτής και σαν καταναλωτής. Αυτό σημαίνει ότι η εφαρμογή μπορεί να διαφημίζει κάποιες υπηρεσίες που αυτή προσφέρει και ταυτόχρονα να ανακαλύπτει και να χρησιμοποιεί υπηρεσίες που παρέχουν άλλες υπηρεσίες μέσω του τοπικού Alljoyn δικτύου. Το παρακάτω σχήμα παρουσιάζει ένα Alljoyn δίκτυο με τέσσερις συσκευές. 35

37 Εικόνα 13. Alljoyn τοπικό δίκτυο Το Alljoyn υποστηρίζει όλα τα δημοφιλή λειτουργικά συστήματα όπως τα Windows, τις πιο γνωστές διανομές Linux, το android καθώς και ενσωματωμένα λειτουργικά όπως το OpenWRT και το RTOSs. Μάλιστα το Alljoyn έρχεται προεγκατεστημένο στο Windows 10. Ακόμη υποστηρίζει την χρήση διάφορων γλωσσών προγραμματισμού για την συγγραφή εφαρμογών και υπηρεσιών για τις ΙοΤ συσκευές. Οι γλώσσες που υποστηρίζονται είναι η Java, C, C++, C#, JavaScript και Objective-C. Το συγκεκριμένο framework υιοθετεί μια βασική αρχιτεκτονική διαύλου για επικοινωνία ανάμεσα στις συσκευές ΙοΤ. Οι Alljoyn εφαρμογές που τρέχουν στις αντίστοιχες συσκευές συνδέονται και επικοινωνούν μεταξύ τους μέσω αυτού του Alljoyn διαύλου. Ο ίδιος δίαυλος επιτρέπει στις εφαρμογές να στέλνουν ειδοποιήσεις και να ανταλλάσσουν δεδομένα. Το Alljoyn χρησιμοποιεί μια έκδοση του D-Bus πρωτόκολλου. 36

38 3.1.1 Alljoyn Router Το στοιχείο Alljoyn Router προσφέρει την κεντρική λειτουργία του Alljoyn και περιλαμβάνει την peer-to-peer διαφήμιση/ανακάλυψη, την επίτευξη σύνδεσης, την εκπομπή σημάτων και την δρομολόγηση μηνυμάτων ελέγχου/δεδομένων. Ο Alljoyn Router ενσωματώνει λογισμικό λειτουργίας διαύλου και κάθε εφαρμογή συνδέεται σε αυτόν τον δίαυλο για να εκμεταλλευτεί τις βασικές λειτουργίες του Alljoyn framework. Κάθε αντίγραφο του Alljoyn Router συνδέεται με ένα μοναδικό αναγνωριστικό το οποίο είναι αυτοαναθετούμενο. Αυτό το αναγνωριστικό δεν είναι μόνιμο προς το παρόν οπότε αλλάζει κάθε φορά που ξεκινά ο Alljoyn Router. Κάθε Alljoyn Router μπορεί να είναι ενσωματωμένος με κάθε εφαρμογή(bundled model) ή να διαμοιράζεται ανάμεσα σε διάφορες εφαρμογές στην ίδια συσκευή(standalone model). Εικόνα 14. Alljoyn Router Alljoyn Bus Ένας Alljoyn Router προσφέρει λειτουργία διαύλου όπου οι εφαρμογές μπορούν να συνδεθούν για να ανταλλάξουν μηνύματα. Οι διάφοροι Alljoyn Routers που τρέχουν σε κάθε συσκευή δημιουργούν ένα τοπικό για την συσκευή Alljoyn δίαυλο όπως φαίνεται και στο παρακάτω σχήμα. 37

39 Εικόνα 15. Alljoyn Routers σε διάφορες συσκευές Ο δίαυλος Alljoyn παρέχει ένα μέσο επικοινωνίας στις εφαρμογές που είναι συνδεδεμένες σε αυτόν. Οι Alljoyn δίαυλοι που έχουν δημιουργηθεί σε διαφορετικές συσκευές επικοινωνούν μεταξύ τους μέσω κάποια υπάρχουσας τεχνολογίας δικτύου όπως το Wi-Fi. Έτσι πολλοί συνδεδεμένοι δίαυλοι μεταξύ τους σχηματίζουν ένα κατανεμημένο Alljoyn δίαυλο. Κάθε εφαρμογή που είναι συνδεδεμένη σε αυτόν τον δίαυλο μπορεί να επικοινωνεί με εφαρμογές που τρέχουν σε άλλες συσκευές σαν να βρίσκονται στον ίδιο τοπικό δίαυλο. 38

40 Εικόνα 16. Κατανεμημένος Alljoyn Bus Bus Attachment Όλες οι εφαρμογές Alljoyn για να συνδεθούν στο Alljoyn δίκτυο, όπως περιεγράφηκε παραπάνω δημιουργούν ένα αντικείμενο Alljoyn Bus Attachment και το χρησιμοποιούν για να συνδεθούν σε έναν Alljoyn Router. Ένα bus attachment υπάρχει σε κάθε διεργασία που πρέπει να συνδεθεί στον δίαυλο Alljoyn. Το Alljoyn bus attachment αποτελεί ένα τοπικό αντικείμενο που αντιπροσωπεύει τον κατανεμημένο Alljoyn δίαυλο σε έναν client, μια υπηρεσία ή ένα peer Ανακοίνωση και ανακάλυψη Μια εφαρμογή Alljoyn μπορεί να διαφημίσει τις υπηρεσίες τις με δύο μηχανισμούς: τις About Announcements και το Well-Known Name. Οι About Announcements αποτελούν τον προτεινόμενο μηχανισμό για διαφήμιση και με αυτόν θα ασχοληθούμε. Οι About Announcements επιτρέπουν σε μια συσκευή ή μια εφαρμογή να ανακοινώσει την ύπαρξη της στο Alljoyn δίκτυο ώστε άλλες συσκευές και εφαρμογές να την ανακαλύψουν. Μερικές από τις πληροφορίες που μοιράζονται είναι η μάρκα, το μοντέλο, οι υποστηριζόμενες διεπαφές, μια σύντομη περιγραφή. Το 39

41 About χαρακτηριστικό περιλαμβάνει δύο πλευρές, τον About Server, που είναι η εφαρμογή ή συσκευή που ανακοινώνει τον εαυτό της, και τον About Client, που είναι η εφαρμογή ή η συσκευή που ανακαλύπτει εφαρμογές/συσκευές. Ο About Server ανακοινώνει τον εαυτό του στέλνοντας ένα εκτός-συνεδρίας σήμα περιλαμβάνοντας την θύρα στην οποία μπορεί να δημιουργηθεί συνεδρία, μια λίστα από διεπαφές που περιλαμβάνει και κάποιες πληροφορίες από την About ανακοίνωση. Στην συνέχεια, ο About Client ανακαλύπτει το εκτός-συνεδρίας σήμα και μπορεί να δει πληροφορίες για την εφαρμογή/συσκευή που το έστειλε. Έπειτα, μπορούν να σχηματίσουν συνεδρία μεταξύ τους για περαιτέρω επικοινωνία Συνεδρία και πύλη Όταν μια εφαρμογή ανακαλύπτει μια υπηρεσία, η οποία διαφημίζει κάποια άλλη εφαρμογή μπορεί να δημιουργήσει μια συνεδρία μαζί της μέσω μιας διεργασίας που ονομάζεται JoinSession. Η εφαρμογή που διαφημίζει την υπηρεσία μπορεί να αποδεχτεί ή να απορρίψει την αίτηση για δημιουργία συνεδρίας. Παράλληλα, μια συνεδρία ενδέχεται να είναι point-to-point ή multi-point. Η point-to-point συνεδρία επιτρέπει την μία-προς-μία σύνδεση, ενώ η multi-point επιτρέπει σε μια ομάδα εφαρμογών/συσκευών να επικοινωνούν μεταξύ τους στην ίδια συνεδρία. Εικόνα 17. Alljoyn Session Bus Object Οι εφαρμογές Alljoyn μπορούν να επικοινωνούν μεταξύ τους μέσω του BusObject. Γενικά μια εφαρμογή που προσφέρει μια υπηρεσία δημιουργεί ένα BusObject. Με αυτό τον τρόπο, απομακρυσμένες εφαρμογές μπορούν να ανοίξουν το 40

42 BusObject και να καλέσουν μεθόδους σε αυτό. Ένα BusObject μπορεί να ενσωματώνει μια ομάδα διεπαφών. Κάθε διεπαφή περιλαμβάνει διάφορες BusMethods, BusProperties και BusSignals. Οι BusMethods επιτρέπουν σε μια απομακρυσμένη οντότητα να καλέσει μια μέθοδο. Ενώ οι BusProperties μπορεί να είναι get ή set. Τα BusSignals είναι σήματα που εκπέμπει η εφαρμογή που προσφέρει την υπηρεσία. Επίσης το ProxyBusObject είναι το αντικείμενο που δημιουργείται από την απομακρυσμένη εφαρμογή για να αποκτήσει πρόσβαση στο BusObject κάποιας άλλης εφαρμογής. Συνοψίζοντας, μια εφαρμογή που προσφέρει κάποια υπηρεσία δημιουργεί ένα BusObject για να προσφέρει πρόσβαση στις υπηρεσίες της. Μια απομακρυσμένη εφαρμογή μπαίνει σε συνεδρία με αυτήν την εφαρμογή και συνδέεται στο BusObject της πρώτης δημιουργώντας ένα ProxyBusObject. Στην συνέχεια μπορεί να καλέσει BusMethods, να προσπελάσει BusProperties και να λάβει BusSignals Σύνοψη Κάθε Alljoyn εφαρμογή αλληλοεπιδρά με το Alljoyn framework μέσω ενός BusAttachment. Η εφαρμογή διαφημίζει τις υπηρεσίες της μέσω της AboutAnnouncement, η οποία περιέχει πληροφορίες για την εφαρμογή καθώς και τις διεπαφές που περιλαμβάνει. Όταν μια απομακρυσμένη εφαρμογή ανακαλύψει την Alljoyn εφαρμογή μπορεί να δημιουργήσει μια συνεδρία με αυτήν. Η Alljoyn εφαρμογή μπορεί να δεχτεί ή να απορρίψει την αίτηση για συνεδρία. Πριν την δημιουργία συνεδρίας η Alljoyn εφαρμογή μπορεί να δημιουργήσει οποιοδήποτε αριθμό BusObject. Κάθε BusObject περιλαμβάνει έναν αριθμό από διεπαφές που καθορίζονται από μια ομάδα μεθόδων, ιδιοτήτων και σημάτων. Αφού δημιουργηθεί η συνεδρία η απομακρυσμένη εφαρμογή επικοινωνεί με την Alljoyn εφαρμογή δημιουργώντας ένα ProxyBusObject το οποίο χρησιμοποιεί για να αλληλοεπιδρά με το BusObject καλώντας μεθόδους, διαβάζοντας και θέτοντας ιδιότητες και λαμβάνοντας σήματα. 41

43 Εικόνα 18. Βασική αρχιτεκτονική του Alljoyn 3.2 Πλεονεκτήματα Alljoyn Framework [2] Ανοιχτός κώδικας Το Alljoyn αποτελεί προϊόν ανοιχτού κώδικα με όλα τα πλεονεκτήματα που αυτό συνεπάγεται. Όλος ο κώδικάς του είναι διαθέσιμος για εποπτεία και κάθε προγραμματιστής μπορεί να προσθέσει χαρακτηριστικά που πιθανόν πιστεύει ότι λείπουν. Επίσης σε περίπτωση που απαιτείται βοήθεια κατά την ανάπτυξη μιας Alljoyn εφαρμογής υπάρχουν άτομα στην κοινωνία ανοιχτού κώδικα που είναι πρόθυμοι να προσφέρουν συμβουλές και καθοδήγηση. Ανεξαρτησία λειτουργικού συστήματος Το Alljoyn υποστηρίζεται στα περισσότερα σύγχρονα λειτουργικά συστήματα. Το Alljoyn είναι διαθέσιμο για τις πιο γνωστές διανομές Linux, όπως τα Ubuntu, ενώ τρέχει και σε Android. Ο κώδικας του Alljoyn τρέχει επίσης στα λειτουργικά συστήματα της Apple καθώς και σε ενσωματωμένα λειτουργικά συστήματα όπως το OpenWRT. Τέλος το Alljoyn υποστηρίζει τις τελευταίες εκδόσεις των Windows και έρχεται προεγκατεστημένο στα Windows 10. Ανεξαρτησία γλώσσας ανάπτυξης Το Alljoyn υποστηρίζει την ανάπτυξη εφαρμογών σε C++, Java, C#, JavaScript και Objective-C. Προσφέρει ένα framework για την ανακάλυψη, την σύνδεση και την ανταλλαγή δεδομένων μεταξύ συσκευών σε μικρή εμβέλεια χωρίς την χρήση απομακρυσμένου διακομιστή(server) 42

44 Διαφήμιση και ανακάλυψη υπηρεσιών Όποτε πρέπει να επικοινωνήσουν συσκευές μεταξύ τους απαιτείται μια μορφή διαφήμισης και ανακάλυψης υπηρεσιών. Σε παλιότερη εποχή όπου επικρατούσαν τα στατικά δίκτυα οι διαχειριστές έκαναν ρητές διατάξεις για να επιτρέπουν στις συσκευές να επικοινωνούν μεταξύ τους. Στην εποχή μας όμως είναι δημοφιλή τα δίκτυα που δεν απαιτούν ειδικές ρυθμίσεις για την επικοινωνία των συσκευών. Έτσι το Alljoyn προσφέρει ένα μηχανισμό διαφήμισης και ανακάλυψης υπηρεσιών που διευκολύνει την διαδικασία του εντοπισμού και της χρήσης υπηρεσιών. Ασφάλεια Στην ανάπτυξη διανεμημένων εφαρμογών συνήθως απαιτείται ένα μοντέλο ασφάλειας μεταξύ εφαρμογών και όχι μεταξύ συσκευών. Για παράδειγμα το πρωτόκολλο Bluetooth απαιτεί ζεύξη δύο συσκευών και όταν επιτευχθεί όλες οι εφαρμογές και στις δύο συσκευές αποκτούν εξουσιοδότηση. Επειδή πολλές φορές απαιτείται ένα καλύτερο σύστημα ασφάλειας το Alljoyn είναι σχεδιασμένο να προσφέρει υποστήριξη σε πιο περίπλοκα μοντέλα ασφάλειας, όπου αυτά είναι απαραίτητα, με έμφαση στην επικοινωνία μεταξύ εφαρμογών. 43

45 Κεφάλαιο 4: Εργαλεία Λογισμικού Σε αυτό το σημείο γίνεται μια σύντομη περιγραφή κάποιων εργαλείων λογισμικού που χρησιμοποιήθηκαν για την υλοποίηση του πρακτικού μέρους της παρούσας εργασίας. 4.1 Windows 10 Τα Windows 10 αποτελούν την τελευταία έκδοση των Windows που κυκλοφόρησε η Microsoft. Αναγνωρίζοντας την επίδραση που θα έχει η εξέλιξη του Internet of Things τα Windows 10 κυκλοφόρησαν έχοντας προεγκατεστημένο το Alljoyn framework που έχει επιλεγεί για την τρέχουσα διπλωματική, ενώ προσφέρουν παράλληλα και άλλα εργαλεία που διευκολύνουν την ανάπτυξη εφαρμογών Internet of Things. Για το λόγο αυτό έχουν επιλεγεί ως λειτουργικό σύστημα για τον κεντρικό υπολογιστή που θα είναι υπεύθυνος για την συλλογή δεδομένων από τους κόμβους και την παρουσίαση των μετρήσεων στο χρήστη. 4.2 Windows 10 IoT Core Τα Windows 10 IoT core αποτελούν μια έκδοση των Windows 10 σχεδιασμένη για μικρότερες συσκευές με ή χωρίς δυνατότητα προβολής σε οθόνη. Εφόσον έχουν επιλεγεί τα Windows 10 σαν λειτουργικά σύστημα του κεντρικού υπολογιστή, τα Windows 10 ΙοΤ Core αποτελούν μια καλή επιλογή για λειτουργικό σύστημα των πλακετών Raspberry Pi καθώς έτσι διευκολύνεται η επικοινωνία μεταξύ Raspberry και υπολογιστή ενώ έχουμε την δυνατότητα να χρησιμοποιήσουμε την γλώσσα προγραμματισμού C#, στην οποία γράφτηκε ο τελικός κώδικας. 4.3 Visual Studio 2015 Enterprize Το Visual Studio επιλέχθηκε για την συγγραφή του κώδικα της διπλωματικής και της ανάπτυξής του στις δύο πλακέτες που χρησιμοποιήθηκαν. Απαραίτητη προσθήκη αποτελεί το Alljoyn Studio καθώς διευκολύνει σημαντικά την ανάπτυξη ΙοΤ εφαρμογών βασισμένες στο Alljoyn, παράγοντας αυτόματα κομμάτια κώδικα που αφορούν την ρύθμιση και την βασική λειτουργία του Alljoyn. 4.4 Windows 10 IoT Core Dashboard Το Windows 10 IoT Core Dashboard αποτελεί ένα εργαλείο των Windows 10 που εξυπηρετεί την ανάπτυξη εφαρμογών ΙοΤ. Με αυτό μπορούμε να δημιουργήσουμε μια SD card με τα Windows 10 IoT core για όλες τις συμβατές πλακέτες. Ακόμη έχουμε τη δυνατότητα να εντοπίσουμε όλες τις συσκευές στο τοπικό δίκτυο που τρέχουν Windows 10 και στη συνέχεια να συνδεθούμε σε αυτές για την αλλαγή κάποιων 44

46 βασικών ρυθμίσεων. Αποτελεί το βασικό εργαλείο για την αρχική ρύθμιση των IoT κόμβων της εργασίας. 4.5 IoT Explorer for Alljoyn Ο IoT explorer for Alljoyn αποτελεί άλλο ένα εργαλείο των Windows 10 για την διευκόλυνση ανάπτυξης εφαρμογών Internet of Things και επιτρέπει την αλληλοεπίδραση με συσκευές που τρέχουν το Alljoyn framework και βρίσκονται στο τοπικό δίκτυο. Ο προγραμματιστής μπορεί να δει όλες τις διαθέσιμες συσκευές Alljoyn στο δίκτυο, να επιθεωρήσει τις διεπαφές τους καθώς και να λάβει σήματα, να θέσει και να διαβάσει ιδιότητες και να καλέσει μεθόδους. Το εργαλείο αυτό χρησιμοποιήθηκε για την επιβεβαίωση του κώδικα των παραγωγών μετά την συγγραφή του. 45

47 Κεφάλαιο 5: Υλοποίηση ΙοΤ κόμβων Στο πρακτικό κομμάτι της παρούσας εργασίας έγινε προσπάθεια δημιουργίας δύο κόμβων Internet of Things, οι οποίοι θα παίρνουν διάφορες μετρήσεις από το περιβάλλον και θα αποστέλλουν τα αποτελέσματα σε ένα κεντρικό υπολογιστή για παρουσίαση στο χρήστη και περαιτέρω επεξεργασία. Όπως αναφέρθηκε και στα προηγούμενα για τους δύο κόμβους χρησιμοποιήθηκαν δύο Raspberry Pi 3 στα οποία συνδέθηκαν οι δύο αισθητήρες που χρησιμοποιήθηκαν. Για τη δημιουργία μιας Alljoyn UWP(Universal Windows Platform) εφαρμογής ακολουθούνται τα παρακάτω βήματα [27] : Προετοιμασία του περιβάλλοντος ανάπτυξης. Αποφασίζονται ποιες διεπαφές θα χρησιμοποιηθούν και δημιουργούνται ή αποκτώνται τα απαραίτητα Introspection XML αρχεία. Δημιουργείται ένα alljoyn project και επιλέγονται οι διεπαφές και τα Intronspection XML για την παραγωγή του απαραίτητου κώδικα. Υλοποιείται κώδικας producer ή consumer ανάλογα την εφαρμογή Δημιουργείται η διεπαφή χρήστη(ui) της εφαρμογής 5.1 Προετοιμασία του περιβάλλοντος ανάπτυξης Ξεκινώντας την εφαρμογή μας ήταν απαραίτητη η εγκατάσταση λειτουργικού συστήματος στις δύο πλακέτες Raspberry Pi. Το λειτουργικό σύστημα που επιλέχθηκε ήταν τα Windows 10 IoT Core. Ακολουθώντας λοιπόν τις οδηγίες εγκατάστασης στην επίσημη σελίδα της Microsoft ( πρώτα έγινε η λήψη και η εγκατάσταση του λογισμικού Windows 10 IoT Core Dashboard σε περιβάλλον Windows 10. Στη συνέχεια, αφού εισάγουμε μια κενή SD Card στο card reader του υπολογιστή μας, τρέχουμε το ΙοΤ Dashboard και επιλέγουμε να δημιουργήσουμε μια καινούρια συσκευή(«set up a new device»). Εφόσον επιλέξουμε την επιλογή Raspberry Pi 3 ως την επιλεγόμενη πλακέτα και δώσουμε όνομα και κωδικό, πατάμε λήψη και εγκατάσταση των Windows 10 IoT Core στην SD Card(«Download and install Windows 10 IoT Core on your SD card»). 46

48 Μόλις ολοκληρωθεί η εγκατάσταση εισάγουμε την SD card στην πλακέτα και την ενεργοποιούμε. Εικόνα 19. IoT Dashboard Έχοντας εγκαταστήσει το λειτουργικό σύστημα στην συσκευή μας, το επόμενο βήμα είναι να συνδέσουμε την συσκευή στο τοπικό δίκτυο ώστε να μπορούμε να συνδεθούμε σε αυτή μέσω του υπολογιστή αλλά και να αποκτήσει η συσκευή πρόσβαση στο Internet. Για να το πετύχουμε αυτό χρησιμοποιούμε ξανά το IoT Dashboard. Αυτή τη φορά στην καρτέλα My Devices εντοπίζουμε την συσκευή μας και επιλέγουμε την επιλογή για ρύθμιση της συσκευής(«configure Device»). Αφού εισάγουμε το όνομα και το κωδικό του δικτύου μας η συσκευή συνδέεται σε αυτό. Σε αυτό το σημείο είμαστε έτοιμοι να αρχίσουμε την ανάπτυξη της εφαρμογής μας στο Visual Studio. Αρχικά πρέπει να γίνει η λήψη και η εγκατάσταση του Visual Studio. Στη συνέχεια πρέπει να γίνει η εγκατάσταση των Windows IoT project Templates και Alljoyn Studio extension τα οποία περιεγράφηκαν στον προηγούμενο κεφάλαιο. Τέλος πριν ξεκινήσουμε την συγγραφή κώδικα θα πρέπει να ενεργοποιήσουμε την Developer Mode στα Windows 10 του υπολογιστή μας. Αυτό γίνεται από την καρτέλα Update & 47

49 Security στο μενού Settings των Windows. Παρακάτω πατάμε For Developers και επιλέγουμε Developer Mode. Τώρα είμαστε έτοιμοι να αρχίσουμε την συγγραφή του κώδικα της εφαρμογής μας. 5.2 Introspection Υπάρχουν τρεις τρόποι για να αποκτήσουμε τους ορισμούς των Alljoyn διεπαφών που χρειαζόμαστε στο project μας [27]. Μπορούμε να εξάγουμε τα Introspection XML από Alljoyn Παραγωγούς που υπάρχουν στο δίκτυο Μπορούμε να βρούμε τα Introspection XML από εγχειρίδια χρήσης Μπορούμε να δημιουργήσουμε τα δικά μας Introspection XML αρχεία Για το project μας επιλέξαμε να δημιουργήσουμε τα δικά μας Introspection XML. Σύμφωνα με την διαδικασία που περιεγράφηκε σε προηγούμενο κεφάλαιο. κάθε Alljoyn Producer διαφημίζει δημόσια ένα Introspection XML που παρουσιάζει την λειτουργία που υποστηρίζει, δηλαδή κάποιες διεπαφές που περιγράφονται μέσω σημάτων, ιδιοτήτων και μεθόδων. Η επέκταση Alljoyn Studio βασίζεται σε αυτά τα XML για να παράγει κώδικα απαραίτητο για την εφαρμογή μας διευκολύνοντας με αυτό τον τρόπο την ανάπτυξη. Ένα Introspection XML περιγράφει την λειτουργία του producer με ένα σαφή, κατανοητό στον άνθρωπο τρόπο, ώστε δύο διαφορετικοί κατασκευαστές να μπορούν,χρησιμοποιώντας το ίδιο XML αρχείο να υλοποιήσουν έναν producer με την ίδια λειτουργικότητα. Επίσης, προγραμματιστές χωρίς καμία προηγούμενη γνώση ενός alljoyn producer θα μπορούν να αναπτύξουν λογισμικό που θα διαχειρίζεται τον producer μόνο με βάση το XML αρχείο του. Το alljoyn επιτυγχάνει τα παραπάνω χωρίζοντας τα Introspection XML σε διάφορες διεπαφές που αναπαριστούν διαφορετικές λογικές ομάδες ικανοτήτων. Οι διεπαφές του alljoyn ονομάζονται με αντίστροφη-dns σύμβαση. Κάθε producer μπορεί να περιλαμβάνει οποιοδήποτε αριθμό διεπαφών αλλά θα πρέπει να ενσωματώνει όλα τα στοιχεία(μεθόδους, ιδιότητες, σήματα) από κάθε διεπαφή που περιλαμβάνει. Στο Introspection XML που δημιουργήσαμε περιλαμβάνεται η διεπαφή net.mine.currenttemperature. <interface name="net.mine.currenttemperature"> 48

50 Η λεζάντα <description> σε ένα XML αρχείο χρησιμοποιείται για να περιγράψει τις διεπαφές ή διάφορες ικανότητες και ορίσματα. Η χρήση της κάνει το XML αρχείο πιο κατανοητό και σαφή. Ακόμη στην περιγραφή μιας διεπαφής περιλαμβάνεται και η org.alljoyn.bus.secure ανακοίνωση για την ενεργοποίηση κάποιας μορφής ασφάλειας και αυθεντικοποίησης. Αυτή η ανακοίνωση επιτρέπει την ενσωμάτωση ασφάλειας αλλά δεν προσδιορίζει τον τύπο της ασφάλειας που θα χρησιμοποιηθεί ή πως θα υλοποιηθεί. Έτσι, ο πραγματικός μηχανισμός αυθεντικοποίησης γίνεται κατά την υλοποίηση και όχι κατά την δήλωση. <description language="en">this interface provides capability to represent current temperature.</description> <annotation name="org.alljoyn.bus.secure" value="false"/> Οπότε μέχρι τώρα έχουμε δημιουργήσει ένα XML αρχείο που περιλαμβάνει μια διεπαφή και περιγράφει την λειτουργία του producer μας. <node> <interface name="net.mine.currenttemperature"> <description language="en"> This interface provides capability to represent current temperature. </description> <annotation name="org.alljoyn.bus.secure" value="false"/> </interface> </node> Στη συνέχεια πρέπει να περιγράψουμε τις δυνατότητες της διεπαφής μας. Κάθε διεπαφή δηλώνει τις δυνατότητές της με τρία διαφορετικά μέλη: τις μεθόδους, τις ιδιότητες και τα σήματα. Τα Introspection XML επιτρέπουν επίσης κάποιους σχολιασμούς που περιγράφουν επιπλέον λειτουργικότητα ή περιορισμούς. 49

51 5.2.1 Μέθοδοι Οι καταναλωτές χρησιμοποιούν τις μεθόδους για να μεταβάλλουν την κατάσταση του παραγωγού. Τα ονόματά τους πρέπει να ξεκινάνε με ρήμα γιατί παριστάνουν αιτήσεις προς τον παραγωγό για την εκτέλεση μιας ενέργειας. Οι μέθοδοι μπορεί να έχουν εισερχόμενα και εξερχόμενα ορίσματα, ο τύπος των οποίων θα πρέπει να είναι συμβατός με τις προδιαγραφές του D-Bus. Στο project μας δεν έχουμε χρησιμοποιήσει μεθόδους. Ένα παράδειγμα μεθόδου που θα μπορούσε να χρησιμοποιηθεί είναι η «SetLocation». Η μέθοδος αυτή θα ήταν υπεύθυνη για τον καθορισμό της τοποθεσίας κάθε κόμβου. Οι πληροφορίες θέσης θα αποθηκεύονταν σε μια ιδιότητα με όνομα «Location» και την τιμή αυτής της ιδιότητας θα άλλαζε η μέθοδός μας. <method name="setlocation"> </method> <description language="en">set location information of a device</description> <arg name="location" type="s" direction="in"/> Ιδιότητες Οι ιδιότητες επιτρέπουν την πρόσβαση στην κατάσταση ενός παραγωγού. Οι ιδιότητες έχουν τύπους πρόσβασης read, readwrite, write. Παρόλα αυτά καθώς η λειτουργικότητα που αφορά την αλλαγή κατάστασης ανήκει στις μεθόδους, είναι προτιμότερο να επιλέγεται ο τύπος πρόσβασης read. Επιπλέον, οι ιδιότητες θα πρέπει να ειδοποιούν τους καταναλωτές κάθε φορά που αλλάζει η τιμή τους. Για το λόγο αυτό χρησιμοποιείται η ανακοίνωση org.freedesktop.dbus.property.emitschangedsigmal, η οποία μπορεί να έχει τέσσερις τιμές: true όταν η ιδιότητα αλλάζει ο παραγωγός θα στείλει ένα σήμα επισημαίνοντας την ιδιότητα που άλλαξε και την νέα τιμή της invalidates όταν η ιδιότητα αλλάζει ο παραγωγός θα στείλει σήμα με την ιδιότητα που άλλαξε αλλά όχι την νέα τιμή της false όταν η ιδιότητα αλλάζει ο παραγωγός δεν στέλνει κανένα σήμα const η ιδιότητα δεν θα αλλάξει ποτέ και δεν θα στείλει ποτέ σήμα 50

52 Στη διεπαφή που δημιουργήσαμε έχουμε μία ιδιότητα, την CurrentValue. Η ιδιότητα αυτή είναι η τρέχουσα τιμή της θερμοκρασίας εκφρασμένη σε βαθμούς κελσίου και θέλουμε κάθε φορά που αλλάζει τιμή να εκπέμπεται σήμα με την νέα τιμή της. <property name="currentvalue" type="d" access="read"> <description language="en">current temperature expressed in Celsius</description> <annotation name="org.freedesktop.dbus.property.emitschangedsignal" value="true"/> </property> Σήματα Τα σήματα χρησιμοποιούνται για να πληροφορηθούν οι καταναλωτές για ένα γεγονός που δεν θα μπορούσαν να προσδιορίσουν ρωτώντας τον παραγωγό. Για παράδειγμα ένα σήμα θα μπορούσε να στέλνεται από τον παραγωγό κάθε φορά που η θερμοκρασία ξεπερνά κάποια τιμή. Παρακάτω φαίνεται το XML αρχείο που δημιουργήσαμε για να περιγράψουμε τον παραγωγό μας στις υπόλοιπες εφαρμογές που βρίσκονται στο ίδιο alljoyn δίκτυο. 51

53 <node> <interface name="net.mine.currenttemperature"> <description language="en"> This interface provides capability to represent current temperature. </description> <annotation name="org.alljoyn.bus.secure" value="false"/> <property name="currentvalue" type="d" access="read"> <description language="en">current temperature expressed in Celsius</description> <annotation name="org.freedesktop.dbus.property.emitschangedsignal" value="true"/> </property> </interface> </node> 5.3 Παραγωγός Ο παραγωγός μας θα τρέχει στο Raspberry Pi και θα είναι υπεύθυνος για την μέτρηση της θερμοκρασίας και την αποστολή της τιμής της στον κεντρικό υπολογιστή. Για την υλοποίησή του ακολουθούμε τα παρακάτω βήματα: Δημιουργούμε ένα κενό alljoyn project στο VisualStudio και εισάγουμε το Introspection XML αρχείο που δημιουργήσαμε. Δημιουργούμε μια service class για κάθε διεπαφή που εισήγαμε στο προηγούμενο βήμα και υλοποιούμε κάθε Alljoyn διεπαφή στην αντίστοιχη service class. Προσθέτουμε τον απαραίτητο κώδικα που απευθύνεται σε υλικό που είναι συνδεδεμένο στην πλακέτα μας. Στο MainPage.cs αρχικοποιούμε το υλικό μας και συνδέουμε την εφαρμογή μας στο AlljoynBus. Αφού ακολουθήσουμε τα παραπάνω βήματα και κάνουμε compile τον κώδικά μας, μπορούμε να σιγουρευτούμε ότι όλα λειτουργούν σωστά με την χρήση του Alljoyn Explorer. 52

54 5.3.1 Δημιουργία Allljoyn Project Για να ξεκινήσουμε την υλοποίηση του παραγωγού πρώτα δημιουργούμε ένα νέο Alljoyn project. Στο Visual Studio επιλέγουμε File->New->New Project και οδηγούμαστε στο πλαίσιο της Εικόνας 20. Εδώ πατάμε στην επιλογή Alljoyn App και αφού ονομάσουμε το project και επιλέξουμε που θέλουμε να αποθηκευτεί πατάμε OK. Εικόνα 20. Visual Studio New Project 53

55 Αμέσως μόλις δημιουργήσουμε το νέο project το Visual Studio μας ζητά να επιλέξουμε τις διεπαφές που θέλουμε να συμπεριλάβουμε σε αυτό. Σε αυτό το σημείο επιλέγουμε να εισάγουμε το Introspection XML αρχείο που έχουμε δημιουργήσει για τον παραγωγό μας. Εάν επιθυμούμε μπορούμε και αργότερα να προσθέσουμε ή να αφαιρέσουμε διεπαφές από το project μας. Εικόνα 21. Visual Studio Add/Remove Alljoyn Interfaces Producer Service Class Κάθε producer ενσωματώνει μια υπηρεσία που εκθέτει την διεπαφή του. Όταν ξεκινάμε την υλοποίηση ενός producer πρώτα δημιουργούμε μια κλάση για την υπηρεσία του. Αυτή η κλάση στο project μας είναι η CurrentTempService η οποία κληρονομεί την διεπαφή-κέλυφος (ICurrentTemperatureService) που δημιουργήθηκε αυτόματα από το Visual Studio. 54

56 namespace MyProducer { public class CurrentTempService : ICurrentTemperatureService { } Στη συνέχεια πρέπει να γράψουμε τον κώδικα που υλοποιεί κάθε μέθοδο, ιδιότητα και σήμα της διεπαφής που χρησιμοποιήσαμε. Στο Introspection XML αρχείο μας έχουμε μόνο μια ιδιότητα, την CurrentValue. public IAsyncOperation<CurrentTemperatureGetCurrentValueResult> GetCurrentValueAsync(AllJoynMessageInfo info) { Task<CurrentTemperatureGetCurrentValueResult> task = new Task<CurrentTemperatureGetCurrentValueResult>(() => { return CurrentTemperatureGetCurrentValueResult.CreateSuccessResult(_temperature); }); } task.start(); return task.asasyncoperation(); Κώδικας οδήγησης του αισθητήρα Για την μέτρηση της θερμοκρασίας χρησιμοποιείται ο αισθητήρας ΜΠ Αφού λοιπόν συνδέσουμε τον αισθητήρα στην πλακέτα μας πρέπει να γράψουμε τον οδηγό της συσκευής ώστε να μπορεί το Raspberry να αντιληφθεί τον αισθητήρα και να λάβει τις απαραίτητες μετρήσεις. Η σύνδεση γίνεται όπως φαίνεται και στην παρακάτω εικόνα. Συνδέουμε το VΙΝ pin του αισθητήρα στο pin 2 του Raspberry(+5V), το GND 55

57 pin στο έκτο pin της πλακέτας μας(ground), και τα SCL και SDA του αισθητήρα στα αντίστοιχα του Raspberry Pi, δηλαδή τα pin 5 και 3. Εικόνα 22. Σύνδεση MPL3115A2 Η επικοινωνία μεταξύ Raspberry Pi και αισθητήρα γίνεται με την χρήση του προτύπου I2C. Πρώτα από όλα θα πρέπει να αρχικοποιήσουμε τον δίαυλο I2C. Για να γίνει αυτό θα ξεκινήσουμε ανακτώντας ένα επιλογέα συσκευών από το σύστημα. Στη συνέχεια θα τον χρησιμοποιήσουμε για να συλλέξουμε πληροφορίες για όλες τις συσκευές που είναι συνδεδεμένες στον δίαυλο I2C. Τέλος θα δημιουργήσουμε ένα αντικείμενο της κλάσης I2cDevice με τον επιλεγμένο ελεγκτή διαύλου και τις ρυθμίσεις που θα έχουμε ορίσει για την επικοινωνία μέσω I2C. 56

58 public async Task<I2cDevice> InitializeAsync() { string advancedquerysyntax = I2cDevice.GetDeviceSelector("I2C1"); DeviceInformationCollection deviceinformationcollection = await DeviceInformation.FindAllAsync(advancedQuerySyntax); string deviceid = deviceinformationcollection[0].id; I2cConnectionSettings mpl3115a2connection = new I2cConnectionSettings(Mpl3115a2I2cAddress); mpl3115a2connection.busspeed = I2cBusSpeed.FastMode; mpl3115a2connection.sharingmode = I2cSharingMode.Shared; } return await I2cDevice.FromIdAsync(deviceId, mpl3115a2connection); 57

59 Αφού έχουμε αρχικοποιήσει την επικοινωνία του αισθητήρα με την πλακέτα μας μέσω του διαύλου I 2 C, πρέπει να γράψουμε τον απαραίτητο κώδικα για να λαμβάνουμε τις μετρήσεις από τον αισθητήρα. Για την εύρεση πληροφοριών σχετικά με τους καταχωρητές του MPL3115A2 χρησιμοποιήθηκε το εγχειρίδιο χρήσης της συσκευής. public async Task<float> Temperature() { double celsius = 1; byte[] data = new byte[1]; byte[] TemperatureData = new byte[2]; this.i2c.writeread(new byte[] { Mpl3115a2.ControlRegister1 }, data); data[0] &= 0xFE; data[0] = 0x02; this.i2c.write(new byte[] { Mpl3115a2.ControlRegister1, data[0] }); Task.Delay(10); this.i2c.writeread(new byte[] { Mpl3115a2.TemperatureDataOutMSB }, TemperatureData); celsius = TemperatureData[0] + (TemperatureData[1] >> 4) / 16.0; if (celsius!= lastcelsius) { lastcelsius = celsius; _producer.emitcurrentvaluechanged(); } return Convert.ToSingle(celsius); } 58

60 5.3.4 Αρχικοποίηση υλικού και AlljoynBus Σε αυτό το σημείο αρχικοποιούμε τον αισθητήρα μας με την δημιουργία του αντικειμένου _mydriver και συνδέουμε την εφαρμογή μας στον AlljoynBus. Για να γίνει αυτό πρώτα δημιουργούμε μια AlljoynBusAttachment, έπειτα αρχικοποιούμε ένα παραγωγό με αυτή την AlljoynBusAttachment και τέλος αρχικοποιούμε την υπηρεσία που δημιουργήσαμε γι αυτόν τον παραγωγό και ξεκινάμε τον παραγωγό. AllJoynBusAttachment bus = new AllJoynBusAttachment(); _tempproducer = new CurrentTemperatureProducer(bus); _mydriver = new Mpl3115a2(_tempProducer); await _mydriver.setup(); _tempproducer.service = new CurrentTempService(_myDriver); _tempproducer.start(); Έλεγχος παραγωγού Εφόσον έχουμε ολοκληρώσει το project του παραγωγού, το κάνουμε compile και ξεκινούμε την εφαρμογή μας στο Raspberry Pi. Αν όλα λειτουργούν σωστά η συσκευή μας θα πρέπει να εμφανίζεται στο μενού του Alljoyn Explorer. 59

61 5.4 Εικόνα 23. IoT Explorer for Alljoyn Καταναλωτής Έχοντας δημιουργήσει τον παραγωγό που τρέχει στο δίκτυο μας, πρέπει να δημιουργήσουμε τον καταναλωτή που θα ανακαλύπτει αυτόν τον παραγωγό, θα συνδέεται με αυτόν και θα λαμβάνει τις μετρήσεις που θα συλλέγει ο πρώτος Model- View- ViewModel [25] Πριν περιγράψουμε την δημιουργία του καταναλωτή μας πρέπει να αναφερθούμε επιγραμματικά στο μοντέλο αρχιτεκτονικής λογισμικού Model- Viemodel-View που χρησιμοποιήθηκε κατά τον σχεδιασμό του καταναλωτή. Το MVVM παρέχει ένα σαφή διαχωρισμό μεταξύ της διεπαφής του χρήστη και την λογική πίσω από αυτή. Υπάρχουν τρία στοιχεία σε αυτό το πρότυπο: το View, το ViewModel και το Model. Το View είναι υπεύθυνο για τη δομή και την εμφάνιση όσων βλέπει ο χρήστης στην οθόνη. Το Model περιλαμβάνει όλα τα αντικείμενα δεδομένων της εφαρμογής. Τέλος το ViewModel λειτουργεί σαν μεσάζων μεταξύ View και Model. Το ViewModel αλληλοεπιδρά με το Model καλώντας μεθόδους στις κλάσεις του. Έτσι το ViewModel ανακτά δεδομένα από το Model και τα παρέχει στο View. Συχνά μπορεί να διαμορφώνει αυτά τα δεδομένα ώστε να διαχειρίζονται ευκολότερα από το View. Το ViewModel μπορεί να παρέχει επίσης την υλοποίηση για κάποια εντολή που έδωσε ο χρήστης μέσω του View. Για παράδειγμα όταν ο χρήστης πατά ένα κουμπί στο UI 60

62 ενεργοποιείται μια εντολή στο ViewModel. Για να μπορεί το ViewModel να συμμετέχει σε αμφίδρομη δέσμευση δεδομένων με το View θα πρέπει να ενσωματώνει την INotifyPropertyChanged διεπαφή και ένα PropertyChanged σήμα κάθε φορά που αλλάζει μια ιδιότητά του. Κάθε στοιχείο του MVVM προτύπου εξυπηρετεί ένα σαφή και ξεχωριστό ρόλο. Η ανεξαρτησία μεταξύ των τριών στοιχείων επιτρέπει: Σε κάθε στοιχείο να αντικατασταθεί Σε κάθε στοιχείο να αλλαχθεί χωρίς να επηρεαστούν τα υπόλοιπα Ανεξάρτητο έλεγχο σε κάθε στοιχείο Ανεξαρτησία στην ανάπτυξη κάθε στοιχείου Επαναχρησιμοποίηση έτοιμου κώδικα Αφού λοιπόν περιγράψαμε το μοντέλο σύμφωνα με το οποίο θα δημιουργήσουμε τον καταναλωτή μας προχωράμε στην περιγραφή της διαδικασίας υλοποίησής του. Τα βήματα που ακολουθήσαμε είναι τα παρακάτω: Δημιουργία ενός νέου Alljoyn Project Δημιουργούμε τις ViewModel class για τους δύο παραγωγούς. Δημιουργούμε τα δύο Views Τροποποιούμε το MainPage.xaml ώστε να περιλαμβάνει τα δύο Views. 61

63 Ελέγχουμε το τελικό αποτέλεσμα Δημιουργία των ViewModels Καθώς έχουμε δύο παραγωγούς στο δίκτυο μας θα πρέπει να δημιουργήσουμε δύο ζεύγη ViewModel View. Το κάθε ViewModel θα περιέχει τον κώδικα για την επίτευξη της σύνδεσης μεταξύ παραγωγού-καταναλωτή καθώς και την απαραίτητη λογική για την λήψη των μετρήσεων που αποστέλλει ο παραγωγός. Στη συνέχεια αναλύεται ο κώδικας του ViewModel του πρώτου κόμβου καθώς αυτός περιέχει την λογική που ακολουθείται σε κάθε alljoyn εφαρμογή για την υλοποίηση ενός καταναλωτή. Η ανάπτυξη του δεύτερου κόμβου έγινε με τον ίδιο τρόπο. Οπότε για τον πρώτο κόμβο δημιουργούμε την κλάση TemperatureControlViewModel, η οποία κληρονομεί την INotifyPropertyChanged ώστε να μπορεί να στέλνει σήμα στο View κάθε φορά που μεταβάλλεται η τιμή της θερμοκρασίας. Σε αυτή την κλάση υλοποιείται ο κώδικας που αφορά την υλοποίηση της επικοινωνίας παραγωγού-καταναλωτή μέσω του alljoyn. Ο κώδικας που δημιούργησε αυτόματα το Visual Studio όταν επιλέξαμε τις διεπαφές που θα χρησιμοποιήσουμε περιέχει μια κλάση-παρατηρητή(watcher) και μια κλάσηκαταναλωτή που χρησιμοποιούνται για την εύρεση και στην συνέχεια για τον έλεγχο του παραγωγού. Το πρώτο πράγμα που πρέπει να κάνουμε είναι η υλοποίηση του παρατηρητή στο κώδικά μας. Αρχικά δημιουργούμε μια AlljoynBusAttachment και αρχικοποιούμε τον παρατηρητή με αυτή. Έπειτα δημιουργούμε ένα event όταν ο παρατηρητής εντοπίζει ένα παραγωγό και ξεκινούμε τον παρατηρητή. Η διαδικασία φαίνεται στον παρακάτω κώδικα. AllJoynBusAttachment bus = new AllJoynBusAttachment(); _consumer = new CurrentTemperatureConsumer(bus); _watcher = new CurrentTemperatureWatcher(bus); _watcher.added += _watcher_added; _watcher.start(); 62

64 Το _watcher_added event ενεργοποιείται όταν ο παρατηρητής εντοπίσει ένα παραγωγό. Αυτό το event θα χρησιμοποιήσουμε για να καταχωρήσουμε ένα καταναλωτή. private async void _watcher_added(currenttemperaturewatcher sender, AllJoynServiceInfo args) { CurrentTemperatureJoinSessionResult result = await CurrentTemperatureConsumer.JoinSessionAsync(args, sender); _consumer = result.consumer; _consumer.currentvaluechanged += _consumer_currentvaluechanged; } Στη συνέχεια πρέπει να δημιουργήσουμε ένα γεγονός(event) για κάθε σήμα που μπορεί να στείλει ο παραγωγός και για όλα τα σήματα αλλαγής τιμής κάποιας ιδιότητας. Για το λόγο αυτό δημιουργήσαμε το _consumer_currentvaluechanged το οποίο θα καλείται κάθε φορά που αλλάζει η τιμή της θερμοκρασίας και θα διαβάζει την καινούρια τιμή της. Για να διαβάσουμε και να γράψουμε ιδιότητες, όπως και για να καλέσουμε μεθόδους, χρησιμοποιούμε το αντικείμενο καταναλωτή που δημιουργήσαμε. private async void _consumer_currentvaluechanged(currenttemperatureconsumer sender, object args) { } var result = await sender.getcurrentvalueasync(); Temperature = result.currentvalue; Δημιουργία του View Όπως αναφέρθηκε κάθε View είναι υπεύθυνο για την παρουσίαση των δεδομένων στον χρήστη. Κάθε φορά που μεταβάλλεται η τιμή της θερμοκρασίας θα πρέπει να ανανεώνεται και στην οθόνη για το λόγο αυτό σε κάθε View πρέπει να γίνει η απαραίτητη δέσμευση δεδομένων με τρόπο που φαίνεται παρακάτω. <TextBlock x:name="temperature" Text="{Binding Temperature}" FontSize="70" /> 63

65 Με την παραπάνω δέσμευση κάθε φορά που η τιμή της μεταβλητής Temperature μεταβάλλεται θα ενημερώνεται και το αντίστοιχο πλαίσιο στην οθόνη Τροποποίηση του MainPage.xaml Σε αυτό το σημείο έχουμε δημιουργήσει τα δύο Views, τα οποία είναι υπεύθυνα για την εμφάνιση των μετρήσεων που συλλέγει ο κάθε κόμβος μας. Τώρα μένει μόνο να εισάγουμε τα δύο Views μας στο MainPage.xaml ώστε να εμφανίζονται κάθε φορά που τρέχει η εφαρμογή μας. Αυτό γίνεται με τον εξής τρόπο: <uc:voidtemperaturecontrol Grid.Row="0"></uc:VoidTemperatureControl> <uc:temperaturecontrol Grid.Row="1"></uc:TemperatureControl> Έλεγχος του καταναλωτή Έχοντας τους δύο παραγωγούς μας να τρέχουν στις δύο πλακέτες Raspberry Pi που είναι συνδεδεμένες στο δίκτυό μας, τρέχουμε την εφαρμογή του καταναλωτή στον υπολογιστή μας και περιμένουμε να εμφανιστούν οι μετρήσεις από τους δύο κόμβους μας. Εικόνα 24. Τελικό αποτέλεσμα 64

Raspberry PI 3. Στο σχολείο

Raspberry PI 3. Στο σχολείο Raspberry PI 3 Στο σχολείο Τι είναι το Raspberry PI «Το Raspberry Pi είναι ένας υπολογιστής μεγέθους πιστωτικής κάρτας που συνδέεται στην τηλεόρασή σας και ένα πληκτρολόγιο. Είναι ένας ικανός μικρός υπολογιστής

Διαβάστε περισσότερα

Εφαρμογές Arduino Σεμινάριο Ηλεκτρονικού Τομέα

Εφαρμογές Arduino Σεμινάριο Ηλεκτρονικού Τομέα Εφαρμογές Arduino Σεμινάριο Ηλεκτρονικού Τομέα 1ο ΕΠΑΛ Περάματος 7ο ΕΚ Πειραιά Πλακέτα Arduino Το 2005 oι Massimo Banzi και David Cueartielles στο Ivrea Δημιουργούν την υπολογιστική πλατφόρμα Arduino.

Διαβάστε περισσότερα

Ενσωµατωµένα Συστήµατα

Ενσωµατωµένα Συστήµατα Ενσωµατωµένα Συστήµατα για εφαρµογές πραγµατικού χρόνου Μικροελεγκτής Arduino Ιωάννης Καλόµοιρος Αναπληρωτής Καθηγητής Τµήµα Μηχανικών Πληροφορικής Μάθηµα 7ο Τι είναι το Arduino... Ένα open-hardware σύστηµα

Διαβάστε περισσότερα

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων Εργαστήριο ενσωματωμένων συστημάτων Παρουσίαση 1: Εισαγωγή στα ενσωματωμένα συστήματα (embedded systems) Εργαστήριο Αυτομάτου Ελέγχου Ενσωματωμένα συστήματα (Embedded Systems) Ενσωματωμένα συστήματα (Embedded

Διαβάστε περισσότερα

ΠΡΟΣΚΛΗΣΗ ΕΝΔΙΑΦΕΡΟΝΤΟΣ KAI ΚΑΤΑΘΕΣΗΣ ΠΡΟΣΦΟΡΩΝ ΓΙΑ ΤΗΝ ΑΝΑΘΕΣΗ ΤΗΣ ΠΡΟΜΗΘΕΙΑΣ

ΠΡΟΣΚΛΗΣΗ ΕΝΔΙΑΦΕΡΟΝΤΟΣ KAI ΚΑΤΑΘΕΣΗΣ ΠΡΟΣΦΟΡΩΝ ΓΙΑ ΤΗΝ ΑΝΑΘΕΣΗ ΤΗΣ ΠΡΟΜΗΘΕΙΑΣ ΕΘΝΙΚΟ ΚΕΝΤΡΟ ΕΡΕΥΝΑΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΚΗΣ ΑΝΑΠΤΥΞΗΣ (Ε.Κ.Ε.Τ.Α.) / Ινστιτούτο Τεχνολογιών Πληροφορικής και Επικοινωνιών (ΙΠΤΗΛ) Θεσσαλονίκη, 16-10-2018 Αριθμ. Πρωτ.: 000517 ΠΡΟΣΚΛΗΣΗ ΕΝΔΙΑΦΕΡΟΝΤΟΣ KAI ΚΑΤΑΘΕΣΗΣ

Διαβάστε περισσότερα

Αθήνα 29 ΝΟΕ, 2016 ΘΕΜΑ: ΑΙΤΗΜΑ ΑΓΟΡΑΣ ΥΛΙΚΩΝ ΓΙΑ ΤΟ ΕΡΓΑΣΤΗΡΙΟ ΣΥΛΛΟΓΗΣ & ΕΠΕΞΕΡΓΑΣΙΑΣ ΔΕΔΟΜΕΝΩΝ

Αθήνα 29 ΝΟΕ, 2016 ΘΕΜΑ: ΑΙΤΗΜΑ ΑΓΟΡΑΣ ΥΛΙΚΩΝ ΓΙΑ ΤΟ ΕΡΓΑΣΤΗΡΙΟ ΣΥΛΛΟΓΗΣ & ΕΠΕΞΕΡΓΑΣΙΑΣ ΔΕΔΟΜΕΝΩΝ Αθήνα 29 ΝΟΕ, 2016 ΘΕΜΑ: ΑΙΤΗΜΑ ΑΓΟΡΑΣ ΥΛΙΚΩΝ ΓΙΑ ΤΟ ΕΡΓΑΣΤΗΡΙΟ ΣΥΛΛΟΓΗΣ & ΕΠΕΞΕΡΓΑΣΙΑΣ ΔΕΔΟΜΕΝΩΝ Προς, Ο πειραματικός εξοπλισμός αυτής της πρότασης / σ αυτό το αίτημα, θα μας δώσει τη δυνατότητα να δημιουργήσουμε

Διαβάστε περισσότερα

Σχεδιασμός και υλοποίηση μια έξυπνης ενσωματωμένης κεντρικής μονάδας συναγερμού IP

Σχεδιασμός και υλοποίηση μια έξυπνης ενσωματωμένης κεντρικής μονάδας συναγερμού IP Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http://arch.icte.uowm.gr Σχεδιασμός και υλοποίηση μια έξυπνης

Διαβάστε περισσότερα

BEGINNING WITH RASPBERRY PI

BEGINNING WITH RASPBERRY PI BEGINNING WITH RASPBERRY PI ΓΙΑΝΝΑΚΗΣ ΚΥΡΙΑΚΟΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩς LinkedIn: Kyriakos Giannakis #Fosscomm2016 ΤΙ ΕΙΝΑΙ; Το Raspberry Pi είναι μια σειρά από Barebone, single-board PCs, σχεδιασμένα και

Διαβάστε περισσότερα

Παπασταθοπούλου Αλεξάνδρα Επιβλέπων Καθηγητής: Ψάννης Κωνσταντίνος

Παπασταθοπούλου Αλεξάνδρα Επιβλέπων Καθηγητής: Ψάννης Κωνσταντίνος ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΤΜΗΜΑΤΟΣ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Παπασταθοπούλου Αλεξάνδρα Επιβλέπων Καθηγητής: Ψάννης Κωνσταντίνος Ορισμός «Το Διαδίκτυο των πραγμάτων (IoT) είναι

Διαβάστε περισσότερα

Μετρήσεις και συλλογή δεδομένων (Data acquisition) με μικροελεγκτές. Εισαγωγή στο Arduino. Ηλεκτρομηχανολογικός εξοπλισμός διεργασιών

Μετρήσεις και συλλογή δεδομένων (Data acquisition) με μικροελεγκτές. Εισαγωγή στο Arduino. Ηλεκτρομηχανολογικός εξοπλισμός διεργασιών Μετρήσεις και συλλογή δεδομένων (Data acquisition) με μικροελεγκτές Εισαγωγή στο Arduino Ηλεκτρομηχανολογικός εξοπλισμός διεργασιών Τι είναι Μικροελεγκτής; Ηλεκτρονική συσκευή που διαχειρίζεται ηλεκτρονικά

Διαβάστε περισσότερα

Bread Online. Παναγιώτης Ιωαννίδης Επιβλέπων καθηγητής: Μηνάς Δασυγένης

Bread Online. Παναγιώτης Ιωαννίδης Επιβλέπων καθηγητής: Μηνάς Δασυγένης Bread Online Σχεδιασμός και μετατροπή μιας απλής οικιακής συσκευής σε επαναπρογραμματιζόμενη συσκευή IP Παναγιώτης Ιωαννίδης Επιβλέπων καθηγητής: Μηνάς Δασυγένης Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών

Διαβάστε περισσότερα

Διαφορές single-processor αρχιτεκτονικών και SoCs

Διαφορές single-processor αρχιτεκτονικών και SoCs 13.1 Τα συστήματα και η επικοινωνία μεταξύ τους γίνονται όλο και περισσότερο πολύπλοκα. Δεν μπορούν να περιγραφούνε επαρκώς στο επίπεδο RTL καθώς αυτή η διαδικασία γίνεται πλέον αρκετά χρονοβόρα. Για αυτό

Διαβάστε περισσότερα

Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018. Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια)

Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018. Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια) Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018 Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια) ΠΕΡΙΟΧΗ Α: ΕΦΑΡΜΟΓΕΣ ΜΕ ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ΕΠΙΓΝΩΣΗ ΣΥΓΚΕΙΜΕΝΟΥ Οι αισθητήρες μας δίνουν τη δυνατότητα

Διαβάστε περισσότερα

WIRELESS SENSOR NETWORKS (WSN)

WIRELESS SENSOR NETWORKS (WSN) WIRELESS SENSOR NETWORKS (WSN) Δρ. Ιωάννης Παναγόπουλος Εργαστήριο Υπολογιστικών Συστημάτων Καθ. Γεώργιος Παπακωνσταντίνου Αθήνα 2008 ΕΙΣΑΓΩΓΗ ΣΤΑ WSN Σε συγκεκριμένες εφαρμογές, επιθυμείται η μέτρηση

Διαβάστε περισσότερα

EΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΕΙΔΙΚΟΣ ΛΟΓΑΡΙΑΣΜΟΣ ΚΟΝΔΥΛΙΩΝ ΕΡΕΥΝΑΣ ΓΡΑΜΜΑΤΕΙΑ ΕΠΙΤΡΟΠΗΣ ΕΡΕΥΝΩΝ ΑΝΑΡΤΗΤΕΑ ΣΤΟ ΚΗΜΔΗΣ & ΣΤΗ ΔΙΑΥΓΕΙΑ

EΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΕΙΔΙΚΟΣ ΛΟΓΑΡΙΑΣΜΟΣ ΚΟΝΔΥΛΙΩΝ ΕΡΕΥΝΑΣ ΓΡΑΜΜΑΤΕΙΑ ΕΠΙΤΡΟΠΗΣ ΕΡΕΥΝΩΝ ΑΝΑΡΤΗΤΕΑ ΣΤΟ ΚΗΜΔΗΣ & ΣΤΗ ΔΙΑΥΓΕΙΑ EΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΕΙΔΙΚΟΣ ΛΟΓΑΡΙΑΣΜΟΣ ΚΟΝΔΥΛΙΩΝ ΕΡΕΥΝΑΣ ΓΡΑΜΜΑΤΕΙΑ ΕΠΙΤΡΟΠΗΣ ΕΡΕΥΝΩΝ ΑΝΑΡΤΗΤΕΑ ΣΤΟ ΚΗΜΔΗΣ & ΣΤΗ ΔΙΑΥΓΕΙΑ Πρόσκληση εκδήλωσης ενδιαφέροντος 45005/2015 στο πλαίσιο

Διαβάστε περισσότερα

Τεχνικές Προδιαγραφές Συστήματος

Τεχνικές Προδιαγραφές Συστήματος Τεχνικές Προδιαγραφές Συστήματος Δομή Παρουσίασης Συνολική Εικόνα Συστήματος Τεχνικές Προδιαγραφές Εξοπλισμού Οχήματος Τεχνικές Προδιαγραφές Λογισμικού Κέντρου Ελέγχου Τελική Επιλογή Εξοπλισμού/ Λογισμικού

Διαβάστε περισσότερα

ΕΦΑΡΜΟΓΕΣ ΤΗΛΕΠIΚΟΙΝΩΝΙΑΚΩΝ ΔΙΑΤΑΞΕΩΝ

ΕΦΑΡΜΟΓΕΣ ΤΗΛΕΠIΚΟΙΝΩΝΙΑΚΩΝ ΔΙΑΤΑΞΕΩΝ ΕΦΑΡΜΟΓΕΣ ΤΗΛΕΠIΚΟΙΝΩΝΙΑΚΩΝ ΔΙΑΤΑΞΕΩΝ ΟΙΚΟΝOΜΟΥ ΧΑΡΗΣ (6424) ΦΩΚΟΣ ΝΙΚΟΛΑΟΣ(6592) ΚΑΜΒΥΣΗΣ ΝΙΚΟΛΑΟΣ(7178) 2013-2014 ΠΕΡΙΕΧΟΜΕΝΑ Σκοπός της εργασίας Ανάλυση Arduino Uno Δημιουργία πληροφορίας Αποστολή και

Διαβάστε περισσότερα

Σχεδιασμός και κατασκευή ενός υβριδικού αμυντικού αυτοματοποιημένου ρομποτικού συστήματος

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

Διαβάστε περισσότερα

Σύντοµη εισαγωγική παρουσίαση του Raspberry Pi και η χρήση του σε συνδυασµό σε την Python και Το Scratch

Σύντοµη εισαγωγική παρουσίαση του Raspberry Pi και η χρήση του σε συνδυασµό σε την Python και Το Scratch Σύντοµη εισαγωγική παρουσίαση του Raspberry Pi και η χρήση του σε συνδυασµό σε την Python και Το Scratch Σαλπασαράνης Κωνσταντίνος Εκπαιδευτικός ΠΕ19 Πληροφορικής Ηλεκτρολόγος Μηχανικός & Τεχνολογίας Υπολογιστών

Διαβάστε περισσότερα

ΕΛΕΓΧΟΣ ΑΝΤΛΙΟΣΤΑΣΙΟΥ ΜΕ ΔΕΞΑΜΕΝΗ ΜΕΣΩ GSM CHECK IN TANK PUMPING THROUGH GSM

ΕΛΕΓΧΟΣ ΑΝΤΛΙΟΣΤΑΣΙΟΥ ΜΕ ΔΕΞΑΜΕΝΗ ΜΕΣΩ GSM CHECK IN TANK PUMPING THROUGH GSM ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΏΝ ΕΦΑΡΜΟΓΏΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε. ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ CHECK IN TANK PUMPING THROUGH GSM Επιβλέπων Καθηγητής: Κόγιας Παναγιώτης Επιβλέπουσα Καθηγήτρια: Κόγια Φωτεινή ΚΑΒΑΛΑ, ΦΕΒΡΟΥΑΡΙΟΣ

Διαβάστε περισσότερα

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Λαμπαδαρίδης Αντώνιος el04148@mail.ntua.gr Διπλωματική εργασία στο Εργαστήριο Συστημάτων Βάσεων Γνώσεων και Δεδομένων Επιβλέπων: Καθηγητής Τ. Σελλής Περίληψη

Διαβάστε περισσότερα

Ηράκλειο 28/10/2016 Αρ. Πρωτ.:

Ηράκλειο 28/10/2016 Αρ. Πρωτ.: ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΝΟΜΟΣ ΗΡΑΚΛΕΙΟΥ ΔΗΜΟΣ ΗΡΑΚΛΕΙΟΥ ΔΙΕΥΘΥΝΣΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Ταχ. Δ/νση: Ανδρόγεω 2, 4 ος όροφος Τ.Κ: 71202 Πληροφορίες: Γ.Φανταουτσάκης Τηλ.: 2810

Διαβάστε περισσότερα

ΡΟΜΠΟΤΙΚΗ. ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication

ΡΟΜΠΟΤΙΚΗ. ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication ΡΟΜΠΟΤΙΚΗ ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication ΜΠΑΝΤΗΣ ΑΝΤΩΝΙΟΣ 533 ΤΣΙΚΤΣΙΡΗΣ ΔΗΜΗΤΡΙΟΣ 551 ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΡΟΜΠΟΤ LEGO NXT Το ρομπότ

Διαβάστε περισσότερα

Σχεδιαστικά Προγράμματα Επίπλου

Σχεδιαστικά Προγράμματα Επίπλου Σχεδιαστικά Προγράμματα Επίπλου Καθηγήτρια ΦΕΡΦΥΡΗ ΣΩΤΗΡΙΑ Τμήμα ΣΧΕΔΙΑΣΜΟΥ & ΤΕΧΝΟΛΟΓΙΑΣ ΞΥΛΟΥ - ΕΠΙΠΛΟΥ Σχεδιαστικά Προγράμματα Επίπλου Η σχεδίαση με τον παραδοσιακό τρόπο απαιτεί αυξημένο χρόνο, ενώ

Διαβάστε περισσότερα

ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ Ι. Σημειώσεις Θεωρίας

ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ Ι. Σημειώσεις Θεωρίας Ινστιτούτα Επαγγελματική Κατάρτισης ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ Ι Σημειώσεις Θεωρίας Επιμέλεια: Ματθές Δημήτριος Αθήνα 2017 Μάθημα 1: Βασικές Έννοιες στα Δίκτυα Υπολογιστών 1.1 Δίκτυο Υπολογιστών Ένα δίκτυο είναι

Διαβάστε περισσότερα

Επίλεξε το Πρόγραμμα που θες. 2play. 2play. 2play. 2play. 2play. 2play. 2play. 2play. 3play

Επίλεξε το Πρόγραμμα που θες. 2play. 2play. 2play. 2play. 2play. 2play. 2play. 2play. 3play Επίλεξε το Πρόγραμμα που θες Υπηρεσία Πρόγραμμα Σταθερής & Internet ή/και Τηλεόρασης Διάρκεια Συμβολαίου (σε μήνες) Μηνιαίο Πάγιο Μηνιαίο Πάγιο με VDSL VDSL 3play Πρόγραμμα Χρόνου Ομιλίας της επιλογής

Διαβάστε περισσότερα

Το Διαδίκτυο των Αντικειμένων και η Δύναμη του Πλήθους (Internet of Things and Crowdsourcing)

Το Διαδίκτυο των Αντικειμένων και η Δύναμη του Πλήθους (Internet of Things and Crowdsourcing) Το Διαδίκτυο των Αντικειμένων και η Δύναμη του Πλήθους (Internet of Things and Crowdsourcing) Καθ. Σωτήρης Νικολετσέας 1,2 1 Τμήμα Μηχανικών Η/Υ και Πληροφορικής, Πανεπιστήμιο Πατρών 2 Ινστιτούτο Τεχνολογίας

Διαβάστε περισσότερα

Γιώργος Γιαννής, Καθηγητής Εθνικό Μετσόβιο Πολυτεχνείο Τομέας Μεταφορών και Συγκοινωνιακής Υποδομής

Γιώργος Γιαννής, Καθηγητής Εθνικό Μετσόβιο Πολυτεχνείο Τομέας Μεταφορών και Συγκοινωνιακής Υποδομής Με την επίσημη υποστήριξη: Γιώργος Γιαννής, Καθηγητής Εθνικό Μετσόβιο Πολυτεχνείο Τομέας Μεταφορών και Συγκοινωνιακής Υποδομής Διημερίδα ITS Hellas «Ευφυή Συστήματα Μεταφορών & Eξελίξεις στην Ελλάδα» Αθήνα,

Διαβάστε περισσότερα

ΣΥΝΔΕΘΕΊΤΕ ΆΨΟΓΑ ΣΤΟΝ ΕΞΩΤΕΡΙΚΌ ΧΏΡΟ ΤΟΥ ΣΠΙΤΙΟΎ ΣΑΣ

ΣΥΝΔΕΘΕΊΤΕ ΆΨΟΓΑ ΣΤΟΝ ΕΞΩΤΕΡΙΚΌ ΧΏΡΟ ΤΟΥ ΣΠΙΤΙΟΎ ΣΑΣ ΣΥΝΔΕΘΕΊΤΕ ΆΨΟΓΑ ΣΤΟΝ ΕΞΩΤΕΡΙΚΌ ΧΏΡΟ ΤΟΥ ΣΠΙΤΙΟΎ ΣΑΣ Με την C3C θα έχετε πάντα το κεφάλι σας ήσυχο. Η C3C είναι μια κάμερα Wi-Fi εξωτερικού χώρου που σας επιτρέπει να ελέγχετε τον κήπο σας, το χώρο στάθμευσης

Διαβάστε περισσότερα

Το καθημερινό μου VAIO

Το καθημερινό μου VAIO Το καθημερινό μου VAIO www.sony-europe.com 1 Τεχνικά Χαρακτηριστικά Λειτουργικό σύστημα Λειτουργικό σύστημα Αυθεντικά Windows 7 Home Premium με Service Pack 1 64bit Αρχιτεκτονική Σετ ολοκληρωμένων Intel

Διαβάστε περισσότερα

ΤΈΣΣΕΡΙΣ ΑΠΛΟΊ ΤΡΌΠΟΙ ΓΙΑ ΤΗΝ ΕΝΊΣΧΥΣΗ ΤΗΣ ΕΥΕΛΙΞΊΑΣ ΤΗΣ ΕΡΓΑΣΊΑΣ

ΤΈΣΣΕΡΙΣ ΑΠΛΟΊ ΤΡΌΠΟΙ ΓΙΑ ΤΗΝ ΕΝΊΣΧΥΣΗ ΤΗΣ ΕΥΕΛΙΞΊΑΣ ΤΗΣ ΕΡΓΑΣΊΑΣ ΤΈΣΣΕΡΙΣ ΑΠΛΟΊ ΤΡΌΠΟΙ ΓΙΑ ΤΗΝ ΕΝΊΣΧΥΣΗ ΤΗΣ ΕΥΕΛΙΞΊΑΣ ΤΗΣ ΕΡΓΑΣΊΑΣ Δώστε νέα διάσταση στην επιχείρησή σας Ανεξάρτητα από το πώς αξιολογείτε την τρέχουσα απόδοση της επιχείρησής σας, σχεδόν κάθε εταιρικός

Διαβάστε περισσότερα

ΣΥΝΔΕΘΕΊΤΕ ΆΨΟΓΑ ΣΤΟΝ ΕΣΩΤΕΡΙΚΌ Ή ΕΞΩΤΕΡΙΚΌ ΧΏΡΟ ΤΟΥ ΣΠΙΤΙΟΎ ΣΑΣ

ΣΥΝΔΕΘΕΊΤΕ ΆΨΟΓΑ ΣΤΟΝ ΕΣΩΤΕΡΙΚΌ Ή ΕΞΩΤΕΡΙΚΌ ΧΏΡΟ ΤΟΥ ΣΠΙΤΙΟΎ ΣΑΣ ΣΥΝΔΕΘΕΊΤΕ ΆΨΟΓΑ ΣΤΟΝ ΕΣΩΤΕΡΙΚΌ Ή ΕΞΩΤΕΡΙΚΌ ΧΏΡΟ ΤΟΥ ΣΠΙΤΙΟΎ ΣΑΣ Με την C4S θα έχετε πάντα το κεφάλι σας ήσυχο. Η C4S είναι μια κάμερα PoE που λειτουργεί και σε εσωτερικό και σε εξωτερικό χώρο. Ελέγξτε

Διαβάστε περισσότερα

Ασφάλεια σε χώρους αναψυχής: Ένα σύστημα από έξυπνα αντικείμενα

Ασφάλεια σε χώρους αναψυχής: Ένα σύστημα από έξυπνα αντικείμενα Σχολή Επικοινωνίας και Μέσων Ενημέρωσης Πτυχιακή εργασία Ασφάλεια σε χώρους αναψυχής: Ένα σύστημα από έξυπνα αντικείμενα Εύρος Χριστοδούλου Λεμεσός, Μάιος 2018 ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΚΟΙΝΩΝΙΑΣ

Διαβάστε περισσότερα

SMART BUILDING. Ενεργειακή Αναβάθμιση Κτιριακών Εγκαταστάσεων με Χρήση Νέων Τεχνολογικών Λύσεων

SMART BUILDING. Ενεργειακή Αναβάθμιση Κτιριακών Εγκαταστάσεων με Χρήση Νέων Τεχνολογικών Λύσεων SMART BUILDING Ενεργειακή Αναβάθμιση Κτιριακών Εγκαταστάσεων με Χρήση Νέων Τεχνολογικών Λύσεων Ολοκληρωμένο Σύστημα Διαχείρισης Ενέργειας Απαιτήσεις 1. Δυνατότητα συλλογής δεδομένων από κάθε διαθέσιμη

Διαβάστε περισσότερα

Συσκευές Τηλεπικοινωνιών και Δικτύωσης. Επικοινωνίες Δεδομένων Μάθημα 9 ο

Συσκευές Τηλεπικοινωνιών και Δικτύωσης. Επικοινωνίες Δεδομένων Μάθημα 9 ο Συσκευές Τηλεπικοινωνιών και Δικτύωσης Επικοινωνίες Δεδομένων Μάθημα 9 ο Εισαγωγή Ένα δίκτυο αποτελείται από ενεργά και παθητικά στοιχεία. Στα παθητικά στοιχεία εντάσσονται τα καλώδια και τα εξαρτήματα

Διαβάστε περισσότερα

Οδηγός εγκατάστασης λειτουργικών συστημάτων

Οδηγός εγκατάστασης λειτουργικών συστημάτων Μέρος 1ο Οδηγός εγκατάστασης λειτουργικών συστημάτων RASPBERRY PI Εγκατάσταση για αρχάριους- NOOBS Το NOOBS (New Out Of Box Software) είναι ένα πρόγραμμα εγκατάστασης λειτουργικών συστημάτων που έχει σκοπό

Διαβάστε περισσότερα

Λύσεις για έξυπνο σπίτι

Λύσεις για έξυπνο σπίτι Λύσεις για έξυπνο σπίτι Οι ιντερνετικές μας συσκευές μαθαίνουν από τις προτιμήσεις και τις συνήθειες του χρήστη και εξασφαλίζουν την άνεσή τους ανά πάσα στιγμή Το κινητό σας τηλέφωνο θα γίνει το τηλεχειριστήριό

Διαβάστε περισσότερα

Εισαγωγή στο KNX. Ανακαλύψτε το KNX

Εισαγωγή στο KNX. Ανακαλύψτε το KNX Εισαγωγή στο KNX Ανακαλύψτε το KNX Συμβατική εγκατάσταση Κάθε λειτουργία απαιτεί ένα ή περισσότερα καλώδια για να πραγματοποιηθεί Πολλές λειτουργίες = πολλά καλώδια Κάθε λειτουργία πρέπει να έχει μελετηθεί

Διαβάστε περισσότερα

Εύκολος, βασικός, φορητός

Εύκολος, βασικός, φορητός Εύκολος, βασικός, φορητός www.sonyeurope.com 1 Τεχνικά Χαρακτηριστικά Λειτουργικό σύστημα Λειτουργικό σύστημα Αυθεντικά Windows 7 Home Premium (64bit) Αρχιτεκτονική Σετ ολοκληρωμένων Intel HM65 Express

Διαβάστε περισσότερα

Κεφάλαιο 1.6: Συσκευές αποθήκευσης

Κεφάλαιο 1.6: Συσκευές αποθήκευσης Κεφάλαιο 1.6: Συσκευές αποθήκευσης 1.6.1 Συσκευές αποθήκευσης Μνήμη τυχαίας προσπέλασης - RAM Η μνήμη RAM (Random Access Memory Μνήμη Τυχαίας Προσπέλασης), κρατεί όλη την πληροφορία (δεδομένα και εντολές)

Διαβάστε περισσότερα

ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΤΕΙ ΗΠΕΙΡΟΥ- ΣΤΕΦ ΤΜΗΜΑ ΜΗΧ. ΠΛΗΡΟΦΟΡΙΚΗΣ Τ.Ε.

ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΤΕΙ ΗΠΕΙΡΟΥ- ΣΤΕΦ ΤΜΗΜΑ ΜΗΧ. ΠΛΗΡΟΦΟΡΙΚΗΣ Τ.Ε. ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΤΕΙ ΗΠΕΙΡΟΥ- ΣΤΕΦ ΤΜΗΜΑ ΜΗΧ. ΠΛΗΡΟΦΟΡΙΚΗΣ Τ.Ε. 1 Εξάμηνο Διδασκαλίας: 7 ο Διδάσκων: Γρηγόρης Δουμένης / Δημήτρης Δημόπουλος E-mail: greg@teiep.gr ΓΝΩΡΙΜΙΑ Γρηγόρης Δουμένης (EE,

Διαβάστε περισσότερα

ΠΛΑΤΩΝΑΣ Έργο ΓΓΕΤ 1SME2009

ΠΛΑΤΩΝΑΣ Έργο ΓΓΕΤ 1SME2009 ΠΛΑΤΩΝΑΣ Έργο ΓΓΕΤ 1SME2009 4o Συνέδριο InfoCom Green ICT 2012 ΕΥΡΩΠΑΪΚΗ ΕΝΩΣΗ ΠΛΑΤΩΝΑΣ ΠΛΑΤφόρμα έξυπνου διαλογισμικού για συλλογή, ανάλυση, επεξεργασία δεδομένων από συστήματα πολλαπλών ετερογενών ΑισθητήρΩΝ

Διαβάστε περισσότερα

Κεφάλαιο 2.4: Εργασία με εικονίδια

Κεφάλαιο 2.4: Εργασία με εικονίδια Κεφάλαιο 2.4: Εργασία με εικονίδια 2.4.1 Συχνότερα εμφανιζόμενα εικονίδια των Windows Τα πιο συνηθισμένα εικονίδια, που μπορεί να συναντήσουμε, είναι: Εικονίδια συστήματος: Τα Windows εμφανίζουν τα στοιχεία

Διαβάστε περισσότερα

Μαθαίνοντας το hardware του αναπτυξιακού

Μαθαίνοντας το hardware του αναπτυξιακού 1. ΑΣΚΗΣΗ 1 Μαθαίνοντας το hardware του αναπτυξιακού Προϋποθέσεις Το εργαστήριο αυτό προϋποθέτει το διάβασμα και χρήση των εξής: Αρχείο mcbstr9.chm HTML, που δίδεται με τα υπόλοιπα αρχεία του εργαστηρίου.

Διαβάστε περισσότερα

Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή

Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή 1.5.1 Ανάλυση των μερών ενός υπολογιστή Μονάδα συστήματος Είναι το κουτί του υπολογιστή το οποίο φαίνεται αρκετά συμπαγές, αλλά στην πραγματικότητα αποτελείται

Διαβάστε περισσότερα

Ενότητα 1η. Εισαγωγή στην Πληροφορική

Ενότητα 1η. Εισαγωγή στην Πληροφορική Ενότητα 1η Εισαγωγή στην Πληροφορική 1.1 Τι είναι Πληροφορική Ένας σύντομος ορισμός για το τι είναι πληροφορική είναι ο παρακάτω: όλα εκείνα που χρειάζεται κανείς για να παράγει, να οργανώνει και να διαχειρίζεται

Διαβάστε περισσότερα

ΒΑΣΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ. Τίτλος Μαθήματος. Διαλέξεις - Θεωρητική Διδασκαλία, Εποπτευόμενο Εργαστήριο Επίδειξη, Μελέτες (Projects)

ΒΑΣΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ. Τίτλος Μαθήματος. Διαλέξεις - Θεωρητική Διδασκαλία, Εποπτευόμενο Εργαστήριο Επίδειξη, Μελέτες (Projects) ΒΑΣΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ Τίτλος Μαθήματος Μικροελεγκτές και Ενσωματωμένα συστήματα Ανάπτυξη και Εφαρμογές Κωδικός Μαθήματος Μ2 Θεωρία / Εργαστήριο Θεωρία + Εργαστήριο Πιστωτικές μονάδες 4 Ώρες Διδασκαλίας 2Θ+1Ε

Διαβάστε περισσότερα

Το καθημερινό μου VAIO

Το καθημερινό μου VAIO Το καθημερινό μου VAIO www.sony-europe.com 1 Τεχνικά Χαρακτηριστικά Λειτουργικό σύστημα Λειτουργικό σύστημα Αυθεντικά Windows 7 Home Premium με Service Pack 1 64bit Αρχιτεκτονική Σετ ολοκληρωμένων AMD

Διαβάστε περισσότερα

Η Oracle ανακοίνωσε την πιο ολοκληρωμένη λύση στον τομέα της Ανάλυσης δεδομένων στο Cloud

Η Oracle ανακοίνωσε την πιο ολοκληρωμένη λύση στον τομέα της Ανάλυσης δεδομένων στο Cloud Η Oracle ανακοίνωσε την πιο ολοκληρωμένη λύση στον τομέα της Ανάλυσης δεδομένων στο Cloud Το Oracle Analytics Cloud αποτελεί ένα ολοκληρωμένο σύνολο δυνατοτήτων που περιλαμβάνει έτοιμο περιεχόμενο, εξειδικευμένα

Διαβάστε περισσότερα

Διπλωματική Εργασία. Επιβλέπων καθηγητής: Δρ. Μηνάς Δασυγένης. Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών

Διπλωματική Εργασία. Επιβλέπων καθηγητής: Δρ. Μηνάς Δασυγένης. Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Διπλωματική Εργασία Επιβλέπων καθηγητής: Δρ. Μηνάς Δασυγένης Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών,

Διαβάστε περισσότερα

Το καθημερινό μου VAIO

Το καθημερινό μου VAIO Το καθημερινό μου VAIO www.sony-europe.com 1 Τεχνικά Χαρακτηριστικά Λειτουργικό σύστημα Λειτουργικό σύστημα Αυθεντικά Windows 7 Home Premium με Service Pack 1 64bit Αρχιτεκτονική Σετ ολοκληρωμένων Intel

Διαβάστε περισσότερα

Σχεδιασμός και υλοποίηση κυκλώματος μέτρησης κατανάλωσης ισχύος

Σχεδιασμός και υλοποίηση κυκλώματος μέτρησης κατανάλωσης ισχύος Σχεδιασμός και υλοποίηση κυκλώματος μέτρησης κατανάλωσης ισχύος Φοιτητής Φετινίδης Αναστάσιος Επιβλέπων Δασυγένης Μηνάς Μάρτιος 2014 1 Περιεχόμενα παρουσίασης Εισαγωγή Θεωρητικό υπόβαθρο Υλικό μέρος του

Διαβάστε περισσότερα

Information Technology for Business

Information Technology for Business Information Technology for Business Lecturer: N. Kyritsis, MBA, Ph.D. Candidate e-mail: kyritsis@ist.edu.gr Computer System Hardware Υποδομή του Information Technology Υλικό Υπολογιστών (Hardware) Λογισμικό

Διαβάστε περισσότερα

ARDUINO ΟΔΗΓΟΣ ΓΙΑ ΑΡΧΑΡΙΟΥΣ

ARDUINO ΟΔΗΓΟΣ ΓΙΑ ΑΡΧΑΡΙΟΥΣ ARDUINO ΟΔΗΓΟΣ ΓΙΑ ΑΡΧΑΡΙΟΥΣ ΤΙ ΕIΝΑΙ ΤΟ ARDUINO; Το Arduino είναι μια «ανοικτού κώδικα» πλατφόρμα βασισμένη σε ευέλικτο και εύκολο στη χρήση hardware και software. Αυτό σημαίνει ότι ο καθένας μπορεί να

Διαβάστε περισσότερα

Εισαγωγή στην Αρχιτεκτονική Η/Υ

Εισαγωγή στην Αρχιτεκτονική Η/Υ Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2017-18 Εισαγωγή στην Αρχιτεκτονική (θεμελιώδεις αρχές λειτουργίας των υπολογιστών) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Μείνετε πάντα σε επαφή

Μείνετε πάντα σε επαφή ΠΡΟΔΙΑΓΡΑΦΕΣ Μείνετε πάντα σε επαφή με το σπίτι σας 01 ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ Βασισμένο στην τεχνολογία Z wave+ Συμβατό με συσκευές που λειτουργούν στο σύστημα IoT - Internet Of Things Η εφαρμογή

Διαβάστε περισσότερα

Διαχείριση Εμφυτευμάτων & Ιατρικού Φακέλου Ασθενούς Ορθοπεδικής Κλινικής. E-Plant

Διαχείριση Εμφυτευμάτων & Ιατρικού Φακέλου Ασθενούς Ορθοπεδικής Κλινικής. E-Plant Διαχείριση Εμφυτευμάτων & Ιατρικού Φακέλου Ασθενούς Ορθοπεδικής Κλινικής E-Plant To E-plant αποτελεί μια ολοκληρωμένη λύση για τη Διαχείριση Αποθήκης Εμφυτευμάτων και Ιστορικού (φάκελος) ασθενή ορθοπεδικής

Διαβάστε περισσότερα

ΣΥΣΤΗΜΑ ΤΗΛΕΔΙΑΧΕΙΡΙΣΗΣ & ΤΗΛΕ-ΕΛΕΓΧΟΥ ΔΙΚΤΥΟΥ ΗΛΕΚΤΡΟΦΩΤΙΣΜΟΥ

ΣΥΣΤΗΜΑ ΤΗΛΕΔΙΑΧΕΙΡΙΣΗΣ & ΤΗΛΕ-ΕΛΕΓΧΟΥ ΔΙΚΤΥΟΥ ΗΛΕΚΤΡΟΦΩΤΙΣΜΟΥ ΣΥΣΤΗΜΑ ΤΗΛΕΔΙΑΧΕΙΡΙΣΗΣ & ΤΗΛΕ-ΕΛΕΓΧΟΥ ΔΙΚΤΥΟΥ ΗΛΕΚΤΡΟΦΩΤΙΣΜΟΥ 1 Η προσπάθεια του ανθρώπου για τη συνεχή άνοδο του βιοτικού του επιπέδου αλλά και η ραγδαία αύξηση του πληθυσμού έχουν οδηγήσει σε σοβαρά

Διαβάστε περισσότερα

ΣΥΝΔΕΘΕΙΤΕ ΑΨΟΓΑ ΣΤΟ ΣΠΙΤΙ, ΤΟ ΓΡΑΦΕΙΟ ΣΑΣ ΚΑΙ ΤΟ ΚΑΤΑΣΤΗΜΑ ΣΑΣ. ΕΠΙΚΟΙΝΩΝΗΣΤΕ ΜΕ ΤΗΝ ΟΙΚΟΓΕΝΕΙΑ ΣΑΣ ΚΑΙ ΠΑΡΑΚΟΛΟΥΘΗΣΤΕ ΤΑ ΚΑΤΟΙΚΙΔΙΑ ΖΩΑ ΣΑΣ.

ΣΥΝΔΕΘΕΙΤΕ ΑΨΟΓΑ ΣΤΟ ΣΠΙΤΙ, ΤΟ ΓΡΑΦΕΙΟ ΣΑΣ ΚΑΙ ΤΟ ΚΑΤΑΣΤΗΜΑ ΣΑΣ. ΕΠΙΚΟΙΝΩΝΗΣΤΕ ΜΕ ΤΗΝ ΟΙΚΟΓΕΝΕΙΑ ΣΑΣ ΚΑΙ ΠΑΡΑΚΟΛΟΥΘΗΣΤΕ ΤΑ ΚΑΤΟΙΚΙΔΙΑ ΖΩΑ ΣΑΣ. ΣΥΝΔΕΘΕΙΤΕ ΑΨΟΓΑ ΣΤΟ ΣΠΙΤΙ, ΤΟ ΓΡΑΦΕΙΟ ΣΑΣ ΚΑΙ ΤΟ ΚΑΤΑΣΤΗΜΑ ΣΑΣ. ΕΠΙΚΟΙΝΩΝΗΣΤΕ ΜΕ ΤΗΝ ΟΙΚΟΓΕΝΕΙΑ ΣΑΣ ΚΑΙ ΠΑΡΑΚΟΛΟΥΘΗΣΤΕ ΤΑ ΚΑΤΟΙΚΙΔΙΑ ΖΩΑ ΣΑΣ. Με το Mini O θα έχετε πάντα το κεφάλι σας ήσυχο. Το C2mini

Διαβάστε περισσότερα

Υλοποίηση Τεχνολογιών έξυπνων σπιτιών

Υλοποίηση Τεχνολογιών έξυπνων σπιτιών Πανεπιστήμιο Μακεδονίας Μεταπτυχιακό Εφ. Πληροφορικής Ειδικευση Συστήματα Υπολογιστών Μεταπτυχιακή Εργασία Υλοποίηση Τεχνολογιών έξυπνων σπιτιών Εκπόνηση: Απόστολος Πλαστήρας Επιβλέπων Καθηγητής: Αλέξανδρος

Διαβάστε περισσότερα

Μάθημα 4.7 Θύρες περιφερειακών

Μάθημα 4.7 Θύρες περιφερειακών Μάθημα 4.7 Θύρες περιφερειακών - Εισαγωγή - Η σειριακή θύρα - Η παράλληλη θύρα - Οι θύρες πληκτρολογίου και ποντικιού τύπου PS/2 - Ο διάδρομος USB Όταν ολοκληρώσεις το μάθημα αυτό θα μπορείς: Να αναφέρεις

Διαβάστε περισσότερα

Β2.6 Άλλες Περιφερειακές Συσκευές και Κάρτες Επέκτασης

Β2.6 Άλλες Περιφερειακές Συσκευές και Κάρτες Επέκτασης Β2.6 Άλλες Περιφερειακές Συσκευές και Κάρτες Επέκτασης Τι θα μάθουμε σήμερα: Να αναγνωρίζουμε και να ονομάζουμε άλλες περιφερειακές συσκευές και κάρτες επέκτασης Να εντοπίζουμε τα κύρια χαρακτηριστικά

Διαβάστε περισσότερα

ΘΕΜΑΤΑ ΠΤΥΧΙΑΚΩΝ ΕΡΓΑΣΙΩΝ ΕΑΡΙΝΟΥ ΕΞΑΜΗΝΟΥ

ΘΕΜΑΤΑ ΠΤΥΧΙΑΚΩΝ ΕΡΓΑΣΙΩΝ ΕΑΡΙΝΟΥ ΕΞΑΜΗΝΟΥ ΘΕΜΑΤΑ ΠΤΥΧΙΑΚΩΝ ΕΡΓΑΣΙΩΝ ΕΑΡΙΝΟΥ ΕΞΑΜΗΝΟΥ 2016-17 A/A Τίτλος στην ελληνική και στην αγγλική γλώσσα 1 Οπτικές ίνες Εφαρμογές στην Τηλεπικοινωνίες (Optical fibers - Applications in Telecommunications) 2

Διαβάστε περισσότερα

ΘΕΜΑ : ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ DIGITAL ELECTRONICS

ΘΕΜΑ : ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ DIGITAL ELECTRONICS ΘΕΜΑ : ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ DIGITAL ELECTRONICS ΔΙΑΡΚΕΙΑ: 1 περιόδους 16/11/2011 10:31 (31) καθ. Τεχνολογίας ΚΑΤΗΓΟΡΙΕΣ ΜΕΓΕΘΩΝ ΑΝΑΛΟΓΙΚΟ (ANALOGUE) ΨΗΦΙΑΚΟ (DIGITAL) 16/11/2011 10:38 (38) ΕΙΣΑΓΩΓΗ ΣΤΑ

Διαβάστε περισσότερα

Η εξέλιξη της αυτονομίας των συσκευών ασφαλείας. Άλκης Ζαμπετάκης (Product Manager of IP Surveillance, CPI S.A)

Η εξέλιξη της αυτονομίας των συσκευών ασφαλείας. Άλκης Ζαμπετάκης (Product Manager of IP Surveillance, CPI S.A) Η εξέλιξη της αυτονομίας των συσκευών ασφαλείας Άλκης Ζαμπετάκης (Product Manager of IP Surveillance, CPI S.A) Στοιχεία για την CPI Η CPI είναι μια Ελληνική εταιρεία Πληροφορικής που δραστηριοποιείται

Διαβάστε περισσότερα

Ελληνική Έκδ ση. Εισαγωγή. Περιεχόμενα της συσκευασίας. Τεχνικές προδιαγραφές BT100. Πρόσθετες τεχνικές προδιαγραφές ΒΤ100 S W E E X.

Ελληνική Έκδ ση. Εισαγωγή. Περιεχόμενα της συσκευασίας. Τεχνικές προδιαγραφές BT100. Πρόσθετες τεχνικές προδιαγραφές ΒΤ100 S W E E X. BT100 - Sweex Bluetooth Class II Adapter USB BT110 - Sweex Bluetooth Class I Adapter USB Εισαγωγή Αρχικά, σας ευχαριστούμε που αγοράσατε το Sweex Bluetooth Adapter. Με αυτό τον προσαρμογέα μπορείτε να

Διαβάστε περισσότερα

Εφαρμογή Διαχείρισης Στόλου Οχημάτων «RouteΤracker»

Εφαρμογή Διαχείρισης Στόλου Οχημάτων «RouteΤracker» Λειτουργικά Χαρακτηριστικά Εφαρμογή Διαχείρισης Στόλου Οχημάτων «RouteΤracker» Εφαρμογή Διαχείρισης Στόλου Οχημάτων «RouteΤracker» Η εφαρμογή διαχείρισης στόλου οχημάτων RouteTracker δίνει τη δυνατότητα

Διαβάστε περισσότερα

Λογικά σύμβολα των CPU, RAM, ROM και I/O module

Λογικά σύμβολα των CPU, RAM, ROM και I/O module Μικροϋπολογιστές Λογικά σύμβολα των CPU, RAM, ROM και I/O module Data CPU Data Data Address RAM Control Address Control External Data Data Address Control I/O module External Data External Control ROM

Διαβάστε περισσότερα

Ελληνική Έκδ ση. Εισαγωγή. Περιεχόμενα της συσκευασίας. Τεχνικές προδιαγραφές. Πρόσθετες τεχνικές προδιαγραφές

Ελληνική Έκδ ση. Εισαγωγή. Περιεχόμενα της συσκευασίας. Τεχνικές προδιαγραφές. Πρόσθετες τεχνικές προδιαγραφές BT210 - Sweex Bluetooth 2.0 Class I Adapter USB Εισαγωγή Αρχικά, σας ευχαριστούμε που αγοράσατε το Sweex Bluetooth 2.0 Adapter. Με αυτό τον προσαρμογέα μπορείτε να συνδεθείτε εύκολα σε μια άλλη συσκευή

Διαβάστε περισσότερα

Οι προβλέψεις της Symantec για την ασφάλεια το 2017

Οι προβλέψεις της Symantec για την ασφάλεια το 2017 Οι προβλέψεις της Symantec για την ασφάλεια το 2017 Κάθε χρόνο, ο χώρος της ψηφιακής ασφάλειας αντιμετωπίζει νέες μορφές απειλών, καθώς οι εγκληματίες του κυβερνοχώρου εξελίσσουν την προσέγγιση τους ως

Διαβάστε περισσότερα

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων Εργαστήριο ενσωματωμένων συστημάτων Παρουσίαση 2: Βασικός Προγραμματισμός Arduino (AVR) Εργαστήριο Αυτομάτου Ελέγχου Η πλατφόρμα Arduino UNO Microcontroller: ATmega328 Operating Voltage: 5V Digital I/O

Διαβάστε περισσότερα

Δίκτυα και Διαδίκτυο

Δίκτυα και Διαδίκτυο Μανώλης Κοσμίδης Dipl. Electrical & Computer Engineering, MEng E-commerce & Computer Systems, MEdu Management and Leadership Δίκτυα και Διαδίκτυο Βασικές έννοιες δικτύων 1 Τι είναι δίκτυο Ένα δίκτυο υπολογιστών

Διαβάστε περισσότερα

Παρουσίαση της τεχνολογίας R.F.I.D. µέσα από το Gold24

Παρουσίαση της τεχνολογίας R.F.I.D. µέσα από το Gold24 Παρουσίαση της τεχνολογίας R.F.I.D. µέσα από το Gold24 IntelliSoft Ε.Π.Ε. ΟΛΟΚΛΗΡΩΜΕΝΕΣ ΛΥΣΕΙΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Αιµιλιανού Γρεβενών 13, 142 32 Περισσός Τηλ: (+30210) 68.96.616 Φαξ: (+30210) 68.96.617 Email:

Διαβάστε περισσότερα

Η Πράξη συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (ΕΤΠΑ) κατά 80% και από εθνικούς πόρους της Ελλάδας και της Κύπρου κατά 20% Μ Ε Λ Ε Τ Η

Η Πράξη συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (ΕΤΠΑ) κατά 80% και από εθνικούς πόρους της Ελλάδας και της Κύπρου κατά 20% Μ Ε Λ Ε Τ Η ΝΟΜΟΣ ΡΕΘΥΜΝΟΥ ΤΕΧΝΙΚΗ ΥΠΗΡΕΣΙΑ Μ Ε Λ Ε Τ Η ΠΡΟΜΗΘΕΙΑΣ ΗΛΕΚΤΡΟΝΙΚΟΥ ΕΞΟΠΛΙΣΜΟΥ ΓΙΑ ΤΗΝ ΥΠΟΣΤΗΡΙΞΗ ΤΟΥ ΕΡΓΟΥ «ΠΡΟΣΒΑΣΙΜΕΣ ΠΟΛΕΙΣ» ΠΡΟΫΠΟΛΟΓΙΣΜΟΣ : 1.200,00 ΕΥΡΩ ΝΟΜΟΣ ΡΕΘΥΜΝΗΣ Δ/ΝΣΗ ΤΕΧΝΙΚΩΝ ΥΠΗΡΕΣΙΩΝ ΕΡΓΟ

Διαβάστε περισσότερα

ΜΑΘΗΜΑ 1- MULTIPLE CHOICE

ΜΑΘΗΜΑ 1- MULTIPLE CHOICE ΜΑΘΗΜΑ 1- MULTIPLE CHOICE 1. Ποιος τύπος Η/Υ χρησιμοποιείται για την λειτουργία συστημάτων και βάσεων δεδομένων μεγάλων εταιρειών; a) Επιτραπέζιος Η/Υ b) Προσωπικός Ψηφιακός Βοηθός c) Μεγάλο σύστημα d)

Διαβάστε περισσότερα

From M2M to the Internet of Things

From M2M to the Internet of Things From M2M to the Internet of Things Γιάννης Καπατσούλιας M2M Sales & Marketing Greece Vodafone Group Enterprise Τι είναι το Machine-to-Machine (M2M) M2M Το M2M είναι: Απλές συσκευές που μετατρέπονται σε

Διαβάστε περισσότερα

Κορυφαία απόδοση στην εργασία και το παιχνίδι

Κορυφαία απόδοση στην εργασία και το παιχνίδι Κορυφαία απόδοση στην εργασία και το παιχνίδι www.sonyeurope.com 1 Τεχνικά Χαρακτηριστικά Λειτουργικό Λειτουργικό σύστημα Αυθεντικά Windows 7 Professional (64bit) Αρχιτεκτονική Σετ ολοκληρωμένων Σετ ολοκληρωμένων

Διαβάστε περισσότερα

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου)

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου) Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα 1.7 - Πρωτόκολλα και Αρχιτεκτονική Δικτύου) Πρωτόκολλο είναι ένα σύνολο κανόνων που πρέπει να ακολουθήσουν όλοι οι σταθμοί εργασίας σε ένα δίκτυο ώστε να μπορούν

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΤΗ ΔΙΟΙΚΗΣΗ ΚΑΙ ΣΤΗΝ ΟΙΚΟΝΟΜΙΑ 2 Ο ΜΑΘΗΜΑ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΑΠΟΣΤΟΛΙΑ ΠΑΓΓΕ Υπολογιστής Συνοπτικό λεξικό Οξφόρδης -> «ηλεκτρονική υπολογιστική μηχανή»

Διαβάστε περισσότερα

Πώς να επιλέξετε το σωστό Υπολογιστή

Πώς να επιλέξετε το σωστό Υπολογιστή Η ΚΜΕ (CPU) είναι η καρδιά του κάθε υπολογιστή. Μια ταχύτερη ΚΜΕ σημαίνει: τι, και πόσα προγράμματα και πόσο γρήγορα και ομαλά εκτελούνται, Οι δύο μεγαλύτεροι παίκτες στο χώρο των CPU είναι Intel και AMD

Διαβάστε περισσότερα

Ερωτήσεις- Απαντήσεις Πολυμέσα Απο το Βιβλίο Εφαρμογές Η/Υ Α,Β,Γ Λυκείου

Ερωτήσεις- Απαντήσεις Πολυμέσα Απο το Βιβλίο Εφαρμογές Η/Υ Α,Β,Γ Λυκείου Ερωτήσεις- Απαντήσεις Πολυμέσα Απο το Βιβλίο Εφαρμογές Η/Υ Α,Β,Γ Λυκείου 1. Τι ονομάζουμε κόμβο και τι σύνδεσμο σε μια μη γραμμικά διαρθρωμένη ύλη; Με την έννοια σύνδεσμος (link) σε μια μη γραμμικά διαρθρωμένη

Διαβάστε περισσότερα

ΗΛΕΚΤΡΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ

ΗΛΕΚΤΡΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ Άριστος Πασιάς 1 ΗΛΕΚΤΡΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ Η ΔΟΜΗ ΤΟΥ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ Άριστος Πασιάς Σεπτέμβριος 2017 2 Στόχοι: Στο τέλος αυτού του μαθήματος ο μαθητή πρέπει: Να μπορεί να αναφέρει τα κύρια χαρακτηριστικά

Διαβάστε περισσότερα

Πτυχιακή Εργασία Οδηγώντας ένα Ρομποτικό Αυτοκίνητο με το WiFi. Η Ασύρματη Επικοινωνία, χρησιμοποιώντας

Πτυχιακή Εργασία Οδηγώντας ένα Ρομποτικό Αυτοκίνητο με το WiFi. Η Ασύρματη Επικοινωνία, χρησιμοποιώντας Βασικές Έννοιες Πτυχιακή Εργασία 2015 Οδηγώντας ένα Ρομποτικό Αυτοκίνητο με το WiFi. Σχεδίαση Συστήματος Πραγματικής Εφαρμογής (Prototyping). Η Ασύρματη Επικοινωνία, χρησιμοποιώντας το πρωτόκολλο WiFi.

Διαβάστε περισσότερα

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Σερρών Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πληροφορικής & Επικοινωνιών

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Σερρών Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πληροφορικής & Επικοινωνιών Τεχνολογικό Εκπαιδευτικό Ίδρυμα Σερρών Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πληροφορικής & Επικοινωνιών Υλοποίηση δικτύου ασύρματης ραδιοεπικοινωνίας μεταξύ δύο ενσωματωμένων κόμβων (κόμβος ταυτοποίησης

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Α ) Ενσωματωμένα Συστήματα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Εύκολη οικογενειακή χρήση

Εύκολη οικογενειακή χρήση Εύκολη οικογενειακή χρήση www.sony-europe.com 1 Τεχνικά Χαρακτηριστικά Λειτουργικό Λειτουργικό σύστημα Αυθεντικά Windows 7 Home Premium (64-bit) Αρχιτεκτονική Σετ ολοκληρωμένων Σετ ολοκληρωμένων Intel

Διαβάστε περισσότερα

Getting started with Plugwise 200.100.100108

Getting started with Plugwise 200.100.100108 Getting started with Plugwise 200.100.100108 Οδηγός Εγκατάστασης Σας ευχαριστούμε που επιλέξατε το Plugwise, Το οποίο είναι το πιο προχωρημένο σύστημα διαθέσιμο σήμερα για την παρακολούθηση και έλεγχο

Διαβάστε περισσότερα

devolo dlan powerline technology Σύντομη παρουσίαση dlan 1200+ WiFi ac

devolo dlan powerline technology Σύντομη παρουσίαση dlan 1200+ WiFi ac devolo dlan powerline technology Σύντομη παρουσίαση dlan 1200+ WiFi ac dlan 1200+ WiFi ac 2 dlan 1200+ WiFi ac Υφιστάμενη κατάσταση Οι φορητές συσκευές όλο πληθαίνουν καθημερινά. Όλο και περισσότεροι χρήστες

Διαβάστε περισσότερα

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων Εργαστήριο ενσωματωμένων συστημάτων Παρουσίαση 1: Εισαγωγή στα ενσωματωμένα συστήματα (embedded systems) Εργαστήριο Αυτομάτου Ελέγχου Ενσωματωμένα συστήματα (Embedded Systems) Ενσωματωμένα συστήματα (Embedded

Διαβάστε περισσότερα

-I/O-SYSTEM 750 BMS ΕΛΕΓΧΟΣ ΚΤΙΡΙΑΚΩΝ ΕΓΚΑΤΑΣΤΑΣΕΩΝ ΚΑΙ ΚΛΙΜΑΤΙΣΜΟΥ

-I/O-SYSTEM 750 BMS ΕΛΕΓΧΟΣ ΚΤΙΡΙΑΚΩΝ ΕΓΚΑΤΑΣΤΑΣΕΩΝ ΚΑΙ ΚΛΙΜΑΤΙΣΜΟΥ VER.DATE: 10/04/2014 -I/O-SYSTEM 750 BMS ΕΛΕΓΧΟΣ ΚΤΙΡΙΑΚΩΝ ΕΓΚΑΤΑΣΤΑΣΕΩΝ ΚΑΙ ΚΛΙΜΑΤΙΣΜΟΥ η φιλοσοφία To σύστημα ελέγχου WAGO έχει σχεδιαστεί με σκοπό την ευκολία στην σχεδίαση και στην εκτέλεση ενός project

Διαβάστε περισσότερα

A. ΓΕΝΙΚΕΣ ΠΡΟΔΙΑΓΡΑΦΕΣ ΥΛΙΚΟΥ

A. ΓΕΝΙΚΕΣ ΠΡΟΔΙΑΓΡΑΦΕΣ ΥΛΙΚΟΥ A. ΓΕΝΙΚΕΣ ΠΡΟΔΙΑΓΡΑΦΕΣ ΥΛΙΚΟΥ Εισαγωγή Οι προδιαγραφές του υλικού που ακολουθούν, έχουν βασιστεί στο Ενιαίο Πλαίσιο Προγράμματος Σπουδών και στα Προγράμματα σπουδών Πληροφορικής για το Γυμνάσιο και το

Διαβάστε περισσότερα

Εγχειρίδιο Ζωντανών Μεταδόσεων Υπηρεσιών Βίντεο. Πανεπιστημίου Κρήτης. Εγχειρίδιο τεχνικού μετάδοσης

Εγχειρίδιο Ζωντανών Μεταδόσεων Υπηρεσιών Βίντεο. Πανεπιστημίου Κρήτης. Εγχειρίδιο τεχνικού μετάδοσης Εγχειρίδιο Ζωντανών Μεταδόσεων Υπηρεσιών Βίντεο Πανεπιστημίου Κρήτης Εγχειρίδιο τεχνικού μετάδοσης Περιεχόμενα 1. ΖΩΝΤΑΝΕΣ ΜΕΤΑΔΟΣΕΙΣ... 3 1.1. ΕΙΣΑΓΩΓΗ... 3 1.2. ΠΡΟΕΤΟΙΜΑΣΙΑ ΓΙΑ ΤΗΝ ΜΕΤΑΔΟΣΗ, ΑΙΤΗΜΑ...

Διαβάστε περισσότερα

Θέματα Ατομικής Διπλωματικής Εργασίας - DRAFT Ακαδημαϊκό Έτος 2015/2016. Γεωργία Καπιτσάκη (Λέκτορας)

Θέματα Ατομικής Διπλωματικής Εργασίας - DRAFT Ακαδημαϊκό Έτος 2015/2016. Γεωργία Καπιτσάκη (Λέκτορας) Θέματα Ατομικής Διπλωματικής Εργασίας - DRAFT Ακαδημαϊκό Έτος 2015/2016 Γεωργία Καπιτσάκη (Λέκτορας) ΠΕΡΙΟΧΗ Α: ΕΦΑΡΜΟΓΕΣ ΜΕ ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ΕΠΙΓΝΩΣΗ ΣΥΓΚΕΙΜΕΝΟΥ Οι αισθητήρες μας δίνουν τη δυνατότητα συλλογής

Διαβάστε περισσότερα

Γρήγορο και πανίσχυρο εν κινήσει

Γρήγορο και πανίσχυρο εν κινήσει Γρήγορο και πανίσχυρο εν κινήσει www.sonyeurope.com 1 Τεχνικά Χαρακτηριστικά Λειτουργικό Λειτουργικό σύστημα Αυθεντικά Windows 7 Professional (64bit) Αρχιτεκτονική Σετ ολοκληρωμένων Σετ ολοκληρωμένων Intel

Διαβάστε περισσότερα

ΤΙΜΟΚΑΤΑΛΟΓΟΣ Οδόραμα mobile-android 2015

ΤΙΜΟΚΑΤΑΛΟΓΟΣ Οδόραμα mobile-android 2015 ΤΙΜΟΚΑΤΑΛΟΓΟΣ Οδόραμα mobile-android 2015 Η πλατφόρμα οδόραμα mobile-android της Praxicom Software Inc. είναι η πλέον ευέλικτη, παραμετροποιήσιμη, ανοιχτή και σύγχρονη λύση για την έκδοση τιμολογίων από

Διαβάστε περισσότερα

Ο πιο χρωματιστός φορητός υπολογιστής VAIO

Ο πιο χρωματιστός φορητός υπολογιστής VAIO Ο πιο χρωματιστός φορητός υπολογιστής VAIO www.sony-europe.com 1 Τεχνικά Χαρακτηριστικά Λειτουργικό Λειτουργικό σύστημα Αυθεντικά Windows 7 Home Premium (64-bit) Αρχιτεκτονική Σετ ολοκληρωμένων Σετ ολοκληρωμένων

Διαβάστε περισσότερα

ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ

ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ Τμήμα Μηχανικών Η/Υ & Πληροφορικής Computer Engineering & Informatics Department (CEID) www.ceid.upatras.gr ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ Ακαδημαϊκό Έτος 2017-18 (Τελευταία Ανανέωση: 20/11/2017) Ερευνητική Ομάδα

Διαβάστε περισσότερα

Η ανάγκη βελτίωσης του συγκοινωνιακού έργου των αστικών και υπεραστικών συγκοινωνιών με την ταυτόχρονη αναβάθμιση των προσφερόμενων υπηρεσιών προς

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

Διαβάστε περισσότερα

1.5.1 ΓΕΦΥΡΑ (BRIDGE) Εικόνα Επίπεδα λειτουργίας επαναλήπτη, γέφυρας, δρομολογητή και πύλης ως προς το μοντέλο OSI.

1.5.1 ΓΕΦΥΡΑ (BRIDGE) Εικόνα Επίπεδα λειτουργίας επαναλήπτη, γέφυρας, δρομολογητή και πύλης ως προς το μοντέλο OSI. 40 Σύγχρονα τηλεπικοινωνιακά και δικτυακά πρωτόκολλα Εικόνα 1.5.1 Επίπεδα λειτουργίας επαναλήπτη, γέφυρας, δρομολογητή και πύλης ως προς το μοντέλο OSI. 1.5.1 ΓΕΦΥΡΑ (BRIDGE) Οι γέφυρες λειτουργούν τόσο

Διαβάστε περισσότερα

Το προσωπικό μου στούντιο HD

Το προσωπικό μου στούντιο HD Το προσωπικό μου στούντιο HD www.sony-europe.com 1 Τεχνικά Χαρακτηριστικά Λειτουργικό σύστημα Λειτουργικό σύστημα Αυθεντικά Windows 7 Home Premium (64-bit) Αρχιτεκτονική Σετ ολοκληρωμένων Σετ ολοκληρωμένων

Διαβάστε περισσότερα