dc.description.abstract | Περίληψη
Λόγω της ραγδαίας εξέλιξης της τεχνολογίας και παράλληλα, την εισχώρησή της σε κομβικούς τομείς για τον άνθρωπο και την καθημερινότητα του, έχει δημιουργηθεί πλέον η ανάγκη για δημιουργία ολοένα και περισσότερων “έξυπνων” συσκευών, οι οποίες θα προσφέρουν στον άνθρωπο λειτουργίες και δυνατότητες, θα τον διευκολύνουν στις καθημερινές του ασχολίες, καθώς και θα του εξυπηρετούν διάφορες ανάγκες. Η βασική ιδέα πάνω στην οποία στηρίζεται αυτή η διπλωματική εργασία, είναι η δημιουργία μίας τέτοιας “έξυπνης” συσκευής, η οποία θα καταγράφει και θα ενημερώνει τον χρήστη για τις περιβαντολογικές συνθήκες, που επικρατούν στο κοντινό του περιβάλλον.
Πιο συγκεκριμένα, στην παρούσα διπλωματική εργασία σχεδιάστηκε και υλοποιήθηκε, ένα ενσωματωμένο σύστημα το οποίο βασίζεται σε έναν μικροεπεξεργαστή. Αυτός είναι συνδεμένος με έναν αριθμό από αισθητήρες, οι οποίοι πραγματοποιούν μετρήσεις στο περιβάλλον, τις επεξεργάζονται και τις αποστέλλουν μέσω διαδικτύου, σε εξυπηρετητή. Η διαδικασία αυτή γίνεται εφικτή με την βοήθεια εξαρτημάτων, συνδεμένων στον μικροεπεξεργαστή, που λειτουργούν ως κάρτες δικτύου. Παράλληλα με το ενσωματωμένο σύστημα, σχεδιάστηκε και υλοποιήθηκε μία υποστηρικτική διαδικτυακή εφαρμογή (Web Application), την οποία σερβίρει ο εξυπηρετητής και έχει σαν αποστολή, να λαμβάνει μέσω διαδικτύου, τις μετρήσεις του ενσωματωμένου συστήματος, να τις επεξεργάζεται και αφού τις αποθηκεύσει σε βάση δεδομένων, στην συνέχεια να τις προβάλλει.
Ο χρήστης, αφού δημιουργήσει προσωπικό λογαριασμό στην διαδικτυακή εφαρμογή, θα μπορεί να παρακολουθεί σε πραγματικό χρόνο (Real Time), τις μετρήσεις που θα λαμβάνει η εφαρμογή από το ενσωματωμένο σύστημα, θα έχει την δυνατότητα να τις προβάλει ατομικά ή μέσω γραφημάτων, να τις επεξεργάζεται, καθώς και να τις συγκρίνει με άλλα συστήματα, άλλων χρηστών.
Οι διαχειριστές θα είναι υπεύθυνοι για την ομαλή λειτουργία της διαδικτυακής εφαρμογής, θα έχουν σαφώς αυξημένες δυνατότητες έναντι των απλών χρηστών, για προβολή και επεξεργασία μετρήσεων και συστημάτων, καθώς και δυνατότητα επεξεργασίας των χρηστών.
Ο δημιουργός της διαδικτυακής εφαρμογής, είναι μοναδικός και του παρέχονται όλες οι λειτουργίες και δυνατότητες της εφαρμογής, παράλληλα με τον έλεγχο και την επεξεργασία των χρηστών και διαχειριστών.
Γενικότερα η ιδέα της διαδικτυακής εφαρμογής παράλληλα με το ενσωματωμένο σύστημα, βασίζεται πάνω σε ένα μοτίβο: Την ελευθερία που δίνεται στον χρήστη, να δημιουργήσει όσα ενσωματωμένα συστήματα επιθυμεί και να παρακολουθεί τις μετρήσεις που αυτά συλλέγουν, μέσω της διαδικτυακής εφαρμογής.
Περιβάλλον Ανάπτυξης Ενσωματωμένου Συστήματος: Το ενσωματωμένο σύστημα υλοποιήθηκε, με βάση τον μικροεπεξεργαστή/μικροελεγκτή Αrduino Mega και προγραμματίστηκε, μέσω του λογισμικού ανοικτού κώδικα Arduino IDE.
Περιβάλλον Ανάπτυξης Διαδικτυακής Εφαρμογής: Η διαδικτυακή εφαρμογή υλοποιήθηκε, με χρήση τεχνολογιών λογισμικού και προγραμματισμού διαδικτύου ανοικτού κώδικα (html5, css3, sass, php, Laravel, Bootstrap, JavaScript (ES2016, ES2017, ES2018), jQuery, Axios, Reactjs, React-router, Redux, Redux-thunk, Pusher API, Mysql, Webpack, Babel), αναπτύχθηκε μέσω των παρακάτω κειμενογράφων (PhpStorm, Visual Studio Code) καθώς και με παράλληλη χρήση λογισμικού-υπερόπτη ανοικτού κώδικα (Virtual Box) μαζί με έτοιμο πακέτο προ εγκατεστημένων τεχνολογιών για ανάπτυξη της εφαρμογής (Vagrant Box - Laravel Homestead).
Abstract
Due to the rapid evolution of technology and its intrusion into key areas for human and his daily routine, the need for more "smart" devices has been created, that will provide people with operations and capabilities, facilitate their day-to-day activities, as well as serve their different needs. The basic idea on which this diploma thesis is based on the creation of such a "smart" device, which will record and inform the user of the environmental conditions prevailing in the surrounding environment.
More specifically, this diploma thesis has been designed and implemented, an embedded system based on a microprocessor. It is connected to a number of sensors, which perform measurements in the environment, process them and send them over the Internet, on a server. This process becomes possible with the help of some modules, connected to the microcontroller, which act as network cards. Along with the embedded system, a Web Application was designed and implemented, which is served from the server and its mission is, to receive the measurements of the embedded system via the Internet, process them and since storing them in a database, finally show them.
After creating a personal account on the web application, the user will be able to monitor in Real Time the measurements the application will receive from the embedded system. Furthermore, he will be able to project, process, and compare them with other systems, which belong to other users.
Administrators will be responsible for the smooth operation of the web application, will have much greater capabilities than simple users, for viewing and editing metrics and systems, and moreover the capability of editing all users.
The creator of the web application is unique and is provided with all the features and capabilities of the application, along with the control and editing of users and administrators.
In general, the concept of the web-based application alongside the embedded system is based on a pattern: The freedom given to the user, to create as many as embedded systems he wants and monitor, the measurements they collect through the web application.
Embedded System Development Environment: The embedded system was implemented, based on the Arduino Mega microprocessor/microcontroller, and was programmed through the open source software, Arduino IDE.
Web Application Development Environment: The web application was implemented using open source web and software technologies (html5, css3, sass, php, Laravel, Bootstrap, JavaScript (ES2016, ES2017, ES2018), jQuery, Axios, Reactjs, React-router, Redux, Redux-thunk, Pusher API, Mysql, Webpack, Babel), developed through the following code editors (PhpStorm, Visual Studio Code) as well as the simultaneous use of virtualization software (Virtual Box), together with a ready-made pre-installed technologies package for application development (Vagrant Box - Laravel Homestead). | en_US |