Successfully reported this slideshow.
Your SlideShare is downloading. ×

Model-driven development for low-consumption real-time IOT devices

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 22 Ad

Model-driven development for low-consumption real-time IOT devices

Download to read offline

Internet of Things (IoT) is a field that is evolving rapidly, especially in recent years. There is the possibility of developing even more applications which prove to be useful for many people, whether they have to do with simple functions in automation systems, or with larger scale applications in the industry. Therefore, more and more people want to work in this field. The process of developing an IoT system involves code development to control the system’s devices. In fact, in most cases fast response is of the utmost importance, so low-level code development is required, as well as the use of real-time operating systems (RTOS). Also, due to the great heterogeneity of IoT devices on the market, it is necessary to understand the capabilities that each device can offer, in order to make the appropriate choice of one, tailored to the needs of the system to be implemented. These requirements may seem complicated to some users, especially to people who are technologically untrained, i.e. do not have the necessary programming skills, but still want to build an IoT system e.g. for their personal use. This results in a large portion of people wanting to get involved with IoT, being discouraged to do so. Model Driven Engineering (MDE) is here to solve the problems that, those who want to get involved with IoT, may face, but also to simplify the software production process in general, as it can provide the developing of IoT systems to a more abstract level, which is more user friendly. Through this diploma thesis, one is given the opportunity to describe, using models, IoT devices, through two domain specific Languages (DSL) developed for the description of devices and the connections between them. From the models, a Model to-Text (M2T) transformation is performed for the automated code generation, for a variety of IoT devices, adapted to the characteristics that the user wishes for it to have. The software for controlling the IoT devices that is produced implements the process of taking measurements from sensors, and sending them to a broker, but also the process of controlling actuators through the broker. It also consists of low-level code, as it has been designed according to the requirements of a real time operating system, named RIOT. Finally, a Model-to-Model (M2M) transformation takes place in order to produce diagrams that provide a visualization and thus a better understanding by the user, of the wiring and intercommunication of their system.

Internet of Things (IoT) is a field that is evolving rapidly, especially in recent years. There is the possibility of developing even more applications which prove to be useful for many people, whether they have to do with simple functions in automation systems, or with larger scale applications in the industry. Therefore, more and more people want to work in this field. The process of developing an IoT system involves code development to control the system’s devices. In fact, in most cases fast response is of the utmost importance, so low-level code development is required, as well as the use of real-time operating systems (RTOS). Also, due to the great heterogeneity of IoT devices on the market, it is necessary to understand the capabilities that each device can offer, in order to make the appropriate choice of one, tailored to the needs of the system to be implemented. These requirements may seem complicated to some users, especially to people who are technologically untrained, i.e. do not have the necessary programming skills, but still want to build an IoT system e.g. for their personal use. This results in a large portion of people wanting to get involved with IoT, being discouraged to do so. Model Driven Engineering (MDE) is here to solve the problems that, those who want to get involved with IoT, may face, but also to simplify the software production process in general, as it can provide the developing of IoT systems to a more abstract level, which is more user friendly. Through this diploma thesis, one is given the opportunity to describe, using models, IoT devices, through two domain specific Languages (DSL) developed for the description of devices and the connections between them. From the models, a Model to-Text (M2T) transformation is performed for the automated code generation, for a variety of IoT devices, adapted to the characteristics that the user wishes for it to have. The software for controlling the IoT devices that is produced implements the process of taking measurements from sensors, and sending them to a broker, but also the process of controlling actuators through the broker. It also consists of low-level code, as it has been designed according to the requirements of a real time operating system, named RIOT. Finally, a Model-to-Model (M2M) transformation takes place in order to produce diagrams that provide a visualization and thus a better understanding by the user, of the wiring and intercommunication of their system.

Advertisement
Advertisement

More Related Content

More from ISSEL (20)

Advertisement

