michaelgalliakis / mythesis Goto Github PK
View Code? Open in Web Editor NEWIntegrated system for the management microcontroller [Arduino] remotely in real time by registered users.
License: MIT License
Integrated system for the management microcontroller [Arduino] remotely in real time by registered users.
License: MIT License
ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ (20/4/2016) Γαλλιάκη Μιχαήλ με θέμα : Μελέτη ενός ολοκληρωμένου συστήματος για τη διαχείριση μικρο-ελεγκτών απομακρυσμένα σε πραγματικό χρόνο από εγγεγραμμένους χρήστες (πχ για τον έλεγχο "έξυπνων" σπιτιών). Πιλοτικά θα υλοποιηθεί client-server εφαρμογή που θα επιτρέπει την διαχείριση διάφορων μονάδων (Αισθητήρες, φώτα, διακόπτες) κάποιων μικρο-ελεγκτών(Arduino). Έμφαση θα δοθεί στη χρήση τεχνολογιών Java, MySQL, Arduino sketch, php, Javascript, css, html. ----------------------------------------------------------------------------------- Integrated system for the management microcontroller [Arduino] remotely in real time by registered users. ----------------------------------------------------------------------------------- *************************************************************************************** Αρχικά να διευκρινιστεί ότι το θέμα της πτυχιακής είχε να κάνει με τη μελέτη και την ερεύνα που χρειάζεται να γίνει για να μπορέσει να υλοποιηθεί και να λειτουργήσει στη πράξη ένα “ολοκληρωμένο σύστημα διαχείρισης μικρο-ελεγκτών σε πραγματικό χρόνο από απομακρυσμένους εγγεγραμμένους χρήστες”. Η έμφαση με άλλα λόγια, είχε δοθεί κυρίως στο καθαρά τεχνικό κομμάτι που αφορά την ανάλυση, σχεδίαση και κυρίως ανάπτυξη εμπράκτως του συστήματος και όχι σε θεωρητικό επίπεδο. Παρόλο όμως που η πτυχιακή είχε μια διαφορετική προσέγγιση στη δομή της, σε σχέση με τον παραδοσιακό τρόπο συγγραφής πτυχιακών άλλων σχολών ή ειδικοτήτων (δεν παρουσιάζει για παράδειγμα μια θεωρητική επιστημονική αναζήτηση), και αποτελείτε ουσιαστικά από μια εφαρμογή (σύστημα) και τη τεκμηρίωση της, δεν είχε λείψει η έρευνα διότι το ίδιο το σύστημα που είχε αναπτυχθεί είναι αποτέλεσμα έρευνας (όπως και κάποια σημεία της τεκμηρίωσης). Επίσης, ήταν απαραίτητη η αναζήτηση και η μελέτη βιβλίων και άλλων πηγών (μέσω διαδικτύου κατά κύριο λόγο) για την περάτωση αυτής της εργασίας. Ο σκοπός της πτυχιακής εργασίας ήταν να δημιουργηθεί ένα ολοκληρωμένο σύστημα που θα δίνει τη δυνατότητα σε χρήστες του, να εποπτεύουν και να διαχειρίζονται απομακρυσμένα διάφορους “έξυπνους” χώρους σε πραγματικό χρόνο. Και πιο συγκεκριμένα να μπορούν πολλοί διαφορετικοί χρήστες να εποπτεύουν-διαχειρίζονται έναν “έξυπνο” χώρο αλλά και ένας χρήστης να εποπτεύει-διαχειρίζεται πολλούς “έξυπνους” χώρους ταυτόχρονα. Για να επιτευχθεί αυτό, στα πλαίσια της εργασίας αναπτύχθηκαν 7 διαφορετικά μέρη λογισμικού που όλα μαζί συνδυαστικάκάνουν το όλο σύστημα να υφίσταται. Και συγκεκριμένα με τη γλώσσα προγραμματισμού Java υλοποιήθηκαν τα 4 μέρη : UserClient (Για εποπτεία από τον χρήστη), DeviceClient (Πρόγραμμα από τη πλευρά κάθε έξυπνου χώρου), Server (Πρόγραμμα σαν ενδιάμεσος των UserClients και DeviceClients) και Simulator (Προσομοιωτής ενός έξυπνου χώρου που χρειάστηκε στην περίοδο ανάπτυξης του συστήματος). Επίσης, κυρίως για την διαχείριση των λογαριασμών των χρηστών και των “έξυπνων χώρων” αλλά και για την διαχείριση των διαφόρων δικαιωμάτων προσπέλασης δημιουργήθηκε ένα Website (με τις γλώσσες : PHP, Javascript, CSS, HTML). Αναγκαία επίσης ήταν και η δημιουργία μιας Database (MySQL). Μαζί με τα παραπάνω αναπτύχθηκε και ένα πρότυπο Arduino Sketch (που εκτελείτε σε μικρο-ελεγκτές τύπου Arduino) για να μπορεί να προσαρμοστεί ανάλογα με τις ανάγκες του κάθε χρήστη (Με βάση δηλαδή τους αισθητήρες, διακόπτες, λάμπες, ηλεκτρικές συσκευές κλπ που έχει συνδεδεμένα πάνω του ο κάθε ελεγκτής/Arduino κάποιου χρήστη). Τα εκάστοτε arduino κάθε έξυπνου χώρου συνδέονται με καλώδια USB σε έναν υπολογιστή που “τρέχει” το DeviceClient. Πέρα από το σύστημα, στα πλαίσια της πτυχιακής εργασίας γράφτηκε και μια τεκμηρίωση για να παρουσιάσει κάποιες βασικές έννοιες αλλά και κάποια σενάρια χρήσης που είχαν καθοριστεί σαν προδιαγραφές ώστε να μπορεί κάποιος που την διαβάζει να καταλάβει τον ακριβή στόχο του συστήματος της εργασίας. Επίσης, μέσα από την τεκμηρίωση μεταξύ άλλων, παρουσιάζονται όλες οι λεπτομέρειες που αφορούν την λειτουργία όλων των εφαρμογών του συστήματος και παράλληλα εξηγείται αναλυτικά όλη η μεθοδολογία υλοποίησης. Στο κομμάτι που αφορά το arduino πραγματοποιείται μια πιο εκτενή αναφορά με αρκετά παραδείγματα και μεγαλύτερη ανάλυση ώστε να χρησιμοποιηθεί και σαν εγχειρίδιο από κάποιον δυνητικό χρήστη (Επειδή είναι το μοναδικό κομμάτι του συστήματος που ανάλογα τη περίπτωση χρειάζεται παραμετροποίηση από το χρήστη). Μέσα από αυτήν την πτυχιακή εργασία, φάνηκε στην πράξη πως μπορούν συνδυαστικά διαφορετικές μεταξύ τους εφαρμογές και τεχνολογίες, να χρησιμοποιηθούν ώστε να παραχθεί ένα ενιαίο αποτέλεσμα και ουσιαστικά να υφίσταται ένα ολοκληρωμένο σύστημα. Ακόμη έγινε γνωστό πως μπορούν να αξιοποιηθούν ταυτόχρονα οι υπολογιστές[Hardware] τα δίκτυα και ο προγραμματισμός[Software] ώστε να κάνουν ευκολότερη και καλύτερη την ζωή των ανθρώπων. Παράλληλα, φάνηκε πως μπορεί να εφαρμοστεί έμπρακτα αυτό που λέγεται κοινώς σήμερα internet of things (διαδίκτυο πραγμάτων). Και αυτό γιατί με το “ολοκληρωμένο σύστημα που αφορά τη διαχείριση έξυπνων χώρων απομακρυσμένα σε πραγματικό χρόνο από πολλούς διαφορετικούς χρήστες” μπορεί να γίνει η διαχείριση διάφορων πραγμάτων μέσω του διαδικτύου. Για παράδειγμα, εν δυνάμει γίνεται να ανοίγουν και να κλείνουν όλες οι ηλεκτρικές συσκευές (λάμπες, ανεμιστήρες, καφετιέρες κ.α) που υπάρχουν σε κάποιον χώρο από οποιαδήποτε άλλο σημείο μέσα στο κόσμο. Όπως επίσης γίνεται να μπορεί κάποιος χρήστης να γνωρίζει την “αίσθηση” κάποιου χώρου, με τη χρήση διαφόρων ειδών αισθητήρων. Και μάλιστα όλα αυτά γίνονται σε πραγματικό χρόνο (δηλαδή “ζωντανά”) ακόμη και όταν πρόκειται κάποιος χρήστης να βρίσκεται σε κάποιο πολύ μακρινό (γεωγραφικό) μέρος από τον “έξυπνο” χώρο που εποπτεύει. Και αναφέρετε αυτό διότι όντως έγινε επιτυχημένη δοκιμή πχ στο να ανοίξει και να κλείσει μια λάμπα που βρισκόταν στην Αθήνα, από δύο άτομα που το ένα ήταν στο Ρέθυμνο και το άλλο στην Κολωνία της Γερμανίας. *************************************************************************************** Τεκμηρίωση : Thesis_GalliakisMichael_AM081001.pdf
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.