M. Galliakis
B.Sc. & M.Sc. Thesis | 2016 - 2018

Ολοκληρωμένο Σύστημα Διαχείρισης Έξυπνων Χώρων.

Μελέτη, σχεδιασμός και ανάπτυξη ενός κατανεμημένου συστήματος IoT για την απομακρυσμένη διαχείριση μικροελεγκτών σε πραγματικό χρόνο. Από τη φυσική διασύνδεση αισθητήρων, μέχρι τη δημιουργία Cloud υποδομής και τη δημοσίευση στο PCI 2018.

👉 ΟΔΗΓΙΑ ΕΙΚΟΝΑΣ ΕΔΩ:Φτιάξε ένα κολάζ με τη Φωτογραφία 7.23 (Κουτί Χαπιών) και το Screenshot 7.18 (Android App) από το PDF της Διπλωματικής.

Σκοπός της Έρευνας

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

Κατασκευή έξυπνου μηχανισμού για την υπενθύμιση λήψης φαρμάκων μέσω οπτικών και ηχητικών ενδείξεων.

Σύστημα ανίχνευσης κινδύνων (π.χ. πυρκαγιά, κίνηση) και άμεση ειδοποίηση των οικείων προσώπων.

Απομακρυσμένος έλεγχος ηλεκτρικών συσκευών και παρακολούθηση της κατάστασης του χώρου σε πραγματικό χρόνο.

Hardware Prototypes

Σχεδιασμός και υλοποίηση φυσικών μηχανισμών με μικροελεγκτές Arduino και ηλεκτρονικά εξαρτήματα.

👉 Φωτογραφίες 7.27 & 7.28(Μικρογραφία σπιτιού & Ρελέ)

Διαχείριση Κυκλωμάτων 220V

👉 Φωτογραφία 7.26(Εσωτερικό κουτιού χαπιών)

Σχεδιασμός Pillbox & Ηλεκτρονικών

👉 Σελίδες 56-59 (Πτυχιακή '16)(Αισθητήρας Sonar/Φωτιάς)

Breadboard Testing & Αισθητήρες

Η Εξέλιξη της Εργασίας

2016

Πτυχιακή Εργασία (2016)

Η βάση του συστήματος. Αναπτύχθηκε μια Client-Server εφαρμογή σε Java που επέτρεπε τη διαχείριση συσκευών Arduino μέσω τοπικού δικτύου, κάνοντας χρήση Sockets και βάσης δεδομένων MySQL.

2018

Διπλωματική Εργασία (2018)

Μετάβαση σε κατανεμημένη αρχιτεκτονική. Το σύστημα αναβαθμίστηκε με Web Services (Node.js), NoSQL βάση (MongoDB) και Web App, εκτελώντας τα επιμέρους λογισμικά σε Docker containers στο Cloud.

PCI

Δημοσίευση (PCI 2018)

Το τελικό αποτέλεσμα της έρευνας παρουσιάστηκε επίσημα στο 22ο Πανελλήνιο Συνέδριο Πληροφορικής (PCI) υπό τον τίτλο 'A low-cost Smart Home for the assistance of elderly persons and patients'.

Omnichannel Interfaces

Σχεδιασμός διεπαφών χρήστη για Desktop, Web και Mobile, εξασφαλίζοντας προσβασιμότητα από παντού.

👉 Screenshot 7.16Η διαδραστική κάτοψη του σπιτιού από την Java Desktop εφαρμογή.

Desktop Floorplan UI

Real-time οπτικοποίηση καταστάσεων με drag-and-drop αισθητήρων.

👉 Screenshot 7.20 ή 7.11Το Angular Dashboard με τους πίνακες δεδομένων και διαχείρισης.

Web Administration Dashboard

Single Page Application (SPA) για Role-Based Access Control (RBAC).

Τεχνικές Προκλήσεις & Υλοποίηση

Σημαντικά σημεία από τον σχεδιασμό του λογισμικού και του hardware.

Σχεδιασμός Πρωτοκόλλου Επικοινωνίας

Για την αυτοματοποιημένη και ταχύτατη επικοινωνία μεταξύ των εφαρμογών (Hardware, Clients, Server), σχεδιάστηκε από το μηδέν ένα custom πρωτόκολλο ανταλλαγής μηνυμάτων μέσω TCP Sockets.

Διαχείριση Ταυτόχρονων Συνδέσεων

Ανάπτυξη πολυνηματικού (multi-threaded) Server σε Java. Ο εξυπηρετητής διαχειρίζεται ταυτόχρονα αιτήματα από 'έξυπνα σπίτια' (Device Clients) και επόπτες (User Clients), συγχρονίζοντας την επικοινωνία τους σε πραγματικό χρόνο.

Προγραμματισμός Μικροελεγκτών

Συγγραφή κώδικα (C++) για μικροελεγκτές Arduino. Αναπτύχθηκαν αλγόριθμοι που φιλτράρουν τον θόρυβο των αναλογικών αισθητήρων, αποστέλλοντας δεδομένα στον υπολογιστή μόνο όταν καταγράφεται ουσιαστική μεταβολή.

Δομή του Κατανεμημένου Συστήματος

Hardware Level

Μικροελεγκτές & Αισθητήρες

Φυσική διασύνδεση αισθητήρων (θερμοκρασίας, κίνησης, απόστασης) με Arduino Uno. Χρήση ρελέ για την απομόνωση κυκλωμάτων και τον ασφαλή έλεγχο ηλεκτρικών συσκευών υψηλής τάσης.
👉 Σχήμα 1.2.1 (Διπλωματική)Γράφημα: Διασύνδεση σπιτιών με το Cloud.
Application Level

Λογισμικά Ελέγχου (Clients)

Ανάπτυξη Desktop εφαρμογής (Java) με διαδραστική κάτοψη του χώρου για παρακολούθηση από υπολογιστή, και αντίστοιχης Android εφαρμογής για διαχείριση και ειδοποιήσεις από το κινητό.
👉 Σχήμα 6.3.1 (Διπλωματική)Γράφημα: Docker Containers στο Cloud.
Core & Database

Κεντρικός Πυρήνας & API

Η καρδιά του συστήματος: Ένας Java Server για τη διαχείριση των Sockets, ένα RESTful API (Express.js) για τα HTTP αιτήματα και η βάση δεδομένων (MongoDB) για την αποθήκευση των στοιχείων.
👉 Σχήμα 4.3.1 ή Σελ 38 ΠτυχιακήςΓράφημα: Entity-Relationship (ER) Diagram.

Τεχνολογίες & Εργαλεία

Μικροελεγκτές

Arduino IDE, Wiring (C++), Ηλεκτρονικά Κυκλώματα (Breadboards, Relays, Sensors).

Λογισμικό & Δίκτυα

Java (Desktop & Server), Multi-threading, Sockets (TCP/IP), Android SDK.

Web & Βάσεις Δεδομένων

Node.js (Express), AngularJS, MongoDB, MySQL, Docker, HTML/CSS.