Model-driven development for low-consumption real-time IOT devices

  1. 1. Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών 6 Οκτωβρίου 2021 1 Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης Εκπόνηση Μανώλης Αθανάσιος ΑΕΜ: 8856 Επιβλέποντες Αν. Καθ. Συμεωνίδης Ανδρέας Υπ. Δρ. Παναγιώτου Κωνσταντίνος
  2. 2. Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 2 https://iot-analytics.com/state-of-the-iot-2020-12-billion-iot-connections-surpassing-non-iot-for-the-first-time/ Οκτώβριος 2021 Ενεργές συνδέσεις IoT συσκευών ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ
  3. 3. ΠΡΟΒΛΗΜΑΤΑ ΕΤΕΡΟΓΕΝΕΙΑ ΓΝΩΣΕΙΣ ΚΩΔΙΚΑ ΕΛΕΓΧΟΣ ΛΑΘΩΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ Κατασκευή όλο και περισσότερων διαφορετικών IoT συσκευών Απαιτήσεις κώδικα χαμηλού επιπέδου και πραγματικού χρόνου Έλλειψη κάποιου είδους ελέγχου της ορθότητας Αυξανόμενο ενδιαφέρον σε αυτοματοποίηση διαδικασιών 3 ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης Οκτώβριος 2021
  4. 4. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 4 Οκτώβριος 2021 Γλώσσα συγκεκριμένου πεδίου για μοντελοποίηση των συσκευών Γλώσσα συγκεκριμένου πεδίου για μοντελοποίηση των διασυνδέσεων Παραγωγή διαγραμμάτων οπτικοποίησης του συστήματος Αυτόματη παραγωγή λογισμικού για την υλοποίηση βασικών λειτουργιών Ανάπτυξη μηχανής λογισμικού μοντελοστραφούς λογικής
  5. 5. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Περιγραφή μετα-μοντέλου συσκευών Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 5 Οκτώβριος 2021
  6. 6. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 6 Οκτώβριος 2021 Περιγραφή μετα-μοντέλου συνδέσεων
  7. 7. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 7 Οκτώβριος 2021 Συντακτικό των γλωσσών Γενικοί κανόνες 1. Ανάθεση τιμής “ : ” name: value 2. Λίστα “ – “ pins: – attribute pins : − power: name: vcc number: 1 type : 5v − input_pin : name: data_in number: 3 − output_pin : name: data_out number: 4 κανόνας 1 κανόνας 2
  8. 8. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 8 Οκτώβριος 2021 Συντακτικό συσκευής
  9. 9. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 9 Οκτώβριος 2021 Συντακτικό συνδέσεων
  10. 10. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 10 Οκτώβριος 2021 Σύνοψη διαδικασίας Meta-models M2M M2T Parser Makefile C file Connections model Pin connections > riot_mde --connections connection.con
  11. 11. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 11 Οκτώβριος 2021 Υποστήριξη Μικροελεγκτές NodeMCU ESP-32S WEMOS D1 miniPro Περιφερειακά Αισθητήρας απόστασης HC-SR04 Αισθητήρας περιβάλλοντος BME680 Αισθητήρας περιβάλλοντος MPL3115A2 Ενεργοποιητής LED NeoPixel Ring Διεπαφές υλικού GPIO I2C SPI UART Λειτουργικά Συστήματα RIOT
  12. 12. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 12 Οκτώβριος 2021 Μικροελεγκτής NodeMCU-32s Αισθητήρας περιβάλλοντος BME680 LED Neopixel Ring x12 Sonar HC-SR04 Raspberry Pi 3B+ Broker
  13. 13. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 13 Οκτώβριος 2021 Σύνδεση sonar Σύνδεση αισθητήρα περιβάλλοντος Σύνδεση LED Αρχείο συνδέσεων
  14. 14. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 14 Οκτώβριος 2021 Παραγωγή διαγραμμάτων (1/4)
  15. 15. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 15 Οκτώβριος 2021 Παραγωγή διαγραμμάτων (2/4)
  16. 16. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 16 Οκτώβριος 2021 Παραγωγή διαγραμμάτων (3/4)
  17. 17. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 17 Οκτώβριος 2021 Παραγωγή διαγραμμάτων (4/4)
  18. 18. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 18 Οκτώβριος 2021
  19. 19. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 19 Οκτώβριος 2021 Υλοποίηση ενός IoT συστήματος με αφαιρετικό τρόπο Δυνατότητα ενασχόλησης με το IoT χωρίς την προϋπόθεση τεχνολογικού υπόβαθρου Δυνατότητα έγκαιρης αντιμετώπισης λαθών Καλύτερη αντίληψη του συστήματος μέσω των διαγραμμάτων
  20. 20. ΚΙΝΗΤΡΟ ΣΚΟΠΟΣ ΜΕΘΟΔΟΛΟΓΙΑ ΠΑΡΑΔΕΙΓΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΓΑΣΙΑ Μοντελοστρεφής ανάπτυξη λογισμικού για IoT συσκευές πραγματικού χρόνου και χαμηλής κατανάλωσης 20 Οκτώβριος 2021 Υποστήριξη περισσότερων συσκευών και λειτουργικών συστημάτων Συγγραφή περισσότερων πρότυπων αρχείων κώδικα Ανάπτυξη γραφικού περιβάλλοντος για την περιγραφή μοντέλων
  21. 21. Ευχαριστίες
  22. 22. Thank You Questions?

×