Σχεδίαση και υλοποίηση συστημάτων αυτοματισμού για θερμοκήπιο με χρήση της πλατφόρμας Arduino και δυνατότητα επίβλεψης αποτελεσμάτων μέσω ασύρματης δικτύωσης αλλά και μέσω διαδικτύου
Design and implementation of automation systems for a greenhouse using the Arduino platform and the ability to monitor results via wireless networking and the internet
Keywords
C++ ; Arduino ; Ethernet Shield ; Xbee ; Greenhouse ; Sensors ; Remote control ; automation systems ; wireless networkingAbstract
Η παρούσα διπλωματική πραγματεύεται την υλοποίηση ενός συστήματος αυτοματισμών με στόχο τον έλεγχο των κλιματικών συνθηκών στο εσωτερικό ενός θερμοκηπίου. Η υλοποίηση στοχεύει στην αξιοποίηση τεχνολογιών όπως οι μικροελεγκτές, το Internet of Things (IoT), ενσύρματα και ασύρματα πρωτόκολλα επικοινωνίας, οι βάσεις δεδομένων, καθώς και ο προγραμματισμός για δημιουργία ιστότοπου. Η λειτουργία του προτεινόμενου συστήματος διαχείρισης του θερμοκηπίου στηρίζεται στην πλατφόρμα Arduino η οποία μέσω αισθητήρων θα διαχειρίζεται τις διάφορες εργασίες. Οι αισθητήρες παρέχουν λειτουργικότητα όπως ανίχνευση κίνησης στον χώρο, πληροφορίες που αφορούν τις συνθήκες του περιβάλλοντος στο θερμοκήπιο όπως η θερμοκρασία και η υγρασία, πυροπροστασία, πληροφορίες για την ποιότητα του χώματος, μεταβλητή σκίαση κατά τη διάρκεια της μέρας, πότισμα και έλεγχο του κλίματος στο θερμοκήπιο και κάποιον απλό έλεγχο πρόσβασης σε αυτό. Το Arduino επικοινωνεί με τους αισθητήρες μέσω του πρωτοκόλλου SPI όταν ο αισθητήρας είναι ψηφιακός ή διαβάζει απευθείας την αναλογική τάση στην έξοδό τους όταν ο αισθητήρας είναι αναλογικός. Παράλληλα μία συσκευή XBee επικοινωνεί με το Arduino ώστε να προωθήσει τα δεδομένα που αυτό συλλέγει, μέσω του πρωτοκόλλου ZigBee, σε ένα άλλο XBee, το οποίο ανεβάζει πληροφορίες σε μία βάση δεδομένων από την οποία θα τα αντλεί η ιστοσελίδα προς ενημέρωση του χρήστη. Η ανάπτυξη του ιστότοπου έγινε με HTML/CSS για το στατικό μέρος της σελίδας, ενώ χρησιμοποιήθηκαν και τεχνολογίες από τις Javascript και AJAX ώστε να προστεθεί λειτουργικότητα στον ιστότοπο ώστε αυτός να γίνει πιο φιλικός και εύχρηστος στον χρήστη. Η βάση δεδομένων χρησιμοποιεί το σύστημα διαχείρισης σχεσιακών βάσεων δεδομένων MySQL, ενώ ο ιστότοπος επικοινωνεί με το σύστημα αυτό μέσω συναρτήσεων υλοποιημένων σε PHP. Για την οπτική αναπαράσταση των δεδομένων χρησιμοποιήθηκαν οι πλατφόρμες ThingSpeak και Google Charts. Το προτεινόμενο σύστημα θα ενσωματωθεί σε μία κατασκευή η οποία θα περιλαμβάνει όλα τα σενάρια αυτοματισμών που θα αναπτυχθούν ώστε αφενός να αποδειχθεί η δυνατότητα υλοποίησης και αφετέρου να υπάρχει ένα πρότυπο για περαιτέρω ανάπτυξη.
Abstract
The goal of this thesis is to develop and implement an automated system for regulating the climatic conditions within a greenhouse. The implementation intends to utilize technologies like microcontrollers, the Internet of Things (IoT), methods of communication both wired and wireless, databases, and programming of websites. The functionality of the proposed greenhouse management system relies on the Arduino platform, which would oversee several operations using sensors. The sensors offer a range of capabilities including motion detection, temperature and humidity information, fire protection, soil quality data, adaptive shading throughout the day, greenhouse watering and climate control, and basic access control. In the case of digital sensors, the Arduino establishes communication with the sensors via the SPI protocol. Conversely, with analog sensors, the Arduino directly measures the analog voltage at their output. Concurrently, an XBee device establishes communication with the Arduino in order to transmit the data it gathers using the ZigBee protocol to another XBee device, which then uploads it to a website for the purpose of informing the user. The website was developed using HTML/CSS for the static components of the sites, and also incorporated Javascript and AJAX technologies to enhance its functionality and maximise user-friendliness. While the website interfaces with the MySQL relational database management system via PHP-implemented methods, the database itself utilizes this technology. The data visualisation was achieved using the ThingSpeak and GoogleCharts platforms. The technology will be included into a construction project that will encompass all the automation scenarios that will be created to showcase the practicality of implementation and to establish a blueprint for advanced development.