Αριστοτέλειο Πανε ιστή ιο Θεσσαλονίκης. Τ ή α Ηλεκτρολόγων Μηχανικών και Μηχανικών Η Υ. Το έας Ηλεκτρονικής και Η Υ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Αριστοτέλειο Πανε ιστή ιο Θεσσαλονίκης. Τ ή α Ηλεκτρολόγων Μηχανικών και Μηχανικών Η Υ. Το έας Ηλεκτρονικής και Η Υ"

Transcript

1 Αριστοτέλειο Πανε ιστή ιο Θεσσαλονίκης Τ ή α Ηλεκτρολόγων Μηχανικών και Μηχανικών Η Υ Το έας Ηλεκτρονικής και Η Υ Σχεδιασμός και ανάπτυξη μετεωρολογικού σταθμού με ενσωματωμένα αισθητήρια και επικοινωνίες WiFi και GPRS για τη μέτρηση παραμέτρων μικρο-κλίματος σε πραγματικό χρόνο. Διπλωματική Εργασία Μελέτη-Σχεδίαση Νικόλαος Λάτμος Επιβλέπων Καθηγητής Δημήτριος Μητράκος (AUTh) Τριμελής Εξεταστική Επιτροπή Δημήτριος Μητράκος Γεώργιος Χασάπης Λουκάς Πέτρου Θεσσαλονίκη, Νοέμβριος 2017 Σε συνεργασία με:

2 ii

3 Περίληψη Αντικείμενο της παρούσης εργασίας αποτελεί ο σχεδιασμός ενός μετεωρολογικού σταθμού για την συλλογή δεδομένων καιρικών συνθηκών, του περιβάλλοντος εντός του οποίου βρίσκεται. Με την συλλογή των μετρήσεων κάθε λίγα λεπτά θα μεταδίδει τα δεδομένα αυτά, προς έναν κεντρικό server για την αποθήκευσή τους. Παράλληλα, μέσω μίας εφαρμογής για κινητό τηλέφωνο σε περιβάλλον Android, θα μπορεί ο χρήστης να παρακολουθεί τις καιρικές συνθήκες που μετρά ο σταθμός ανά πάσα χρονική στιγμή. Επιπρόσθετα, πέραν της απεικόνισης των δεδομένων προβλέπεται και η σχεδίαση κατάλληλης αρχιτεκτονικής για τον απομακρυσμένο έλεγχο κάποιου εξωτερικού συστήματος που επιθυμεί ο χρήστης μέσω μιας τάσης 12V. Η σύνδεση του σταθμού στο διαδίκτυο θα πραγματοποιείται με δύο διαφορετικούς τρόπους. Ο πρώτος είναι μέσω σύνδεσης σε ένα δίκτυο WiFi, αν και εφόσον διατίθεται router εντός του δικτύου εγκατάστασης του σταθμού. Ο δεύτερος, είναι μέσω κινητής τηλεφωνίας με τη χρήση modem και σύνδεση δεδομένων GPRS. Για την τροφοδοσία του συστήματος έχει σχεδιασθεί τροφοδοτικό AC/DC 12V, για λειτουργία από το δίκτυο και χρήση μπαταρίας 12V, η οποία φορτίζεται από το τροφοδοτικό αυτό, ενώ υποστηρίζεται ταυτόχρονα, από φωτοβολταϊκό πάνελ 18V με σκοπό την ενεργειακή αυτονομία του σταθμού σε περίπτωση διακοπής ρεύματος. Τέλος, θα γίνει εκτενής αναφορά στη σχεδίαση δύο πλακετών PCB, μία για τον σταθμό και άλλη μια για το κύκλωμα τροφοδοσίας του. iii

4 Abstract This thesis focuses on the development of a weather station, which collects data from the environment it is installed in. After collecting the necessary data every few minutes, it will transmit them to a central server storing them in a database. In parallel, the owner of such a weather station will have the ability to monitor its data by using an Android application that will be developed. Also, apart from the system s ability to present the collected data, a special architecture will be designed to provide remote control capabilities of an external user-defined system with a voltage of 12V. The weather station will connect to the Internet in two different ways. The first, is by using the WiFi network - if there is a router available in the area where the station is installed. The second, is by using the GSM network thus providing Internet connectivity via GPRS. Moreover, a special AC/DC 12V power supply has been designed which charges a battery of 12V from the electrical distribution network or from a 18V solar panel in case such a network is not available or due to a power outage. Finally, an extensive report over the design process of two PCB boards will take place, one used for the weather station and the other for the power supply circuit. iv

5 Ευχαριστίες Θα ήθελα να ευχαριστήσω ιδιαίτερα τον καθηγητή μου κ. Δημήτριο Μητράκο, επιβλέποντα καθηγητή, αφενός για την εμπιστοσύνη που μου έδειξε καθ όλη τη διάρκεια ανάπτυξης της εργασίας και αφετέρου για τον χρόνο που αφιέρωσε κατά την διάρκεια της υλοποίησής της. Στη συνέχεια, θα ήθελα να ευχαριστήσω τον πατέρα μου Αστέριο Λάτμο για τις γνώσεις και την πολύτιμη βοήθεια που μου προσέφερε κατά τη διάρκεια των σπουδών και της έως τώρα πορείας μου. Τέλος, οφείλω ένα θερμό ευχαριστώ στην οικογένειά μου, για τη στήριξη που μου προσέφερε κατά τη διάρκεια των σπουδών μου και που στάθηκαν δίπλα μου όλα αυτά τα χρόνια. v

6 Πίνακας Περιεχομένων Κεφάλαιο Εισαγωγή Μετεωρολογικοί σταθμοί και καιρικά δεδομένα Υπάρχουσα τεχνολογία Αντικείμενο διπλωματικής Οργάνωση εγγράφου... 2 Κεφάλαιο Περιγραφή Συστήματος Στόχοι του συστήματος Περιγραφή συστήματος Σταθμός Εξυπηρετητής Εφαρμογή κινητού τηλεφώνου... 6 Κεφάλαιο Hardware Λειτουργικές απαιτήσεις σταθμού Πρωτόκολλα επικοινωνίας UART (Universal Asynchronous Receiver/Transmitter) I 2 C (Inter-Integrated Circuit) Wire Protocol Θύρες εισόδου/εξόδου Ψηφιακές είσοδοι ADC (Analog to Digital Converter) Μικροελεγκτές ATmega328PB ESP SIM Αισθητήρες DHT DS18B BMP vi

7 3.5.4 LDR (Light Dependent Resistor) Αισθητήρας Βροχόπτωσης Τροφοδοσία Μπαταρία Φωτοβολταϊκό Πάνελ Δίκτυο Διανομής Σχηματικά Διαγράμματα και PCB Layout Εισαγωγή Πλακέτα Σταθμού Πλακέτα Τροφοδοτικού Κεφάλαιο Τελική Συσκευή Φυσικές Απαιτήσεις Στεγανό κουτί Τελική συσκευή Τελικό κόστος Κεφάλαιο Αρχιτεκτονική τριών επιπέδων Εισαγωγή Raspberry Pi REST API Βάση δεδομένων Django Framework Models Περιβάλλον Διαχείρισης Views URLs Κεφάλαιο Ανάπτυξη εφαρμογής σε περιβάλλον Android Λειτουργικές απαιτήσεις Χρήστες και εξωτερικά συστήματα Χρήστης Βάση δεδομένων vii

8 6.2.3 Υπηρεσία Χαρτών Σταθμός Διάγραμμα σεναρίων χρήσης Επιδεικτικά γραφικά παράθυρα εφαρμογής Κεφάλαιο Ενδεικτικές μετρήσεις Κεφάλαιο Συμπεράσματα Ανάλυση κόστους Καινοτομία και σύγκριση με ανταγωνιστικά προϊόντα Μελλοντική ανάπτυξη Παράρτημα Α Διαγράμματα Ροής Λειτουργίας Σταθμού Α.1 Διάγραμμα ροής διεργασιών του ATmega328PB Α.2 Διάγραμμα ροής WiFi modem (ESP8266) A.3 Ρύθμιση του GSM/GPRS modem (SIM900) A.4 Σύνδεση στον server με το GSM/GPRS modem Παράρτημα Β Εγκατάσταση συστημάτων Β.1 Εγκατάσταση server Β.1.2 Εγκατάσταση python Β.1.2 Εγκατάσταση virtualenv Β.1.3 Εγκατάσταση Django framework Β.1.4 Εγκατάσταση του project B.1.5 Στατική IP για τον server Β.1.6 Port forwarding Β.1.7 DDNS (Dynamic Domain Name System) Β.2 Εγκατάσταση σταθμού Β.2.1 Φυσική εγκατάσταση Β.2.2 Καλωδίωση Β.2.3 Στατική IP για τον σταθμό Β.2.4 Διακόπτες Παράρτημα Γ viii

9 Προγραμματισμός σταθμού Γ.1 Προγραμματισμός κεντρικού μικροελεγκτή (ATmega328PB) Γ.2 Προγραμματισμός WiFi modem (ESP8266) Γ.3 Πηγαίος κώδικας Γ.4 Σχέδια PCB Παράρτημα Δ Εργαλεία και Software που χρησιμοποιήθηκαν Δ.1 Atmel Studio Δ.2 Arduino IDE Δ.3 Altium Designer Δ.4 PulseView Δ.5 Android Studio Βιβλιογραφία ix

10 Κατάλογος Σχημάτων Σχήμα 2-1: Απεικόνιση του σταθμού που αναπτύχθηκε σε μπλοκ διάγραμμα... 5 Σχήμα 2-2: Η αρχιτεκτονική τριών επιπέδων που εφαρμόστηκε στο σύστημα... 6 Σχήμα 3-1: Σύνδεση σειριακών θυρών δύο ICs... 9 Σχήμα 3-2: Πακέτο UART Σχήμα 3-3: Παράδειγμα μετάδοσης του ASCII χαρακτήρα W ( ) Σχήμα 3-4: Ι 2 C multi-master/multi-slave σύνδεση Σχήμα 3-5: Μετάδοση bits δεδομένων σε I 2 C κανάλι Σχήμα 3-6: Χρονική απεικόνιση γραμμών I 2 C Σχήμα 3-7: Επικοινωνία master και slave μέσω της τεχνολογίας 1-Wire Σχήμα 3-8: Αποστολή reset παλμού και ανταπόκριση από τουλάχιστον έναν slave. Σε περίπτωση που δεν υπήρχε slave στο διάστημα 240μs το bus θα παρέμενε σε λογικό '1' Σχήμα 3-9: Χρονική αναπαράσταση του bus κατά την μετάδοση bits Σχήμα 3-10: Τυπική αναπαράσταση διαγράμματος ροής επικοινωνίας στην τεχνολογία 1-Wire Σχήμα 3-11: Παράδειγμα TTL τάσεων και της λογικής τους κατάστασης Σχήμα 3-12: Χρήση pull-down αντίστασης για την αντιμετώπιση floating voltages Σχήμα 3-13: Χρήση προστατευτικών διόδων σε κάθε pin του μικροελεγκτή Σχήμα 3-14: Απεικόνιση κυκλώματος μετατροπής αναλογικού σε ψηφιακό σήμα μέσω της μεθόδου των διαδοχικών προσεγγίσεων Σχήμα 3-15: α) Ο μικροελεγκτής ATmega328PB σε TQFP package. β) Οι λειτουργίες του κάθε GPIO Σχήμα 3-16: ESP8266 module Σχήμα 3-17: Περιβάλλον προγραμματισμού Arduino Σχήμα 3-18: Σύνδεση μεταξύ MCU και WiFi modem Σχήμα 3-19: Ο μικροελεγκτής SIM900 της SIMCom Σχήμα 3-20: Το SIM900 module Σχήμα 3-21: Ο αισθητήρας DHT Σχήμα 3-22: Πρωτόκολλο επικοινωνίας με τον DHT Σχήμα 3-23: Ο αισθητήρας DS18B Σχήμα 3-24: Μπλοκ διάγραμμα του αισθητήρα DS18B Σχήμα 3-25: Ο αισθητήρας BMP Σχήμα 3-26: Μπλοκ διάγραμμα BMP Σχήμα 3-27: Αναλυτική απεικόνιση διαγράμματος ροής για την μέτρηση των δεδομένων θερμοκρασίας και πίεσης Σχήμα 3-28: Η φωτοαντίσταση που χρησιμοποιήθηκε Σχήμα 3-29: Διαιρέτης τάσης με φωτοαντίσταση Σχήμα 3-30: Αισθητήρας βροχόπτωσης Σχήμα 3-31: Η μπαταρία μόλυβδου της Sunlight Systems Σχήμα 3-32: Αριθμός ωρών ηλιοφάνειας σύμφωνα με έρευνα της allmetstat Σχήμα 3-33: Το φωτοβολταϊκό πάνελ που χρησιμοποιήθηκε Σχήμα 3-34: Κύκλωμα τροφοδοσίας από το φωτοβολταϊκό x

11 Σχήμα 3-35: Ανορθωτής γέφυρας Σχήμα 3-36: Τομή μίας PCB πλακέτας με 4 στρώσεις χαλκού και 3 στρώσεις μονωτικού υλικού41 Σχήμα 3-37: Σχηματικό διάγραμμα μικροελεγκτή ATmega328PB Σχήμα 3-38: Απεικόνιση του επεξεργαστή πάνω στο PCB Σχήμα 3-39: Σχηματικό διάγραμμα συνδεσμολογίας ESP8266 και διακοπτών Σχήμα 3-40: Απεικόνιση του WiFi modem και των συνδεσμολογιών του σε 3D Σχήμα 3-41: Σχηματικό διάγραμμα συνδεσμολογίας SIM Σχήμα 3-42: Ο χώρος τοποθέτησης του GPRS modem και ο connector όπου θα συνδεθούν τα απαραίτητα καλώδια Σχήμα 3-43: Σχηματικό διάγραμμα αισθητήρων Σχήμα 3-44: Κλέμες υποδοχής αισθητήρων Σχήμα 3-45: Σχηματικό διάγραμμα εισόδου και εξόδου Σχήμα 3-46: Απεικόνιση κυκλωμάτων εισόδου και εξόδου Σχήμα 3-47: Το ολοκληρωμένο πρωτότυπο PCB που κατασκευάστηκε στο εργαστήριο Σχήμα 3-48: Τελικό PCB layout σταθμού Altium Designer - Κάτω όψη Σχήμα 3-49: Τελικό PCB layout σταθμού Altium Designer- Κάτω όψη Σχήμα 3-50: Η επαγγελματική πλακέτα από εργοστάσιο κατασκευής πλακετών Σχήμα 3-51: Η τελική πλακέτα με όλα τα εξαρτήματα τοποθετημένα Σχήμα 3-52: Σχηματικό διάγραμμα φόρτισης μπαταρίας μέσω φωτοβολταϊκού πάνελ και δικτύου διανομής Σχήμα 3-53: PCB layout κυκλώματος φόρτισης μπαταρίας σταθερής εξόδου 13.8V Σχήμα 3-54: Η τελική πλακέτα τροφοδοσίας του σταθμού Σχήμα 4-1: Το στεγανό κουτί που επιλέχθηκε για τον σταθμό (κωδικός GW44208) Σχήμα 4-2: Τελική κατασκευή σταθμού Σχήμα 4-3: Κόστος κατασκευής σταθμού Σχήμα 5-1: Απεικόνιση αρχιτεκτονικής τριών επιπέδων Σχήμα 5-2: Το Raspberry Pi model B Σχήμα 5-3: Τελευταία μέτρηση του σταθμού σε JSON format Σχήμα 5-4: Παράδειγμα HTTP GET request για τη λήψη δεδομένων Σχήμα 5-5: Παράδειγμα HTTP POST request για αποστολή δεδομένων Σχήμα 5-6: Διάγραμμα οντοτήτων-συσχετίσεων Σχήμα 5-7: Σχεσιακό μοντέλο βάσης δεδομένων Σχήμα 5-8: Δομή project του Django Framework Σχήμα 6-1: Διάγραμμα σεναρίων χρήσης εφαρμογής Σχήμα 6-2: Απεικόνιση στον χάρτη Σχήμα 6-3: Πιο πρόσφατη μέτρηση Σχήμα 6-4: Λίστα μετρήσεων ενός σταθμού Σχήμα 6-5: Στατιστικά τρεχούσης λίστας δεδομένων Σχήμα 6-6: Μενού επιλογών Σχήμα 6-7: Επιλογή σταθμού Σχήμα 6-8: Δημιουργία σταθμού Σχήμα 6-9: Διαγραφή σταθμού Σχήμα 6-10: Ρυθμίσεις εφαρμογής Σχήμα 6-11: Επιλογή μεσοδιαστήματος μεταξύ μετρήσεων xi

12 Σχήμα 6-12: Επιλογή χρόνου απενεργοποίησης RC Σχήμα 6-13: Επιλογή πλήθους εμφανιζόμενων μετρήσεων Σχήμα 6-14: Απομακρυσμένος έλεγχος Σχήμα 6-15: Γραφική παράσταση θερμοκρασίας Σχήμα 6-16: Γραφική παράσταση υγρασίας Σχήμα 6-17: Στατιστικά δεδομένα εντός του ορισμένου χρονικού διαστήματος Σχήμα 7-1: Γραφική παράσταση θερμοκρασίας Σχήμα 7-2: Ιστόγραμμα θερμοκρασίας Σχήμα 7-3: Γραφική παράσταση υγρασίας Σχήμα 7-4: Ιστόγραμμα υγρασίας Σχήμα 7-5: Γραφική παράσταση ατμοσφαιρικής πίεσης Σχήμα 7-6: Ιστόγραμμα ατμοσφαιρικής πίεσης Σχήμα 7-7: Γραφική παράσταση σχέσης θερμοκρασίας-υγρασίας Σχήμα 7-8: Γραφική παράσταση τάσης μπαταρίας με φόρτιση από το δίκτυο διανομής Σχήμα 7-9: Γραφική παράσταση πτώσης τάσης μπαταρίας δίχως καμία φόρτιση με χρήση WiFi 73 Σχήμα 7-10: Γραφική παράσταση τάσης μπαταρίας με φόρτιση από το φωτοβολταϊκό Σχήμα Α-1: Διάγραμμα ροής διεργασιών του ATmega328PB Σχήμα Α-2: Διάγραμμα ροής WiFi modem (ESP8266) Σχήμα Α-3: Διάγραμμα ροής ρύθμισης SIM Σχήμα Α-4: Διαδικασία σύνδεσης στον server μέσω TCP στην κατάλληλη πόρτα με το SIM900. Χρειάζεται ιδιαίτερη προσοχή καθώς διαφέρει σημαντικά με το WiFi modem Σχήμα Β-1: α)δίνουμε την στατική διεύθυνση στην συσκευή με MAC διεύθυνση B8-27-EB-B0-C8-E7 που αντιστοιχεί στο Raspberry Pi. β) Δίνουμε την στατική διεύθυνση στην συσκευή με MAC address 5C-CF-7F-13-EE-B7 που αντιστοιχεί στο ESP Σχήμα Β-2: Port forwarding για την πόρτα Ομοίως για την Σχήμα Β-3: Ρύθμιση υπηρεσίας DDNS Σχήμα Β-4: Σύνδεση πλακέτας τροφοδοσίας Σχήμα Β-5: Σύνδεση μπαταρίας με την πλακέτα του σταθμού Σχήμα Β-6: Σύνδεση αισθητηρίων στις κλέμες σημάτων και τροφοδοσίας Σχήμα Γ-1: AVR ISP mkll programmer Σχήμα Γ-2: Pinout Σχήμα Γ-3: Τοποθέτηση programmer πάνω στην πλακέτα Σχήμα Γ-4: Ο programmer για το ESP Σχήμα Γ-5: Ρυθμίσεις Arduino IDE για τον προγραμματισμό του ESP Σχήμα Γ-6: Προγραμματισμός ESP8266 με τη χρήση ενός FTDI xii

13 Κατάλογος Πινάκων Πίνακας 3-1: Κυριότερα χαρακτηριστικά ATmega328PB Πίνακας 3-2: Κυριότερα χαρακτηριστικά ESP8266 module Πίνακας 3-3: Πρώτες δέκα κλάσεις GPRS με βάση τον αριθμό των slots που καταλαμβάνει Πίνακας 3-4: Οι AT εντολές που χρησιμοποιήθηκαν και η χρονική τους ακολουθία Πίνακας 3-5: Κυριότερα χαρακτηριστικά του SIM900 module Πίνακας 3-6: Τεχνικά χαρακτηριστικά αισθητήρα DHT Πίνακας 3-7: Λειτουργία των pins του DH22 (1,2,3,4 από τα αριστερά προς τα δεξιά) Πίνακας 3-8: Τεχνικά χαρακτηριστικά DS18B Πίνακας 3-9: Χρονική ακολουθία εντολών για την μέτρηση λήψη της θερμοκρασίας Πίνακας 3-10: Τεχνικά χαρακτηριστικά αισθητήρα BMP Πίνακας 4-1: Τεχνικά χαρακτηριστικά στεγανού κουτιού Πίνακας 5-1: Τεχνικά χαρακτηριστικά Raspberry Pi model B Πίνακας 5-2: Κυριότεροι HTTP κωδικοί και η σημασία τους Πίνακας 5-3: Τα URIs που υποστηρίζονται από τον server Πίνακας 5-4: Γνωρίσματα πίνακα σταθμών Πίνακας 5-5: Γνωρίσματα πίνακα μετρήσεων Πίνακας 5-6: Γνωρίσματα πίνακα απομακρυσμένου ελέγχου Πίνακας Β-1: Σύνδεση αισθητήρων στις κλέμες Πίνακας Β-2: Συνδεσμολογία GPRS modem στην ειδική υποδοχή (από τα αριστερά προς τα δεξιά) Πίνακας Β-3: Πίνακας λειτουργίας διακοπτών πλακέτας σταθμού xiii

14 xiv

15 Κεφάλαιο 1 1. Εισαγωγή 1.1 Μετεωρολογικοί σταθμοί και καιρικά δεδομένα Η παρατήρηση των καιρικών δεδομένων αποτελεί μία εκ των αρχαιότερων ενασχολήσεων κάθε ανθρώπινου πολιτισμού. Στην αρχαία Ελλάδα, οι άνθρωποι προσπαθούσαν μέσω της καταγραφής των καιρικών συνθηκών να κάνουν πρόβλεψη για το μέλλον βασιζόμενοι σε αυτό το αρχείο καταγραφών. Η σημερινή μέθοδος πρόβλεψης του καιρού δεν διαφέρει έντονα από την αρχαία, καθώς είναι βασισμένη σε ένα σύνολο δεδομένων μέσω των οποίων μετά από κατάλληλη μοντελοποίηση και με τη βοήθεια των ηλεκτρονικών υπολογιστών, είναι δυνατόν να εξάγουμε χρήσιμα συμπεράσματα. Ένα εύλογο ερώτημα που παραμένει είναι το πώς θα μετρήσουμε αυτά τα δεδομένα αλλά και ποια είναι αυτά συγκεκριμένα, ώστε να δημιουργήσουμε αυτό το σύνολο καιρικών καταγραφών στο οποίο θα βασιστεί η πρόβλεψη. Την απάντηση σε αυτό το ερώτημα δίνει ο μετεωρολογικός σταθμός. Ο μετεωρολογικός σταθμός είναι ένα σύστημα το οποίο μέσω κατάλληλων αισθητηρίων μπορεί να καταγράψει χρήσιμα δεδομένα όπως θερμοκρασία, υγρασία, βαρομετρική πίεση, την ταχύτητα και τη κατεύθυνση του ανέμου καθώς και την ατμοσφαιρική κατακρήμνιση. Η μέτρηση θερμοκρασίας και υγρασίας γίνεται πάντοτε υπό σκιά μακριά από την ηλιακή ακτινοβολία, ενώ ο άνεμος μετριέται σε σημεία με όσο το δυνατόν λιγότερα εμπόδια. Η συχνότητα δειγματοληψίας κάθε σταθμού εξαρτάται από πολλούς παράγοντες, αλλά συνήθως είναι μικρότερη από μία ώρα. 1.2 Υπάρχουσα τεχνολογία Η χρήση μετεωρολογικών σταθμών δεν είναι κάτι το καινούριο, καθώς υφίστανται εδώ και δεκαετίες, αλλά ο τρόπος αποθήκευσης και αποστολής δεδομένων έχει αλλάξει με το πέρασμα των χρόνων. Σήμερα, οι περισσότεροι επαγγελματικοί σταθμοί φροντίζουν να στείλουν τα δεδομένα τους όσο το δυνατόν γρηγορότερα σε έναν κεντρικό εξυπηρετητή με ευρύχωρες βάσεις δεδομένων και αυξημένη υπολογιστική ισχύ για την πρόβλεψη του καιρού. Βέβαια, πέραν των επαγγελματικών μετεωρολογικών σταθμών, αυξημένη είναι και η ζήτηση μετεωρολογικών σταθμών για προσωπική χρήση. Οι σταθμοί αυτοί, συνήθως αναλαμβάνουν και την αποστολή των δεδομένων σε μία κεντρική κονσόλα, μέσω της οποίας ο χρήστης μπορεί να τα παρακολουθήσει ανά πάσα στιγμή και από οπουδήποτε. Φυσικά, πολλές από αυτές τις κονσόλες παρέχουν και πρόσβαση στο διαδίκτυο μέσω σύνδεσης στον router για την αποστολή των δεδομένων σε κεντρικούς εξυπηρετητές με αποτέλεσμα ο χρήστης ή και άλλοι ενδιαφερόμενοι να είναι ενήμεροι για τις τρέχουσες 1

16 καιρικές συνθήκες, δίχως να βρίσκονται αναγκαστικά στον τόπο εγκατάστασης του σταθμού. Τέλος, υπάρχει και η περίπτωση όπου ο χώρος εγκατάστασης ενός σταθμού δεν παρέχει υπηρεσίες πρόσβασης στο διαδίκτυο μέσω router, όπως για παράδειγμα σε μία σχετικά απομακρυσμένη γεωργική καλλιέργεια, όπου ο μόνος τρόπος πρόσβασης στο διαδίκτυο είναι η εγκατάσταση P2P (Point to Point communication) δικτύων που όμως ανεβάζει το κόστος εγκατάστασης ή η χρήση του δικτύου κινητής τηλεφωνίας (GSM) υπό την προϋπόθεση ότι παρέχεται ιδανικό σήμα από τον σταθμό βάσης. 1.3 Αντικείμενο διπλωματικής Σκοπός αυτής της διπλωματικής εργασίας είναι η σχεδίαση και η κατασκευή ενός προσωπικού ενεργειακά αυτόνομου μετεωρολογικού σταθμού με απώτερο σκοπό την καταγραφή δεδομένων σε τακτά χρονικά διαστήματα, την αποστολή τους σε έναν κεντρικό εξυπηρετητή μέσω ειδικών πρωτοκόλλων επικοινωνίας, χρησιμοποιώντας τόσο το WiFi, όσο και την μετάδοση δεδομένων GPRS μέσω του δικτύου κινητής τηλεφωνίας. Πιο συγκεκριμένα, θα μετράει τιμές θερμοκρασίας περιβάλλοντος, θερμοκρασίας εντός του σταθμού, υγρασίας, βαρομετρικής πίεσης, κατάστασης καιρού καθώς και της τάσης της μπαταρίας. Παράλληλα, θα παρέχει τη δυνατότητα απομακρυσμένου ελέγχου κάποιου εξωτερικού συστήματος. Η κατασκευή, θα περιλαμβάνει ένα ειδικό PCB,στο οποίο τον κεντρικό ρόλο θα έχει ένας κεντρικός μικροελεγκτής και θα συνδέονται σ αυτόν τα αισθητήρια και τα δύο modem που μας παρέχουν πρόσβαση στο δίκτυο. Επιπλέον, θα κατασκευαστεί ένα ακόμη PCB για την τροφοδοσία του σταθμού με τάση από το δίκτυο διανομής, με τάση εξόδου 12V, ενώ θα υπάρχει και υποστήριξη με μπαταρία Pb 12V και φωτοβολταϊκού πάνελ, για την αυτόνομη και αδιάλειπτη λειτουργία του συστήματος. Τέλος, θα αναπτυχθεί ειδική εφαρμογή σε περιβάλλον Android που θα παρέχει άμεσα την απεικόνιση των μετρούμενων στοιχείων από τους διαθέσιμους σταθμούς, αλλά θα δίνει ταυτόχρονα και την δυνατότητα απομακρυσμένου ελέγχου από τον χρήστη, ώστε να μπορεί να ενεργοποιεί από μακριά κάποιο σύστημα χρησιμοποιώντας μια τάση 12V. 1.4 Οργάνωση εγγράφου Για την ευκολότερη κατανόηση και ανάγνωση αυτής της διπλωματικής, το περιεχόμενο έχει διαιρεθεί με βάση το σύστημα που αναλύουμε κάθε φορά παρά τον χρονολογική σειρά σχεδίασης και ανάπτυξης του κάθε υποσυστήματος. Απαραίτητο βήμα σε κάθε τεχνικής φύσης έγγραφο, είναι η ομαλή εισαγωγή του αναγνώστη στο θέμα που πρόκειται να παρουσιαστεί. Για αυτό τον λόγο, το πρώτο κεφάλαιο, στοχεύει αποκλειστικά στην γνωριμία με τα θέματα που πρόκειται να αναπτυχθούν αναλυτικά στα επόμενα κεφάλαια, 2

17 καθώς στην ενημέρωσή του για σχετικά παρόμοια συστήματα που ήδη κυκλοφορούν στην αγορά και είναι στη διάθεση του καταναλωτή. Το δεύτερο κεφάλαιο στοχεύει στην γενικότερη κατανόηση από πλευράς του αναγνώστη του συστήματος που πρόκειται να αναπτυχθεί. Ξεκινώντας, θα παρουσιαστούν οι στόχοι του συγκεκριμένου project και θα ακολουθήσει η γενικότερη περιγραφή του κάθε υποσυστήματος ξεχωριστά, αλλά και ολοκληρωμένα. Το τρίτο κεφάλαιο, εστιάζει στην λεπτομερή περιγραφή του hardware του μετεωρολογικού σταθμού. Αρχικά, θα οριστούν οι λειτουργικές απαιτήσεις του σταθμού και αφού γίνουν κατανοητές, θα παρουσιαστούν όλα τα επιμέρους στοιχεία που απαρτίζουν το hardware του σταθμού όπως ο μικροελεγκτής, τα modems, τα αισθητήρια, οι είσοδοι του συστήματος, τα πρωτόκολλα επικοινωνίας που χρησιμοποιήθηκαν, καθώς και το κύκλωμα τροφοδοσίας μέσω του δικτύου διανομής, της μπαταρίας και του φωτοβολταϊκού πάνελ. Τέλος, θα παρουσιαστεί το κυκλωματικό διάγραμμα του κάθε επιμέρους υποσυστήματος, αλλά και τα τελικά PCB. Το κεφάλαιο τέσσερα, αφορά το μηχανολογικό κομμάτι του σταθμού και γενικώς το ολοκληρωμένο σύστημα που αναπτύχθηκε. Είναι σημαντικό να προσδιορίσουμε επακριβώς τις συνθήκες λειτουργίας του σταθμού και την επιθυμητή περιοχή εγκατάστασης. Στο τελευταίο κομμάτι του κεφαλαίου παρουσιάζεται το τελικό κόστος της κατασκευής. Στο κεφάλαιο πέντε, θα γίνει αρχικά εισαγωγή στην γενικότερη αρχιτεκτονική του συστήματος, όπου είναι κρίσιμο να αναλύσουμε τον τρόπο επικοινωνίας μεταξύ σταθμού και εξυπηρετητή. Στη συνέχεια θα παρουσιάσουμε λεπτομερέστερα τα κύρια στοιχεία και λειτουργίες του Raspberry Pi που χρησιμοποιήθηκε ως εξυπηρετητής, τα πρωτόκολλα επικοινωνίας, τα ειδικά εργαλεία για την ανάπτυξη του και τέλος, το μοντέλο της βάσης δεδομένων που απαιτείται για την αποθήκευση των δεδομένων κάθε σταθμού. Στο κεφάλαιο έξι, εξειδικεύονται οι ανάγκες του τελικού χρήστη και παρουσιάζεται η τελική εφαρμογή που αναπτύχθηκε σε περιβάλλον Android, με απώτερο σκοπό την παροχή υπηρεσιών παρουσίασης καιρικών συνθηκών και απομακρυσμένου ελέγχου του εκάστοτε σταθμού. Στο έβδομο κεφάλαιο, παρουσιάζονται μετρήσεις που ελήφθησαν από τον κατασκευασμένο μετεωρολογικό σταθμό κατά τη διάρκεια συγγραφής αυτού του εγγράφου. Στο τελευταίο κεφάλαιο, γίνεται σύγκριση με υπάρχοντα συστήματα αυτού του είδους και επιπλέον αναλύονται μερικά ανοιχτά θέματα που θα μπορούσαν να τροποποιηθούν ή να συμπεριληφθούν, σε μια μελλοντική ανάπτυξη και πιθανή αναβάθμιση. Τέλος, διατίθενται ειδικά παραρτήματα για τα λογισμικά που χρησιμοποιήθηκαν κατά την ανάπτυξη του project, διαγράμματα ροής διαφόρων λειτουργιών του σταθμού και ορισμένες οδηγίες εγκατάστασης. 3

18 Κεφάλαιο 2 2. Περιγραφή Συστήματος 2.1 Στόχοι του συστήματος Προτού μεταβούμε στην αναλυτική περιγραφή του κάθε υποσυστήματος είναι αναγκαίο να καθορίσουμε τις κρισιμότερες απαιτήσεις τις οποίες θα πρέπει να πληροί η σχεδίαση του έργου. Επαναλαμβάνοντας λοιπόν, στόχος είναι η δημιουργία ενός προσωπικού μετεωρολογικού σταθμού που θα μπορεί μέσω ασύρματης επικοινωνίας να μεταδώσει τα δεδομένα σε έναν κεντρικό εξυπηρετητή μέσω του οποίου ο χρήστης είναι σε θέση να δει ανά πάσα χρονική στιγμή τα δεδομένα του σταθμού του μέσω μίας Android εφαρμογής. Ειδικότερα οι απαιτήσεις του έργου που πρέπει να εκπληρωθεί είναι οι παρακάτω: Λειτουργία σταθμού και εξυπηρετητή 24/7. Ύπαρξη ενός κεντρικού εξυπηρετητή. Ενεργειακή αυτονομία σταθμού. Σύνδεση σταθμού και router μέσω WiFi. Αποστολή δεδομένων μέσω GPRS σε περίπτωση μη δυνατής σύνδεσης μέσω WiFi. Καταγραφή θερμοκρασίας, υγρασίας, βαρομετρικής πίεσης, καιρικής κατάστασης και τάση μπαταρίας. Δυνατότητα απομακρυσμένου ελέγχου εξωτερικού συστήματος μέσω του σταθμού. Εγκατάσταση σταθμού σε εξωτερικό χώρο. Υποστήριξη πολυάριθμων σταθμών από πλευράς εξυπηρετητή και εφαρμογής. Ικανοποιητικός χώρος αποθήκευσης δεδομένων στον εξυπηρετητή. 2.2 Περιγραφή συστήματος Σταθμός Ο σταθμός απαρτίζεται από μία κεντρική μονάδα επεξεργασίας (MCU) ή αλλιώς έναν μικροελεγκτή, ένα WiFi modem, ένα GSM/GPRS modem, αισθητήρια μέτρησης των δεδομένων που προαναφέρθηκαν καθώς και ένα κύκλωμα τροφοδοσίας που τροφοδοτείται από το δίκτυο διανομής χαμηλής τάσης και υποστηρίζεται από μπαταρία και φωτοβολταϊκό πάνελ. 4

19 Ο μικροελεγκτής αναλαμβάνει αρχικά την βαθμονόμηση (calibration) των αισθητηρίων, ενώ στη συνέχεια διαβάζει τις τιμές από το κάθε ένα ξεχωριστά. Αφού λάβει τις τιμές των αισθητηρίων αναλαμβάνει την μετάδοσή τους μέσω ενός από τα δύο modem στον κεντρικό εξυπηρετητή. Βέβαια, εκτελούνται και άλλες λειτουργίες όπως η ενημέρωση για την κατάσταση της ασύρματης σύνδεσης από το εν λειτουργία modem, αλλά λεπτομέρειες για τις συγκεκριμένες λειτουργίες θα παρουσιαστούν στο κεφάλαιο 3. Ένα μπλοκ διάγραμμα που απεικονίζει σε μία περιληπτική (abstract) μορφή τον σταθμό που υλοποιήθηκε φαίνεται στο σχήμα 2-1: Σχήμα 2-1: Απεικόνιση του σταθμού που αναπτύχθηκε σε μπλοκ διάγραμμα Εξυπηρετητής Ο εξυπηρετητής αναπτύχθηκε χρησιμοποιώντας τον μικροϋπολογιστή Raspberry Pi. Ο εξυπηρετητής αυτός αναλαμβάνει μία πληθώρα διεργασιών, όπως η επικοινωνία τόσο με τον σταθμό όσο και με την εφαρμογή που χρησιμοποιεί ο χρήστης, η αποθήκευση των δεδομένων υλοποιώντας κατάλληλα σχεσιακά μοντέλα, καθώς επίσης και η παροχή μίας κεντρικής διαχείρισης για την εισαγωγή/διαγραφή σταθμών. Τέλος, αναπτύχθηκε με τέτοιο τρόπο ώστε να παρέχει ικανοποιητική ασφάλεια τόσο στα δεδομένα του κάθε χρήστη όσο και στη δυνατότητα απομακρυσμένου ελέγχου κάποιου εξωτερικού συστήματος. Εδώ είναι σημαντικό να τονιστεί πως λόγω των περιορισμένων πόρων ενός μικροϋπολογιστή όπως είναι το Raspberry Pi, σε μία επαγγελματική υλοποίηση με εμπορικό ορίζοντα εκμετάλλευσης του συστήματος, θα έπρεπε να χρησιμοποιηθεί ισχυρότερος εξυπηρετητής και μεγαλύτερη βάση δεδομένων ή να γίνει χρήση κάποιου Cloud-based service. Παρόλα αυτά, για τις ανάγκες της διπλωματικής εργασίας το 5

20 Raspberry Pi θεωρήθηκε ως ιδανική επιλογή λόγω του περιορισμένου αριθμού σταθμών που μπορούν να αναπτυχθούν, αλλά και τον περιορισμένο αριθμό χρηστών που θα χρησιμοποιήσουν την εφαρμογή που σχεδιάσθηκε Εφαρμογή κινητού τηλεφώνου Η εφαρμογή που αναπτύχθηκε παρέχει όλες τις απαραίτητες λειτουργίες ώστε ο χρήστης του σταθμού να μπορεί ανά πάσα στιγμή να ελέγχει τις τρέχουσες ή και προγενέστερες μετρήσεις που καταγράφηκαν από τον σταθμό. Πρέπει να τονιστεί, ότι σε καμία περίπτωση δεν παρέχεται άμεση επικοινωνία με τον σταθμό, καθώς η αρχιτεκτονική του συστήματος ακολουθεί αυτή των τριών επιπέδων. Αυτό σε πρακτικό επίπεδο, σημαίνει ότι τόσο η εφαρμογή όσο και ο σταθμός έχουν πρόσβαση μόνον προς τον server από τον οποίο ζητάνε ή στέλνουν δεδομένα και όχι point to point επικοινωνία. Στο σχήμα 2-2 φαίνεται η τελική αρχιτεκτονική ολόκληρου του συστήματος. Σχήμα 2-2: Η αρχιτεκτονική τριών επιπέδων που εφαρμόστηκε στο σύστημα 6

21 Κεφάλαιο 3 3. Hardware Σε αυτό το κεφάλαιο θα παρουσιαστεί σε βάθος το σύστημα του σταθμού που σχεδιάσθηκε, καθώς και οι λειτουργίες που επιτελεί. Όπως σε κάθε πρόβλημα, θα ξεκινήσουμε με τον καθορισμό των απαιτήσεων ενώ στη συνέχεια θα εστιάσουμε στην αναλυτική περιγραφή και επεξήγηση του κάθε υποσυστήματος. Πιο συγκεκριμένα, θα αναφερθεί ο τρόπος επικοινωνίας με το κάθε αισθητήριο, τα modems αλλά και ορισμένες λειτουργίες τόσο από πλευράς χρήστη όσο και από πλευράς του μικροελεγκτή. 3.1 Λειτουργικές απαιτήσεις σταθμού Οι λειτουργικές απαιτήσεις του σταθμού είναι φυσικά εξαρτώμενες από τις γενικότερες απαιτήσεις ολόκληρου του project, αλλά ταυτόχρονα πρέπει να δοθούν πιο αυστηρές απαιτήσεις στις τιμές των μετρούμενων μεγεθών, την απαιτούμενη τάση και ρεύμα λειτουργίας, τη συχνότητα μετάδοσης δεδομένων, τον μέγιστο χρόνο ανταπόκρισης σε εντολή του χρήστη για απομακρυσμένο έλεγχο και φυσικά το χρονικό διάστημα αυτονομίας σε διαστήματα κακοκαιρίας. Όλα τα παραπάνω ζητήματα παρουσιάζονται στην ερχόμενη λίστα. Ακρίβεια μέτρησης θερμοκρασίας 0.5 Ακρίβεια μέτρησης υγρασίας 2% RH Ακρίβεια μέτρησης ατμοσφαιρικής πίεσης 0.5 mbar Ακρίβεια μέτρησης εσωτερικής θερμοκρασίας 1 Συχνότητα δειγματοληψίας και μετάδοσης δεδομένων 0.4Hz Αυτονομία μπαταρίας σε περίοδο κακοκαιρίας 2 μέρες Φωτοβολταϊκό πάνελ τουλάχιστον 2.5 Watt Ονομαστική τάση λειτουργίας 50mA (ικανότητα να μπορεί να διαχειριστεί ρεύματα μέχρι και 2A) Ονομαστική έξοδος απομακρυσμένου ελέγχου 12V Μέγιστη απόσταση από το router σε περίπτωση χρήσης WiFi 100m (line of sight) Αυτόματη ενεργοποίηση του GPRS σε περίπτωση μη δυνατής σύνδεσης του WiFi Χειροκίνητη δυνατότητα ενεργοποίησης του WiFi ή του GPRS. Υποστήριξη προγραμματισμού μέσα στο κύκλωμα τόσο του WiFi modem όσο και του κεντρικού μικροελεγκτή (αφορά μόνο τον μηχανικό) Ψηφιακοί είσοδοι/έξοδοι για λόγους debugging (αφορά μόνον τον μηχανικό) 7

22 3.2 Πρωτόκολλα επικοινωνίας Μέχρι στιγμής έχουμε περιγράψει τις λειτουργικές απαιτήσεις του σταθμού και μπορούμε πλέον να εστιάσουμε στα ανεξάρτητα στοιχεία του. Βέβαια, πριν αυτό το βήμα είναι σημαντικό να αναλύσουμε ένα θέμα που θα αναφερθεί κατά κόρον στα επόμενα κεφάλαια, την επικοινωνία μεταξύ των στοιχείων του σταθμού. Πιο συγκεκριμένα θα παρουσιαστούν τα πιο γνωστά πρωτόκολλα επικοινωνίας μεταξύ των ολοκληρωμένων κυκλωμάτων ή με άλλα περιφερειακά. Υπάρχουν δύο κατηγορίες μετάδοσης για την επικοινωνία μεταξύ ολοκληρωμένων κυκλωμάτων (ICs), η σειριακή και η παράλληλη μετάδοση. Στην παράλληλη μετάδοση νοείται η ομαδική μεταφορά χαρακτήρων. Στην ψηφιακή μετάδοση υλοποιείται με την ταυτόχρονη μεταφορά των δυαδικών ψηφίων κάθε χαρακτήρα. Κατά συνέπεια για κάθε δυαδικό ψηφίο του χαρακτήρα αφιερώνεται μια ιδιαίτερη γραμμή μετάδοσης. Βασικό πλεονέκτημα της παράλληλης μετάδοσης είναι ο μικρός χρόνος μεταφοράς δεδομένων, αλλά με κόστος τον αυξημένο αριθμό αγωγών που απαιτούνται. Πρέπει να τονιστεί ότι η παράλληλη μετάδοση χρησιμοποιείται ευρύτατα στο εσωτερικό του ολοκληρωμένου κυκλώματος, αλλά για την επικοινωνία με άλλα ολοκληρωμένα κυκλώματα ή περιφερειακά, ευρεία χρήση βρίσκει η σειριακή επικοινωνία. Μερικά από τα πιο κοινά σειριακά πρωτόκολλα είναι τα παρακάτω: USB (Universal Serial Bus) CAN (Control Area Network) RS-232 SPI (Serial Peripheral Interface) UART (Universal Asynchronous Receiver Transmitter) I 2 C (Inter-Integrated Circuit) 1-Wire Protocol Ethernet Τα πρωτόκολλα που χρησιμοποιήθηκαν στο σύστημα που υλοποιήθηκε είναι η UART, I 2 C και 1-Wire. Περισσότερες πληροφορίες για το πότε χρησιμοποιούνται και για τον τρόπο λειτουργίας τους θα δούμε στα αμέσως επόμενα κεφάλαια UART (Universal Asynchronous Receiver/Transmitter) Πρόκειται για ένα από τα πιο συνηθισμένα σειριακά πρωτόκολλα επικοινωνίας. Αποτελεί σχεδόν αναπόσπαστο κομμάτι για κάθε μικροελεγκτή αφού συνήθως από τους μικρότερους μικροελεγκτές ως τους μεγαλύτερους περιλαμβάνεται τουλάχιστον μία τέτοια θύρα. Πρέπει όμως να τονιστεί πως σε αντίθεση με τα υπόλοιπα σειριακά πρωτόκολλα η 8

23 UART έχει μια μεγάλη διαφορά, το γεγονός ότι αποτελεί ένα hardware υποσύστημα μέσα στον μικροελεγκτή και δεν ορίζει απλώς τον τρόπο αποστολής και λήψης δεδομένων. Στον τρόπο επικοινωνίας με UART, οι δύο θύρες των συσκευών συνδέονται απευθείας μεταξύ τους. Η προς μετάδοση δεδομένων σειριακή θύρα μετατρέπει τα παράλληλα δεδομένα που προέρχονται από την κεντρική μονάδα επεξεργασίας σε σειριακή μορφή, όπου πλέον bit προς bit καταφθάνουν στην σειριακή που λαμβάνει δεδομένα σε κάποιο ξεχωριστό ολοκληρωμένο κύκλωμα, όπου με την άφιξη ενός ολόκληρου χαρακτήρα τα μεταδίδει προς την κεντρική μονάδα επεξεργασίας του χρησιμοποιώντας την παράλληλη μετάδοση. Γίνεται σαφές ότι για την υλοποίηση της επικοινωνίας απαιτούνται μόλις δύο κανάλια (και φυσικά κοινή γείωση). Σχήμα 3-1: Σύνδεση σειριακών θυρών δύο ICs Η UART μεταδίδει τα δεδομένα ασύγχρονα, δηλαδή δεν υπάρχει κάποιο ρολόι που να συγχρονίζει τα δεδομένα από την έξοδο της σειριακής θύρας με την δειγματοληψία τους από την σειριακή θύρα υποδοχής. Τότε ένα εύλογο ερώτημα που γεννιέται είναι πως η UART της συσκευής εισόδου είναι σε θέση να πραγματοποιήσει τον κατάλληλο ρυθμό δειγματοληψίας ώστε να αναγνωρίζει το κάθε bit που παραλαμβάνει με ελάχιστα περιθώρια σφάλματος. Το ερώτημα έρχεται να λύσει μία ειδική λειτουργία αυτών των θυρών, ένας ειδικός καταχωρητής που καθορίζει τον αριθμό bits ανά δευτερόλεπτο μεταξύ των δύο ολοκληρωμένων, τον λεγόμενο Baud Rate (μετρούμενος σε bits per second bps). Θέτοντας αυτόν τον ρυθμό ίσο για τις συσκευές που επικοινωνούν είναι σε θέση να γνωρίζουν πότε θα πρέπει να κάνουν δειγματοληψία στα κανάλια επικοινωνίας. Επιπρόσθετα, ένα ακόμη ερώτημα είναι το πώς θα καταλάβει η εκάστοτε σειριακή θύρα το ξεκίνημα μιας μετάδοσης ενός χαρακτήρα. Το πρωτόκολλο της καθορίζει ένα start bit πριν την μετάδοση του κυρίως περιεχομένου καθώς και έναν αριθμό από stop bits για την σηματοδότηση του τέλους μετάδοσης του χαρακτήρα. Γενικώς τα δεδομένα που μεταδίδονται μέσω της UART είναι οργανωμένα σε πακέτα. Κάθε πακέτο εμπεριέχει ένα start bit, 5 έως 9 data bits (εξαρτάται από την εκάστοτε υπό μελέτη UART), ένα προαιρετικό bit ισοτιμίας (parity bit) και τέλος ένα ή δύο stop bits. Ένα παράδειγμα πακέτου με 8 data bits, 1 parity και 1 stop bit φαίνεται στο σχήμα

24 Σχήμα 3-2: Πακέτο UART Το bit ισοτιμίας προσδιορίζει αν ο αριθμός των bit που είναι 1 πριν την μετάδοση του data frame (το data frame προσδιορίζει τα data bits) είναι περιττός ή άρτιος. Αν το bit ισοτιμίας είναι 0 τότε ο αριθμός των 1 στο data frame είναι άρτιος, ενώ αν είναι 1 τότε ο αριθμός των 1 στο data frame είναι περιττός. Με αυτόν τον τρόπο η UART γνωρίζει αν το data frame υπέστη μεταβολές κατά την μετάδοση του. Παρακάτω, απεικονίζεται ένα παράδειγμα μετάδοσης δεδομένων μέσω της UART. Σχήμα 3-3: Παράδειγμα μετάδοσης του ASCII χαρακτήρα W ( ) Τέλος, πρέπει να τονιστεί πως παρά τα σπουδαία πλεονεκτήματα μιας τέτοιας μεθόδου επικοινωνίας υπάρχουν και κάποια μειονεκτήματα, τα κυριότερα των οποίων είναι η αδυναμία υποστήριξης πολλών ολοκληρωμένων μέσω μίας σειριακής θύρας, το μικρό μήκος δεδομένων ενός πακέτου και η συμβατότητα των baud rates καθώς δεν πρέπει να απέχουν μεταξύ τους άνω του 10% I 2 C (Inter-Integrated Circuit) Το I 2 C πρωτόκολλο είναι ένα αμφίδρομο σύστημα δύο γραμμών που επιτρέπει την επικοινωνία μεγάλου αριθμού ολοκληρωμένων κυκλωμάτων μεταξύ τους. Αυτό το πρωτόκολλο αναπτύχθηκε από τη Phillips Semiconductor το 1982 και έκτοτε αποτελεί ένα από τα πιο εύχρηστα και ευρέως χρησιμοποιούμενα σειριακά πρωτόκολλα επικοινωνίας. Πολλές φορές, συναντιέται με διαφορετικό όνομα όπως για παράδειγμα TWI (Two Wire Interface), σύμφωνα με την ATMEL για λόγους πνευματικών δικαιωμάτων, παρόλα αυτά όμως παραμένει το ίδιο. 10

25 Μερικά από τα χαρακτηριστικά του είναι τα εξής: Απαιτεί μόλις δύο κανάλια επικοινωνίας, μία γραμμή δεδομένων (serial data line, SDA) και μία γραμμή ρολογιού (serial clock line, SCL). Κάθε συσκευή συνδεδεμένη στο κανάλι μπορεί να απευθυνθεί από οποιονδήποτε master μέσω μίας μοναδικής διεύθυνσης. Πρόκειται για ένα multi-master κανάλι το οποίο παρέχει και εντοπισμό συγκρούσεων σε περίπτωση που δύο ή περισσότεροι master προσπαθούν να μεταδώσουν ταυτόχρονα. Κατά τη διάρκεια της επικοινωνίας ανταλλάσσονται 8-bit δεδομένα σε halfduplex με την ταχύτητα επικοινωνίας να κυμαίνεται από 100kbit/s σε Standardmode, σε 400kbit/s σε Fast-mode και σε 3.4Mbit/s σε High-speed mode. Ο αριθμός των συσκευών που μπορούν να συνδεθούν στο bus περιορίζεται από την 7-bit διεύθυνση των slaves, αλλά και τη συνολική χωρητικότητα της γραμμής που δεν πρέπει να υπερβαίνει τα 400pF. Πρέπει να τονιστεί ότι οι γραμμές SDA και SCL είναι αναγκαίο να συνδεθούν με pull up αντιστάσεις για την ορθή λειτουργία του bus. Ένα παράδειγμα συνδέσεων διάφορων ολοκληρωμένων κυκλωμάτων φαίνεται στο σχήμα 3-4. Σχήμα 3-4: Ι 2 C multi-master/multi-slave σύνδεση Ένα bit δεδομένων που μεταδίδεται στο κανάλι πρέπει να συνοδεύεται από ένα παλμό στη γραμμή του ρολογιού. Μάλιστα, κατά τη διάρκεια αυτής της μετάδοσης είναι σημαντικό η γραμμή δεδομένων να διατηρείται σταθερή και το ρολόι χρονισμού να βρίσκεται σε θετικό επίπεδο τάσης. Η μόνη εξαίρεση σε αυτό τον κανόνα είναι κατά τη διάρκεια που μεταδίδονται START και STOP bits. 11

26 Σχήμα 3-5: Μετάδοση bits δεδομένων σε I 2 C κανάλι Για την μετάδοση δεδομένων από τον master προς τον slave ή το διάβασμα δεδομένων από τον slave προς τον master πρέπει να ακολουθήσουν δύο στάδια. Το πρώτο αφορά την διευθυνσιοδότηση του επιθυμητού slave από τον master. Αρχικά, ο master ξεκινά την διαδικασία στέλνοντας ένα START bit θέτοντας την SDA γραμμή από high σε low ενώ στη συνέχεια στέλνει τα 7-bit της διεύθυνσης του slave, ακολουθούμενα από ένα READ/WRITE bit. Τέλος, μόλις ο slave καταλάβει ότι απευθύνεται σε αυτόν πρέπει να απαντήσει με ένα ACK (Acknowledge) bit θέτοντας την SDA γραμμή σε λογικό επίπεδο 0. Συνολικά δηλαδή το πρώτο στάδιο περιλαμβάνει 9 bit. Στο δεύτερο στάδιο, δεδομένου ότι ο slave απάντησε με ACK, ξεκινάει η διαδικασία εγγραφής ή διαβάσματος ανάλογα με το WRITE/READ bit που προηγήθηκε. Τα δεδομένα έχουν μήκος 8 bit ενώ παράλληλα ακολουθούνται από ένα ACK/NACK bit από τον slave. Στην περίπτωση που στείλει ACK τότε λαμβάνει μέρος νέα μεταφορά δεδομένων μεταξύ master και slave δίχως επαναλαμβανόμενης διευθυνσιοδότησης, ενώ στη περίπτωση NACK σηματοδοτείται το τέλος της επικοινωνίας. Αφού ολοκληρωθεί η μεταφορά των δεδομένων ακολουθεί ένα STOP bit (SDA low to high transition) και η διαδικασία καταφθάνει στο τέλος της. Ένα χρονικό διάγραμμα απεικόνισης της παραπάνω διαδικασίας παρουσιάζεται στο σχήμα 3-6. Σχήμα 3-6: Χρονική απεικόνιση γραμμών I 2 C Το τεράστιο πλεονέκτημα αυτής της μεθόδου επικοινωνίας είναι η υποστήριξη πολλαπλών τοπολογιών με έναν ή περισσότερους masters χρησιμοποιώντας μόλις δύο γραμμές επικοινωνίας, ικανών να προσφέρουν αρκετά υψηλές ταχύτητες. 12

27 Wire Protocol Η τεχνολογία 1-Wire αναπτύχθηκε από την Dallas Semiconductor Corp. Με απώτερο σκοπό την επικοινωνία ενός master με κάποιον slave που συνήθως αποτελεί ένα αισθητήριο. Ας δούμε όμως αναλυτικότερα περί αυτής της τεχνολογίας. Ουσιαστικά, πρόκειται για ένα σειριακό πρωτόκολλο επικοινωνίας που χρησιμοποιεί μόλις μία γραμμή δεδομένων και φυσικά ground ως τάση αναφοράς. Ένας master ξεκινά και ελέγχει την επικοινωνία με έναν ή περισσότερους slaves μέσω της μοναδικής αυτής γραμμής δεδομένων. Βέβαια, όπως και στην περίπτωση του I 2 C ο master πρέπει να προσδιορίσει την διεύθυνση του slave με τον οποίο θέλει να επικοινωνήσει. Η διεύθυνση αυτή είναι ένα 64-bit ID (identification number), μοναδικό και αμετάβλητο, προγραμματισμένο από το εργοστάσιο κατασκευής του slave. Τα τελευταία 8-bit προσδιορίζουν τον κωδικό της οικογένειας του εκάστοτε slave ενώ τα 8 πιο σημαντικά προσδιορίζουν το CRC (cyclic redundancy check) που υπολογίζεται από τα υπόλοιπα 56 bit. Τέλος, τα 48 ενδιάμεσα bit προσδιορίζουν τον σειριακό αριθμό της συσκευής (serial number). Η ιδιαιτερότητα αυτής της τεχνολογίας έγκειται στο γεγονός της χρήσης μόλις δύο γραμμών οι οποίες όμως σε αντίθεση με τα υπόλοιπα σειριακά πρωτόκολλα επιτρέπουν την μεγάλη απόσταση μεταξύ master και slave και μάλιστα σε δυσμενείς συνθήκες. Βέβαια, είναι λογικό πως ο ρυθμός μετάδοσης δεδομένων είναι αρκετά χαμηλότερος. Ως αποτέλεσμα, τυγχάνει να εφαρμόζεται σε πολλές συσκευές που απαιτούν κάποιον ηλεκτρονικό τρόπο επικοινωνίας αυξάνοντας σε μικρό βαθμό το κόστος και την πολυπλοκότητα της τελικής συσκευής. Στο σχήμα 3-7 παρουσιάζεται μία ενδεικτική συνδεσμολογία ενός master με έναν ή περισσότερους slaves. Σχήμα 3-7: Επικοινωνία master και slave μέσω της τεχνολογίας 1-Wire Ένα ερώτημα που παραμένει είναι ο τρόπος τροφοδοσίας της slave συσκευής εφόσον δεν υφίσταται τάση τροφοδοσίας. Η απάντηση είναι πως η κάθε συσκευή συνδεδεμένη στο 13

28 bus είναι σε θέση να αντλήσει την ενέργεια της από το ίδιο το bus (parasitic supply). Συγκεκριμένα, έχουν έναν πυκνωτή της τάξης των 800pF που επιτρέπει την αποθήκευση ενέργειας σε περιόδους που το bus είναι σε θετικό επίπεδο τάσης, όπως φαίνεται και στο προηγούμενο διάγραμμα. Τέλος, να επισημάνουμε πως η συγκεκριμένη τεχνολογία λειτουργεί υπό τάσεις 2.5 έως 5.5 Volt και πάντοτε πρέπει να συνδέεται μία pull up αντίσταση μεταξύ του bus και της τάσης τροφοδοσίας. Αφού λοιπόν είδαμε σε γενικές γραμμές τον τρόπο σύνδεσης των συσκευών, ας προχωρήσουμε στην αναλυτικότερη περιγραφή του πρωτοκόλλου επικοινωνίας. Αρχικά, ο master ξεκινά την επικοινωνία δίνοντας έναν reset παλμό θέτοντας το bus σε λογικό 0 για τουλάχιστον 480μs. Αυτό έχει ως αποτέλεσμα να προκαλεί reset σε κάθε συσκευή συνδεδεμένη στο bus και έπειτα να περιμένει την ανταπόκρισή τους με έναν παλμό παρουσίας για περίπου 240μs, αφού όμως έχει ελευθερώσει νωρίτερα το bus ο master. Για την αποστολή του λογικού 1 ο master στέλνει έναν σύντομο παλμό μικρής διάρκειας (1 με 15 μs), ενώ για την αποστολή του λογικού 0 ο master στέλνει έναν παλμό διάρκειας 60μs θέτοντας πάντοτε την γραμμή επικοινωνίας σε λογικό επίπεδο 0. Με το falling edge του παλμού ενεργοποιείται ένας μονοσταθής πολυδονητής στην slave συσκευή, ο οποίος είναι υπεύθυνος για την ανάγνωση του σήματος από τον master. Το ζήτημα είναι, πως λόγω κάποιας αστάθειας του πολυδονητή η ανάγνωση μπορεί να γίνει μετά από τουλάχιστον 30μs και για αυτό είναι σημαντικό να διατηρήσουμε τα χρονικά μεγέθη που απαιτούνται από το πρωτόκολλο. Σχήμα 3-8: Αποστολή reset παλμού και ανταπόκριση από τουλάχιστον έναν slave. Σε περίπτωση που δεν υπήρχε slave στο διάστημα 240μs το bus θα παρέμενε σε λογικό '1' Σχήμα 3-9: Χρονική αναπαράσταση του bus κατά την μετάδοση bits 14

29 Πλέον έχοντας αναλύσει τον τρόπο αποστολής των bits στη γραμμή δεδομένων ας μελετήσουμε και τις επιμέρους λειτουργίες που είναι δυνατόν να επιτελεστούν μέσω της χρήσης του πρωτοκόλλου. Η χρονική ακολουθία είναι η παρακάτω: Σχήμα 3-10: Τυπική αναπαράσταση διαγράμματος ροής επικοινωνίας στην τεχνολογία 1-Wire Αποστολή του reset παλμού Αν ο master πρέπει να βρει ποιες συσκευές είναι συνδεδεμένες στο bus τότε οφείλει να πραγματοποιήσει σχετική αναζήτηση με απώτερο σκοπό την εύρεση των ROM τους. Πριν το ξεκίνημα μιας διαδικασίας σε κάποια συσκευή, αυτή η συσκευή θα πρέπει να επιλεγεί και να ρυθμιστεί με βάση κάποιες ROM εντολές. Οι κυριότερες εξ αυτών είναι οι παρακάτω: Read ROM [0x33]: Αυτή η εντολή χρησιμοποιείται για την ανάγνωση του αριθμού της ROM μόνον όταν βρίσκεται μία συσκευή στο bus. Match ROM [0x55]: Αυτή η εντολή ακολουθείται από έναν 64-bit ROM αριθμό για την επιλογή του επιθυμητού slave. Search ROM [0xF0]: Αυτή η εντολή ζητάει τον αριθμό ROM όλων των συνδεδεμένων συσκευών. Skip ROM [0xCC]: Με αυτή την εντολή ο master απευθύνεται σε όλες τις συσκευές δίχως να ζητάει τον αριθμό της ROM τους. Συνήθως χρησιμοποιείται για την αποστολή μίας κοινής εντολής προς όλες τις συσκευές. Αφού επιλεγούν οι επιθυμητές ROM ο master στέλνει την επιθυμητή εντολή. Με το πέρας της διαδικασίας ο master στέλνει έναν reset παλμό. Η τεχνολογία 1-Wire βρίσκει ευρεία χρήση, κυρίως για την μελέτη καιρικών φαινομένων μέσω ειδικών αισθητηρίων που πρέπει να συνδεθούν σε εξωτερικό περιβάλλον σε αρκετά μεγάλη απόσταση από τον κεντρικό ελεγκτή, ο οποίος μπορεί να είναι είτε ένα υπολογιστής είτε ένας απλός μικροελεγκτής. Εν τέλει, πρέπει να επισημανθεί πως λόγω των μεγάλων αποστάσεων των συνδέσεων μεταξύ των slave συσκευών και του master, ίσως προκύψουν προβλήματα λόγω ηλεκτρομαγνητικής ακτινοβολίας ή άλλων ζητημάτων. Σε αυτές τις περιπτώσεις είναι σημαντική η χρήση κάποιων debugging εργαλείων πάνω στο data bus με απώτερο σκοπό την επίλυσή τους μέσα από την απεικόνιση των σημάτων που αποστέλλονται δια αυτού. Ένα τυπικό εργαλείο σε τέτοιες περιπτώσεις αποτελεί ένας logic analyzer. 15

30 3.3 Θύρες εισόδου/εξόδου Σε αυτό το μέρος θα γίνει εισαγωγή στις πόρτες εισόδου και εξόδου των μικροελεγκτών, στις τάσεις που αναγνωρίζουν, καθώς και στην σημασία των τάσεων που πρέπει να εφαρμόζονται σε αυτές Ψηφιακές είσοδοι Οι ψηφιακές είσοδοι και έξοδοι, όπως είναι γνωστό μπορούν να έχουν μόλις δύο καταστάσεις: 0 και 1 (OFF και ON αντίστοιχα). Πιο συγκεκριμένα, για να θεωρηθεί ένα pin του μικροελεγκτή σε κατάσταση on πρέπει η τάση σε αυτό να βρίσκεται κοντά στην τάση τροφοδοσίας του. Αντίστοιχα, για να θεωρηθεί θε κατάσταση off πρέπει να η τάση να βρίσκεται στο ίδιο επίπεδο με αυτό της τάσης αναφοράς (ground). Η πλειονότητα αυτών των συστημάτων βασίζεται στα TTL Logic Levels (Transistor- Transistor Logic). Ουσιαστικά δηλαδή, βασίζεται σε κυκλώματα υλοποιημένα με διπολικά transistors με απώτερο σκοπό την εναλλαγή τάσεων μεταξύ On και Off states, καθώς και την διατήρησή τους. Παρόλα αυτά, πρέπει να επισημάνουμε μερικές κρίσιμες λεπτομέρειες για την ορθή λειτουργία αυτών των συστημάτων. Ας θέσουμε το εξής ερώτημα, τι γίνεται στην περίπτωση όπου ένα pin του μικροελεγκτή δε βρίσκεται ούτε στην τάση τροφοδοσίας ούτε και στην τάση αναφοράς? Σε αυτή την περίπτωση, το pin του μικροελεγκτή βρίσκεται σε floating voltage που πρακτικά είναι ακαθόριστο και μπορεί να επηρεάσει τη λειτουργία του συστήματος τόσο σε λογικό επίπεδο όσο και σε ενεργειακό, αφού σε τέτοιες καταστάσεις αυξάνεται η κατανάλωση ισχύος λόγω των ρευμάτων διαρροής (leakage currents). Ας δούμε ένα παράδειγμα με σχετικές TTL τάσεις στο σχήμα 3-11 Σχήμα 3-11: Παράδειγμα TTL τάσεων και της λογικής τους κατάστασης 16

31 VOH Ελάχιστη τάση εξόδου ώστε μία TTL συσκευή να δώσει Οn σήμα VIH Ελάχιστη τάση εισόδου ώστε να θεωρηθεί ως On σήμα VOL Μέγιστη τάση εξόδου ώστε να θεωρηθεί ως Off σήμα VIL Μέγιστη τάση εισόδου ώστε να θεωρηθεί ως Off σήμα Για την αποφυγή σημάτων στην απροσδιόριστη ζώνη τάσεων είναι σημαντική η τοποθέτηση pull ups ή pull down αντιστάσεων (εξαρτάται από την εκάστοτε εφαρμογή). Για παράδειγμα αν στο παρακάτω σχέδιο δεν υπήρχε η pulldown αντίσταση τότε όταν ο διακόπτης είναι ανοιχτός η τάση που βλέπει το pin του μικροελεγκτή είναι απροσδιόριστη, με αποτέλεσμα να μη γνωρίζουμε αν το θεωρεί ως κατάσταση On ή Off. Σχήμα 3-12: Χρήση pull-down αντίστασης για την αντιμετώπιση floating voltages Τέλος, ένα ακόμη κρίσιμο σημείο που πρέπει να προσέχει κάθε μηχανικός είναι η εφαρμογή τάσεων ανεκτών από τον κάθε μικροελεγκτή. Αναλυτικότερα, κάθε pin του μικροελεγκτή είναι συνδεδεμένο με κάποιες διόδους προστασίας σε περίπτωση εφαρμογής υπερτάσεων που συνήθως παρέχουν μία προστασία μέχρι και 0.7Volt πάνω από την τάση τροφοδοσίας του μικροελεγκτή. Σε περίπτωση όμως εφαρμογής μεγαλύτερης από αυτήν, η δίοδος θα ξεκινήσει να άγει και είναι πιθανόν να δημιουργηθούν άλλα προβλήματα. Σχήμα 3-13: Χρήση προστατευτικών διόδων σε κάθε pin του μικροελεγκτή 17

32 3.3.2 ADC (Analog to Digital Converter) Πέραν των ψηφιακών σημάτων πολλοί μικροελεγκτές παρέχουν σε μερικές από τις εισόδους τους και την εφαρμογή αναλογικών σημάτων. Η συγκεκριμένη ιδιότητα είναι ιδιαίτερα χρήσιμη καθώς πολλά αισθητήρια δεν χρησιμοποιούν κάποιο από τα προαναφερθέντα σειριακά πρωτόκολλα επικοινωνίας, αλλά εξάγουν ένα επίπεδο τάσης που αντιστοιχεί στη τιμή του μετρούμενου μεγέθους. Το γεγονός ότι πολλοί μικροελεγκτές έχουν ενσωματωμένο πάνω τους κάποιο κύκλωμα μετατροπής αναλογικού σε ψηφιακό σήμα καθιστά την ανάπτυξη του τελικού συστήματος αρκετά πιο απλή, καθώς δεν υφίσταται η ανάγκη χρήσεως εξωτερικών ADC μετατροπέων. Βέβαια, αυτό έρχεται σε κάποιο κόστος αφού η χρήση των ενσωματωμένων μετατροπέων συνήθως είναι λιγότερο ακριβής στη μέτρηση αναλογικών τάσεων. Η λογική του κυκλώματος ενός ADC ακολουθεί κάποια βήματα για την μετατροπή ενός αναλογικού σήματος σε ψηφιακό. Αρχικά, μέσω κατάλληλης δειγματοληψίας με ρυθμό τουλάχιστον διπλάσιο της συχνότητας του σήματος σύμφωνα με το θεώρημα του Nyquist, και μέσω ενός κυκλώματος sample and hold αποθηκεύει το επίπεδο τάσεως του σήματος για ένα μικρό χρονικό διάστημα και το τροφοδοτεί στο κύκλωμα μετατροπής του σε ψηφιακό. Ένας ευρέως χρησιμοποιούμενος τρόπος μετατροπής αναλογικού σε ψηφιακό σήμα είναι μέσω του successive approximation (SAR) που πραγματοποιεί δυαδική αναζήτηση σε όλα τα επίπεδα τάσης μέχρις ότου βρει το πιο κοντινό που είναι αποθηκευμένο στον sample and holder (S/H). Με την εύρεση του επιπέδου τάσης σηματοδοτείται το σύστημα μέσω του σήματος EOC (end of conversion). Σχήμα 3-14: Απεικόνιση κυκλώματος μετατροπής αναλογικού σε ψηφιακό σήμα μέσω της μεθόδου των διαδοχικών προσεγγίσεων Πρέπει να τονιστεί πως ο παραπάνω τρόπος μετατροπής αναλογικού σήματος σε ψηφιακό δεν είναι ο μοναδικός, αλλά είναι ο τρόπος με τον οποίο μεγάλο ποσοστό μικροελεγκτών υλοποιούν το κύκλωμα ADC που περιλαμβάνουν. 18

33 3.4 Μικροελεγκτές Συνολικά, εντός του συστήματος παρευρίσκονται τρεις μικροελεγκτές εκ των οποίων, τους δύο μπορούμε να προγραμματίσουμε με το πρόγραμμα που επιθυμούμε, ενώ τον τρίτο μπορούμε να ελέγξουμε μέσω ενός ειδικού ρεπερτορίου εντολών. Παρακάτω θα αναλύσουμε τον κάθε ένα ξεχωριστά ATmega328PB Προτού αναφερθούμε στα χαρακτηριστικά του μικροελεγκτή, ας δούμε ποιες προϋποθέσεις πρέπει να πληροί αυτός που θα επιλέξουμε και ας δούμε τι ακριβώς είναι αυτές. Παρακάτω παρουσιάζονται τα επιθυμητά χαρακτηριστικά του μικροελεγκτή. Μνήμη προγράμματος (Flash memory) 32KB SRAM τουλάχιστον 2KB 2 ή και περισσότερες UART σειριακές πόρτες Τουλάχιστον 3 A/D κανάλια για την υποστήριξη αισθητηρίων 1 I 2 C Watchdog timer Brown-out detection Τάση λειτουργίας 3.3V Τουλάχιστον 2 timers Τουλάχιστον 15 GPIOs Ευκολία ανάπτυξης κώδικα και προγραμματισμού μέσω ενός ολοκληρωμένου περιβάλλοντος Εν συντομία θα περιγράψουμε μερικά εξ αυτών τα οποία δεν έχουν αναφερθεί μέχρις αυτού του σημείου του εγγράφου Μνήμη προγράμματος Πρόκειται για το χώρο του μικροελεγκτή όπου αποθηκεύονται οι εντολές του προγράμματος. Αυτή η μνήμη μπορεί να παραμείνει άθικτη για μεγάλο χρονικό διάστημα με ή χωρίς τροφοδοσία. Μέσω ειδικών programmers είναι δυνατόν να επαναπρογραμματιστεί ή να σβηστούν οι εντολές του προγράμματος SRAM (Static random-access memory) Η αντίστοιχη μνήμη της RAM στους υπολογιστές μας. Διατηρεί τα δεδομένα της όσο υπάρχει τροφοδοσία στον μικροελεγκτή. Χρησιμοποιείται κυρίως για την εξυπηρέτηση αναγκών αποθήκευσης δεδομένων, μεταβλητών και της στοίβας κατά την εκτέλεση του προγράμματος. 19

34 Watchdog Timer Πρόκειται για έναν μετρητή ο οποίος κατά την εκτέλεση του προγράμματος συνεχώς μειώνεται. Αν φτάσει στο 0 τότε προκαλεί reset στον μικροελεγκτή, οπότε είναι ευθύνη του προγραμματιστή να τον επαναφέρει στην αρχική του τιμή προτού αυτός «λήξει». Χρησιμοποιείται σχεδόν σε κάθε επαγγελματικό πρόγραμμα για την αποφυγή μη προβλέψιμης ροής του προγράμματος έτσι ώστε να επαναφέρει τον επεξεργαστή στην αρχική του κατάσταση Brown-out detection Σε περίπτωση που εφαρμοστεί τάση μικρότερη από ένα κατώφλι τότε ο μικροελεγκτής απενεργοποιείται μέχρις ότου την επαναφορά της επιθυμητής τάσης λειτουργίας Timers/Counters Αποτελούν από τα σημαντικότερα περιφερειακά εντός κάθε μικροελεγκτή. Μπορούν να εφαρμοστούν σε πληθώρα εφαρμογών όπου συνήθως απαιτείται κάποιου είδους χρονικής σηματοδότησης έναρξης ή απενεργοποίησης μιας διεργασίας. Με βάση τα παραπάνω στοιχεία αποφασίστηκε να γίνει η ανάπτυξη του συστήματος με τον μικροελεγκτή της Atmel ATmega328PB. Ο συγκεκριμένος μικροελεγκτής αποτελεί μία εξέλιξη του προηγούμενου μοντέλου, ATmega328P ο οποίος είναι γνωστός από την αναπτυξιακή πλατφόρμα του Arduino. Σχήμα 3-15: α) Ο μικροελεγκτής ATmega328PB σε TQFP package. β) Οι λειτουργίες του κάθε GPIO Τα βασικότερα στοιχεία και περιφερειακά που περιλαμβάνει αυτός ο μικροελεγκτής είναι τα παρακάτω: 20

35 Παράμετρος Τιμή Used IC package TQFP Μνήμη Προγράμματος 32 KB SRAM 2 KB Αριθμός pins 32 Τάση Λειτουργίας 1.8V έως 5.5V Θερμοκρασία Λειτουργίας -40 ~ 105 Analog-to-Digital Converter 8-channel 10-bit Προγραμματιζόμενες GPIOs 27 Πρωτόκολλα επικοινωνίας 2xSPI, 2xI 2 C, 2xUSART, 1-Wire Επιλογή εσωτερικού ή εξωτερικού κρυστάλλου Ειδικές Λειτουργίες Εξωτερικές και εσωτερικές πηγές διακοπών Προγραμματιζόμενος Watchdog timer Brown-out Detection Πίνακας 3-1: Κυριότερα χαρακτηριστικά ATmega328PB ESP8266 Προτού αναφερθούμε στον μικροελεγκτή που επιλέχθηκε για τη σύνδεση του σταθμού στο WiFi είναι σημαντικό να αναφέρουμε μερικά στοιχεία για το δίκτυο WiFi Πρότυπο IEEE Η οικογένεια ασύρματων προτύπων IEEE έχει γνωρίσει χαρακτηριστική αποδοχή και ανάπτυξη τα τελευταία χρόνια και είναι ευρέως γνωστή σήμερα ως WiFi. Τα πλεονεκτήματά της είναι αρκετά. Τα πιο πρόσφατα πρότυπα της οικογένειας IEEE παρέχουν αρκετά μεγάλες ταχύτητες μετάδοσης δεδομένων και λειτουργούν στο μη αδειοδοτημένο φάσμα ISM (Industrial Scientific Medical) στη συχνότητα των 2.4GHz. Ο ρυθμός μετάδοσης δεδομένων είναι άνω των 500Mbps και σε συνδυασμό με το χαμηλό κόστος των προϊόντων που είναι συμβατά με το πρότυπο χρησιμοποιείται σχεδόν σε κάθε χώρο είτε οικιακό είτε επαγγελματικό. Παράδειγμα αποτελούν τα routers τα οποία ουσιαστικά είναι access points πάνω στα οποία συνδέονται διάφοροι clients, όπως οι υπολογιστές και τα κινητά τηλέφωνα ESP8266 Πρόκειται για ένα σχετικά νέο WiFi chip το οποίο εμπεριέχει όλες τις λειτουργίες TCP/IP καθώς και έναν μικροελεγκτή. Συγκεκριμένα, είναι ικανό να λειτουργήσει είτε ως access point όπου μπορεί κάποιος client να συνδεθεί σε αυτό, είτε ως station όπου το ίδιο 21

36 συνδέεται ως client σε κάποιο access point. Με την αγορά ενός τέτοιου chip είμαστε σε θέση να παρέχουμε σε κάποιον εξωτερικό μικροελεγκτή πρόσβαση στο διαδίκτυο μέσω ειδικών AT commands τις οποίες αντιλαμβάνεται το ESP8266. Βέβαια, αυτό δεν είναι απαραίτητο, καθώς έχουν αναπτυχθεί εργαλεία που επιτρέπουν τον προγραμματισμό του εσωτερικού μικροελεγκτή που περιλαμβάνει αυτό το module. Σχήμα 3-16: ESP8266 module Στο σταθμό που υλοποιήθηκε δεν χρησιμοποιήθηκαν οι AT commands για τον έλεγχο του ESP8266 μέσω του ATmega328PB, αλλά προτιμήθηκε να γραφτεί κώδικας για το ESP8266 καθώς ήταν αρκετά ευκολότερο στην ανάπτυξη, αλλά παράλληλα είχαμε τη δυνατότητα αξιοποίησης περισσότερων λειτουργιών του. Γενικά, υπάρχουν πολλά εργαλεία ανάπτυξης κώδικα για το συγκεκριμένο module σε διαφορετικές γλώσσες προγραμματισμού, όπως python, C++, Wiring. Η ανάπτυξη του κώδικα για τον σταθμό έγινε στο γνωστό περιβάλλον ανάπτυξης Arduino χρησιμοποιώντας την γλώσσα Wiring, που ουσιαστικά αποτελεί μία επέκταση της C++. Σχήμα 3-17: Περιβάλλον προγραμματισμού Arduino 22

37 Τα βασικότερα χαρακτηριστικά του ESP8266 παρουσιάζονται στον πίνακα 3.2. Παράμετρος Τιμή Μνήμη προγράμματος 4 MB SRAM < 50 KB Αριθμός pins 22 Πρωτόκολλα WiFi b/g/n/e/i Συχνότητα Λειτουργίας 2.4 GHz Πρωτόκολλα Επικοινωνίας UART, SPI, I 2 C Τάση Λειτουργίας 2.5V έως 3.6V Θερμοκρασία Λειτουργίας -40 ~ 125 Προγραμματιζόμενες GPIOs 11 Μέση κατανάλωση 80mΑ Modem Sleep (~ 15mA) Sleep modes Light Sleep (~ 0.4mA) Deep Sleep (~ 20μA) Πίνακας 3-2: Κυριότερα χαρακτηριστικά ESP8266 module Η σύνδεση αυτού του modem με τον ATmega328PB έγινε μέσω μίας σειριακής θύρας (UART) χρησιμοποιώντας ρυθμό μετάδοσης 9600bps. Επίσης, επειδή χρησιμοποιήθηκε το light sleep mode σε περιόδους αδρανείας χρησιμοποιήθηκε ακόμη μία σύνδεση με σκοπό το «ξύπνημα» του WiFi modem για την επανασύνδεση στο access point και την αποστολή δεδομένων προς τον κεντρικό server. Τέλος, χρησιμοποιήθηκε και η deep sleep mode, σε περίπτωση αδυναμίας σύνδεσης του modem στο access point με απώτερο σκοπό την μέγιστη δυνατή εξοικονόμηση ενέργειας. Σχήμα 3-18: Σύνδεση μεταξύ MCU και WiFi modem SIM900 Το SIM900 είναι ένα module το οποίο παρέχει πρόσβαση στο δίκτυο κινητής τηλεφωνίας (GSM) επιτρέποντας πληθώρα λειτουργιών. Κύριο μέλημα σε αυτό το σημείο είναι να δούμε τι ακριβώς είναι το GSM δίκτυο αλλά και το GPRS. 23

38 Δίκτυο κινητής τηλεφωνίας (Global System for Mobile Communications) Για την πρόσβαση μέσω του κινητού μας στο internet ή την πραγματοποίηση κλήσεων είναι απαραίτητο να υπάρχει ένα ασύρματο δίκτυο κινητής τηλεφωνίας. Τα δίκτυα αυτά χρησιμοποιούν σταθμούς βάσης για να καλύψουν με ηλεκτρομαγνητικό σήμα τους χώρους που βρισκόμαστε. Όταν χρησιμοποιούμε το κινητό τηλέφωνο, τότε αυτό στέλνει και λαμβάνει σήματα από και προς τον σταθμό βάσης, ο οποίος στη συνέχεια επικοινωνεί ενσύρματα ή ασύρματα με κάποια κέντρα αναδιανέμοντας την πληροφορία. Ο σταθμός βάσης είναι το σύνολο των εγκαταστάσεων μιας εταιρείας κινητής τηλεφωνίας που τοποθετούνται σε μια περιοχή για την υποστήριξη του ασυρμάτου δικτύου της. Οι σταθμοί βάσης αποτελούνται από ειδικές κεραίες εκπομπής και λήψης σημάτων, καθώς και ηλεκτρονικό εξοπλισμό για την επεξεργασία αυτών. Συνήθως, είναι τοποθετημένοι σε μεταλλικούς πυλώνες ή σε οροφές ψηλών κτιρίων. Κάθε σταθμός βάσης καλύπτει μία συγκεκριμένη γεωγραφική περιοχή, η οποία χωρίζεται σε μία ή περισσότερες κυψέλες. Το επιθυμητό μέγεθος της κυψέλης καθορίζεται βάσει των ιδιαίτερων γεωγραφικών χαρακτηριστικών της περιοχής, αλλά και του επιθυμητού αριθμού κινητών τηλεφώνων εξυπηρέτησης. Γενικά, κάθε σταθμός βάσης μπορεί να εξυπηρετήσει περιορισμένο αριθμό κινητών τηλεφώνων, έτσι είναι σύνηθες εντός πόλης οι κυψέλες να είναι αρκετά μικρού μεγέθους ενώ εντός αγροτικών περιοχών αρκετά μεγαλύτερες. Στο σύστημα GSM η περιοχή συχνοτήτων που έχει εκχωρηθεί για την λειτουργία των δικτύων κινητής τηλεφωνίας υποδιαιρείται σε περισσότερες περιοχές συχνοτήτων, συγκεκριμένα κανάλια επικοινωνίας εύρους 200kHz. Στη συνέχεια κάθε κανάλι μέσω της τεχνικής πολυπλεξίας TDMA (Time Division Multiplexing) είναι σε θέση να επιτρέψει μέχρι και οχτώ συνδρομητές να το χρησιμοποιήσουν ταυτόχρονα. Κάθε σταθμός βάσης επικοινωνεί με τα κινητά τηλέφωνα που βρίσκονται στην περιοχή, συνήθως με 6 έως 12 κανάλια συχνοτήτων. Μεταξύ γειτονικών κυψελών γίνεται προσπάθεια χρήσης όσο το δυνατόν διαφορετικών καναλιών για την αποφυγή παρεμβολών μεταξύ τους. Φυσικά, η προσπάθεια δεν είναι πάντα επιτυχής λόγω του περιορισμένου αριθμού καναλιών. Από πλευράς κινητών τηλεφώνων ή οποιασδήποτε συσκευής που κάνει χρήση του δικτύου, επιλέγεται ο σταθμός με το ισχυρότερο σήμα ισχύος ενώ σε περίπτωση μεταβολής της θέσης της συσκευής γίνεται αλλαγή σταθμού δίχως να το αντιλαμβάνεται ο χρήστης. Τέλος, πρέπει να τονιστεί πως είναι σημαντικό να γνωρίζουμε την μπάντα συχνοτήτων μέσα στην οποία θέλουμε το σύστημα μας να λειτουργεί. Για παράδειγμα στην Ελλάδα η Vodafone χρησιμοποιεί την φασματική περιοχή των 900 MHz, ενώ ο OTE των 1800 MHz. Επομένως, είναι σημαντικό το module που θα επιλέξουμε να υποστηρίζει τη συχνότητα λειτουργίας του παρόχου. 24

39 GPRS (General Packet Radio Services) Το GPRS είναι μία υπηρεσία μεταφοράς δεδομένων μέσω του δικτύου κινητής τηλεφωνίας. Παλαιότερα, η τεχνολογία GSM2 (2G Second Generation) είχε ως σκοπό την μεταφορά φωνής, ενώ με την άφιξη της τρίτης γενιάς δικτύων επιτεύχθηκε η γρήγορη ανταλλαγή δεδομένων και πλέον νέες τεχνολογίες όπως το LTE έχουν αυξήσει θεαματικά τον ρυθμό μετάδοσης. Αναλυτικότερα, το GPRS ως υπηρεσία είναι σε θέση να υποστηρίξει ρυθμούς δεδομένων της τάξης των 56 έως 114 kbps καθώς και συνεχή σύνδεση στο διαδίκτυο. Οι συσκευές που χρησιμοποιούν τις υπηρεσίες GPRS μπορούν να διαχωριστούν σε κάποιες υποκατηγορίες με βάση τη δυνατότητα σύνδεσης τους στο GSM και το GPRS. Οι κατηγορίες αυτές είναι οι εξής: Class A: Σε αυτή τη κατηγορία ανήκουν οι συσκευές που μπορούν να συνδεθούν ταυτόχρονα στις υπηρεσίες GSM και GPRS. Class B: Σε αυτή τη κατηγορία ανήκουν συσκευές που μπορούν να συνδεθούν τόσο στις υπηρεσίες GSM και GPRS, αλλά έχουν τη δυνατότητα χρήσης μόνον μίας υπηρεσίας κάθε φορά. Class C: Σε αυτή τη κατηγορία ανήκουν οι συσκευές που μπορούν να συνδεθούν τόσο στις υπηρεσίες GSM και GPRS, αλλά ο ίδιος ο χρήστης επιλέγει κάθε φορά την υπηρεσία στην οποία θα συνδεθεί. Η κατηγοριοποίηση των συσκευών που χρησιμοποιούν GPRS μπορεί να γίνει και με βάση την ταχύτητα του ρυθμού μετάδοσης που επιτυγχάνουν. Όπως προαναφέρθηκε στο GSM δίκτυο υπάρχουν οχτώ slots που χρησιμοποιούνται για να παρέχουν την πολυπλεξία στο χρόνο (TDMA), επιτρέποντας πολλαπλές συσκευές να συνδέονται σε ένα μόλις κανάλι συχνοτήτων. Το GPRS για να πετύχει υψηλό ρυθμό μετάδοσης χρησιμοποιεί άνω του ενός slot που κανονικά αναλογεί στην συσκευή. Επιπλέον, χρησιμοποιούνται διαφορετικά slots για uplink και για downlink λειτουργίες. Για παράδειγμα ένα σύστημα που αναγράφει multi-slot class 8 χρησιμοποιεί 4 slots για downlink και 1 για uplink.. Multislot Classes for GPRS Multislot Class Downlink Uplink Πίνακας 3-3: Πρώτες δέκα κλάσεις GPRS με βάση τον αριθμό των slots που καταλαμβάνει 25

40 SIM900 Έχοντας κατανοήσει εν ολίγοις τα συστήματα GSM και GPRS καθώς και την στενή σχέση ανάμεσά τους, ας μελετήσουμε το module που χρησιμοποιήθηκε για την κατασκευή του σταθμού και την παροχή υπηρεσιών πρόσβασης στο διαδίκτυο μέσω του δικτύου κινητής τηλεφωνίας. Το module αυτό χρησιμοποιεί ως μικροελεγκτή τον SIM900 τον οποίο συνδέει κατάλληλα με ειδικά παθητικά στοιχεία δημιουργώντας ένα σύστημα έτοιμο προς χρήση. Το συγκεκριμένο module χρησιμοποιεί ένα ρεπερτόριο AT εντολών για τις οποιεσδήποτε λειτουργίες που είναι ικανό να εκτελέσει. Σχήμα 3-19: Ο μικροελεγκτής SIM900 της SIMCom Σχήμα 3-20: Το SIM900 module Για την σύνδεση αυτού του modem στο δίκτυο κινητής τηλεφωνίας, στην GPRS υπηρεσία καθώς και την σύνδεση στον server μέσω του TCP πρωτοκόλλου και την αποστολή ή λήψη δεδομένων απαιτούνται ειδικές AT εντολές με μία κατάλληλη σειρά αποστολής από πλευράς του κεντρικού μικροελεγκτή (ATmega328PB). Παρακάτω παραθέτουμε όλες τις AT εντολές που χρησιμοποιήθηκαν για τις παραπάνω διεργασίες. Οι εντολές παρουσιάζονται με βάση τη χρονική ακολουθία που πρέπει κανείς να ακολουθήσει με σκοπό την ορθή λειτουργία του modem. 26

41 ATE0 AT+IPR=2400 AT+CPIN=6334 AT+CREG? AT+CGATT=1 AT+CIPSHUT ΑΤ+CIPMUX=1 AT+CSTT= internet.vodafone.gr,, AT+CSTT= internet,, AT+CIICR AT+CIFSR AT+CSQ AT+CIPSTART=x, TCP, host, port AT+CIPSEND=x AT commands for SIM900 Απενεργοποίηση αναμετάδοσης εντολών Ρύθμιση του Baud Rate στα 2400bps Ρύθμιση του PIN της SIM κάρτας Έλεγχος της σύνδεσης στο δίκτυο Σύνδεση στο Packet Domain Service Κλείσιμο όλων των ενεργών συνδέσεων Δυνατότητα πολλαπλών συνδέσεων Σύνδεση σε κάποιο APN (εξαρτάται από την SIM κάρτα). Η πρώτη εντολή αντιστοιχεί στη Vodafone ενώ η δεύτερη στην Cosmote. Ξεκίνημα σύνδεσης Έλεγχος της IP διεύθυνσης που δόθηκε από τον ISP (Internet Service Provider) Έλεγχος ποιότητας σήματος Σύνδεση μέσω TCP με τον host μέσω της πόρτας port. x: Ο αριθμός της σύνδεσης ( 7) Αμέσως μετά από αυτή την εντολή εισάγουμε το μήνυμα που θέλουμε να στείλουμε στην σύνδεση x ακολουθούμενη από το CTRL+Z AT+CIPCLOSE=x Κλείσιμο της σύνδεσης x. Πίνακας 3-4: Οι AT εντολές που χρησιμοποιήθηκαν και η χρονική τους ακολουθία. Τα βασικότερα χαρακτηριστικά του modem παρουσιάζονται στον επόμενο πίνακα. Παράμετρος Τιμή Band 850/900/1800/1900MHz Multi-Slot Class 10 Mobile Station Class B Επικοινωνία UART (default: bps at 3.3V/5V) Τάση Λειτουργίας 4.5V έως 5.5V Θερμοκρασία Λειτουργίας -40 έως 85 Μέγιστο Ρεύμα Τροφοδοσίας 2Α Ρεύμα σε Idle κατάσταση 30mA RoHS Ναι Πίνακας 3-5: Κυριότερα χαρακτηριστικά του SIM900 module 27

42 3.5 Αισθητήρες Σε αυτό το μέρος θα παραθέσουμε τις απαραίτητες πληροφορίες για τους αισθητήρες που χρησιμοποιήθηκαν. Παράλληλα, θα γίνει μελέτη του τρόπου επικοινωνίας τους με την κεντρική μονάδα επεξεργασίας DHT22 Ο αισθητήρας DHT22 μπορεί να μετρήσει τόσο την υγρασία όσο και τη θερμοκρασία του περιβάλλοντος, όμως λόγω χρήσης πιο αξιόπιστου αισθητήρα για τη μέτρηση της θερμοκρασίας, χρησιμοποιήθηκε μόνον για την μέτρηση της σχετικής υγρασίας. Σχήμα 3-21: Ο αισθητήρας DHT22 Ο αισθητήρας DHT22 παρέχει αρκετά πλεονεκτήματα όπως η μεγάλη απόσταση μετάδοσης δεδομένων, η σχετικά υψηλή ακρίβεια μετρήσεων για τις ανάγκες του συστήματος, η αυτόνομη εγκατάσταση του δίχως τη χρήση εξωτερικών στοιχείων, η αυτόματη βαθμονόμηση των μετρήσεων και φυσικά η εξαιρετικά χαμηλή κατανάλωση ισχύος. Τα κυριότερα τεχνικά χαρακτηριστικά του παρουσιάζονται στον επόμενο πίνακα. Παράμετρος Τιμή Τάση Τροφοδοσίας 3.3V έως 6V Έξοδος Ψηφιακό σήμα μέσω μίας ψηφιακής γραμμής Τρόπος μέτρησης μεγέθους Polymer Capacitor Εύρος μετρούμενου μεγέθους 0 έως 100% RH Ακρίβεια 2%RH Ανάλυση 0.1%RH Μακροχρόνια Σταθερότητα 0.5%RH Χρόνος μέτρησης 1 δευτερόλεπτο Πίνακας 3-6: Τεχνικά χαρακτηριστικά αισθητήρα DHT22 28

43 Pin Λειτουργία 1 Τάση τροφοδοσίας 2 Σήμα δεδομένων 3-4 Ground Πίνακας 3-7: Λειτουργία των pins του DH22 (1,2,3,4 από τα αριστερά προς τα δεξιά) Ο τρόπος επικοινωνίας, δυστυχώς, δεν στηρίζεται σε κάποιο από τα πρωτόκολλα που προαναφέρθηκαν, αλλά σε ένα ξεχωριστό που χρησιμοποιείται μόνον από αυτόν τον αισθητήρα. Τα δεδομένα καταφθάνουν με την παρακάτω μορφή: 8-bit ακέραιος για RH 8-bit δεκαδικός για RH 8-bit ακέραιος για θερμοκρασία 8-bit δεκαδικός για θερμοκρασία 8-bit check sum για έλεγχο εγκυρότητας δεδομένων Αρχικά, ο μικροελεγκτής στέλνει το START σήμα και ο αισθητήρας εισέρχεται από standby κατάσταση σε running όπου και στέλνει ένα response σήμα προς την MCU κατά τη διάρκεια του οποίου ετοιμάζει τα δεδομένα προς αποστολή. Μόλις, περάσει ο απαιτούμενος χρόνος, ο αισθητήρας στέλνει τα 40-bit δεδομένων προς την MCU και ολοκληρώνεται η επικοινωνία. Σχήμα 3-22: Πρωτόκολλο επικοινωνίας με τον DHT DS18B20 Ο αισθητήρας DS18B20 χρησιμοποιείται για τη μέτρηση της θερμοκρασίας του περιβάλλοντος και αποτελεί έναν από τους πιο διαδεδομένους αισθητήρες του είδους του. Σε αντίθεση με τον DHT22, για την επικοινωνία του με την κεντρική μονάδα επεξεργασίας χρησιμοποιεί το 1-Wire πρωτόκολλο. Σημαντικό πλεονέκτημα έναντι άλλων παρόμοιων αισθητήρων είναι η δυνατότητα χρήσης μόνο ενός καλωδίου για την μετάδοση δεδομένων καθώς και η ανθεκτικότητά του σε δυσμενή περιβάλλοντα. 29

44 Σχήμα 3-23: Ο αισθητήρας DS18B20 Τα κυριότερα χαρακτηριστικά του παρουσιάζονται στον επόμενο πίνακα: Παράμετρος Τιμή Τάση Τροφοδοσίας 3.3V έως 5.5V Εύρος μετρούμενου μεγέθους -55 έως 125 Ακρίβεια μέτρησης 0.5 από -10 έως 85 Ανάλυση Προγραμματιζόμενη 9-12bits Επικοινωνία 1-Wire Protocol Κατανάλωση σε Standby κατάσταση 1μA Κατανάλωση σε Active κατάσταση 1.5mA 93.75ms με 9-bit ανάλυση Χρόνος μετατροπής 187.5ms με 10-bit ανάλυση 375ms με 11-bit ανάλυση 750ms με 12-bit ανάλυση Πίνακας 3-8: Τεχνικά χαρακτηριστικά DS18B20 Σχήμα 3-24: Μπλοκ διάγραμμα του αισθητήρα DS18B20 Στο σχήμα 3.24 βλέπουμε τα στοιχεία που απαρτίζουν τον αισθητήρα. Στην ROM αποθηκεύεται ο 64-bit σειριακός κωδικός του αισθητήρα που είναι μοναδικός για κάθε 30

45 έναν. Στο scratchpad αποθηκεύεται το αποτέλεσμα της τιμής της θερμοκρασίας που μετρήθηκε και που θα μεταδοθεί στην κεντρική μονάδα επεξεργασίας. Επιπλέον, περιέχει μερικές θέσεις μνήμης ακόμη για επιπλέον λειτουργίες του αισθητήρα, τις οποίες όμως δεν θα αναλύσουμε καθώς δεν χρησιμοποιήθηκαν στο σταθμό που σχεδιάσθηκε. Επίσης, απεικονίζεται η δυνατότητα τροφοδοσίας του αισθητήρα μέσω παρασιτικής ή εξωτερικής τροφοδοσίας. Σε αυτό το σημείο να τονίσουμε πως για το σύστημα που αναπτύχθηκε χρησιμοποιήθηκε εξωτερική τροφοδοσία. Επιπροσθέτως, είχαμε αναφέρει πως για την επικοινωνία με αισθητήρες που κάνουν χρήση του 1-Wire πρωτοκόλλου πρέπει να γίνουν συγκεκριμένα βήματα τα οποία δε θα επαναλάβουμε. Κάθε αισθητήρας όμως υποστηρίζει και κάποιες λειτουργίες που διαφέρουν από αισθητήρα σε αισθητήρα. Για παράδειγμα, η κεντρική μονάδα πρέπει να στείλει την εντολή Convert T [44h] ώστε να ξεκινήσει η μετατροπή θερμοκρασίας και η αποθήκευσή της στην scratchpad μνήμη. Στη συνέχεια πρέπει να αποσταλεί η εντολή Read Scratchpad [BEh] ώστε να διαβάσει τα δεδομένα θερμοκρασίας. Τέλος, παρουσιάζεται ένα διάγραμμα που απεικονίζει τα βήματα που πρέπει να γίνουν για την εξαγωγή της θερμοκρασίας αν υπάρχει μόνον ένας αισθητήρας στο δίκτυο. Πίνακας 3-9: Χρονική ακολουθία εντολών για την μέτρηση λήψη της θερμοκρασίας 31

46 3.5.3 BMP180 Ο αισθητήρας BMP180 χρησιμοποιήθηκε για την μέτρηση της ατμοσφαιρικής πίεσης και της θερμοκρασίας εντός του σταθμού. Πρόκειται για κατασκευή της Bosch Sensortech και αποτελεί έναν αρκετά διαδεδομένο αισθητήρα. Ο αισθητήρας απαιτεί την χρήση κάποιων εξωτερικών παθητικών στοιχείων και έτσι αποφασίστηκε να χρησιμοποιηθεί το ειδικό module. Σχήμα 3-25: Ο αισθητήρας BMP180 Τα κυριότερα χαρακτηριστικά του παρουσιάζονται στον παρακάτω πίνακα. Παράμετρος Τιμή Τάση Τροφοδοσίας 1.8V έως 3.6V Θερμοκρασία Λειτουργίας -40 έως 85 Ακρίβεια μέτρησης θερμοκρασίας 1 από 0 έως 65 Ακρίβεια μέτρησης πίεσης 1mbar από 300mbar έως 1100mbar Ανάλυση μετρούμενης θερμοκρασίας 0.1 Ανάλυση μετρούμενης πίεσης 0.01mbar Επικοινωνία I 2 C Κατανάλωση σε Standby κατάσταση 0.1μA Κατανάλωση σε Active κατάσταση 1mA Μακροχρόνια σταθερότητα 1mbar/year Πίνακας 3-10: Τεχνικά χαρακτηριστικά αισθητήρα BMP180 Οι τιμές που αποστέλλονται προς την κεντρική μονάδα επεξεργασίας πρέπει να υποστούν κάποια επεξεργασία καθώς είναι drifted και δεν απεικονίζουν απευθείας τις μετρούμενες τιμές που επιθυμούμε. Βέβαια, το module περιλαμβάνει μνήμη EEPROM που αποθηκεύει 176-bit δεδομένων προς αντιστάθμιση του drift των τιμών των μετρήσεων. Συγκεκριμένα, το BMP180 αποτελείται από έναν πιεζοηλεκτρικό αισθητήρα, δηλαδή περιλαμβάνει μία αντίσταση που μεταβάλλεται με την μεταβολή της βαρομετρικής πίεσης, έναν A/D μετατροπέα, και ένα Control Unit για την επικοινωνία με την EEPROM και την I 2 C διεπαφή, όπως απεικονίζεται στο μπλοκ διάγραμμα

47 Τα μεγέθη των τιμών έχουν ως εξής: UP: Δεδομένα πίεσης 16-19bit UT: Δεδομένα θερμοκρασίας 16bit Σχήμα 3-26: Μπλοκ διάγραμμα BMP180 Ο τρόπος λειτουργίας ακολουθεί την εξής διαδικασία. Αρχικά, η κεντρική μονάδα επεξεργασίας αφού στείλει το START σήμα σύμφωνα με το I 2 C πρωτόκολλο και τη διεύθυνση του αισθητήρα, στη συνέχεια ζητάει τα δεδομένα που είναι αποθηκευμένα στην μνήμη EEPROM. Οι δεκαέξι μεταβλητές διαβάζονται μόλις μία φορά και αποθηκεύονται στην MCU. Στην συνέχεια, μετά από κάποιο χρονικό διάστημα αναμονής λαμβάνουμε τις τιμές των UP (uncompensated pressure) και UT (uncompensated temperature). Στη συνέχεια, εφαρμόζουμε μέσω ειδικών εξισώσεων τα δεδομένα που αποθηκεύσαμε προηγουμένως στις τιμές της πίεσης και θερμοκρασίας με σκοπό την εξαγωγή χρήσιμων και μεγάλης ακρίβειας δεδομένων. Οι εξισώσεις που πρέπει να εφαρμοστούν δίνονται από το datasheet του αισθητήρα και φαίνονται στο διάγραμμα Ακολουθώντας τα βήματα του διαγράμματος είμαστε σε θέση να υπολογίσουμε τις πραγματικές τιμές πίεσης και θερμοκρασίας. 33

48 Σχήμα 3-27: Αναλυτική απεικόνιση διαγράμματος ροής για την μέτρηση των δεδομένων θερμοκρασίας και πίεσης 34

49 3.5.4 LDR (Light Dependent Resistor) Για την μέτρηση της φωτεινότητας χρησιμοποιήθηκε μία απλή φωτοαντίσταση. Η φωτοαντίσταση είναι μια αντίσταση η τιμή της οποίας αλλάζει ανάλογα με το φως που πέφτει πάνω σε αυτή. Δυστυχώς, λόγω της μη γραμμικής ανταπόκρισής της είναι σχεδόν αδύνατο να εξάγουμε συμπεράσματα με απόλυτη ακρίβεια για τη φωτεινότητα του ήλιου. Παρόλα αυτά είναι αρκετά χρήσιμη για τον προσδιορισμό της κατάστασης του καιρού (ηλιοφάνεια, σύννεφα, νύχτα). Η φωτοαντίσταση που χρησιμοποιήθηκε φαίνεται στην παρακάτω εικόνα σε συνδυασμό με τη σχέση της τιμής της και της φωτεινότητας [Lux]. Σχήμα 3-28: Η φωτοαντίσταση που χρησιμοποιήθηκε Μία φωτοαντίσταση συνδέεται συνήθως εν σειρά με έναν ροοστάτη δημιουργώντας έναν διαιρέτη τάσης και μέσω ενός A/D μετατροπέα είμαστε σε θέση να εξάγουμε συμπεράσματα για την προσπίπτουσα ακτινοβολία πάνω στον σταθμό και άρα για την φωτεινότητα του περιβάλλοντος. Μεταβάλλοντας τον ροοστάτη μπορούμε να ρυθμίσουμε την ευαισθησία του κυκλώματος. Σχήμα 3-29: Διαιρέτης τάσης με φωτοαντίσταση 35

50 3.5.5 Αισθητήρας Βροχόπτωσης Για την αναγνώριση της κατάστασης του καιρού, πέραν της φωτεινότητας είναι απαραίτητο να χρησιμοποιηθεί και ένας αισθητήρας βροχής που ουσιαστικά εντοπίζει αν υφίσταται και πόσον δυνατή είναι. Ο αισθητήρας που χρησιμοποιήθηκε φαίνεται στο σχήμα Σχήμα 3-30: Αισθητήρας βροχόπτωσης Είναι φανερό πως σε κατάσταση όπου δεν βρέχει, ο αισθητήρας είναι ένα ανοιχτό κύκλωμα. Με την πτώση νερού πάνω στα δρομάκια του αισθητήρα σχηματίζεται μία αντίσταση της οποίας η τιμή εξαρτάται από την ποσότητα νερού που βρίσκεται πάνω του. Με αυτόν τον τρόπο και δημιουργώντας ένα κύκλωμα ίδιο με το προηγούμενο είμαστε σε θέση να αναγνωρίσουμε την κατάσταση της βροχοπτώσεως, καθώς επίσης και να μεταβάλλουμε την ευαισθησία του αισθητήρα. 3.6 Τροφοδοσία Για την αυτονομία του κυκλώματος σε περίπτωση μη δυνατής σύνδεσης με το δίκτυο διανομής θεωρήθηκε απαραίτητη η χρήση μιας μπαταρίας η οποία θα φορτίζεται από ένα ηλιακό πάνελ. Βέβαια, γίνεται σαφές πως σε περίπτωση συνεχόμενης κακοκαιρίας η φόρτιση είναι αδύνατη, οπότε σκοπός είναι η αυτόνομη λειτουργία για όσο το δυνατόν μεγαλύτερο διάστημα. Σε κάθε περίπτωση πάντως, έχει προβλεφθεί και σχεδιασθεί, κύκλωμα τροφοδοσίας και από το δίκτυο διανομής, έτσι ώστε να μην υπάρχει η απόλυτη ανάγκη χρήσης ηλιακού πάνελ. Παρακάτω θα αναλύσουμε το κύκλωμα τροφοδοσίας και τον τρόπο επιλογής της μπαταρίας και του πάνελ. 36

51 3.6.1 Μπαταρία Η μπαταρία που επιλέχθηκε είναι μπαταρία μόλυβδου στα 12V με χωρητικότητα 2300mAh κατασκευασμένη από την εταιρεία Sunlight Systems. Υπενθυμίζουμε πως το σύστημα λειτουργεί υπό τάση 12V με μέση κατανάλωση ρεύματος 50mA είτε με χρήση WiFi είτε με χρήση του GPRS παρά την διαφορά λειτουργίας μεταξύ τους. Έτσι λοιπόν, υπολογίζεται η μέση ισχύς που απαιτείται για την ορθή λειτουργία του σταθμού. Για να έχουμε αυτονομία δύο ημερών σε περίπτωση κακοκαιρίας όπου το φωτοβολταϊκό δεν θα είναι σε θέση να φορτίσει τη μπαταρία, πρέπει η συνολική αποθηκευμένη ισχύς της μπαταρίας να είναι ίση με: Η μπαταρία που επιλέξαμε έχει διαθέσιμη ισχύ σε πλήρη φόρτιση ίση με: Ένα ακόμη σημείο που είναι κρίσιμο για τον υπολογισμό του διαστήματος αυτονομίας είναι η αποδοτικότητα της μπαταρίας. Συνήθως, για τις μπαταρίες μόλυβδου μία τιμή αποδοτικότητας της τάξεως του 85% είναι αρκετά προσεγγιστική. Άρα, η πραγματική διαθέσιμη ισχύς της μπαταρίας υπολογίζεται ως: Είναι λοιπόν φανερό πως σε πλήρη φόρτιση της μπαταρίας η αυτονομία του συστήματος αντέχει για χρονικό διάστημα περίπου ίσο με: Σχήμα 3-31: Η μπαταρία μόλυβδου της Sunlight Systems 37

52 3.6.2 Φωτοβολταϊκό Πάνελ Για την επιλογή του πάνελ χρειαζόμαστε κάποια σημαντικά δεδομένα ώστε να επιλέξουμε όσο το δυνατόν το πιο κοντινό στις ανάγκες του συστήματός μας. Οι βασικοί παράγοντες από τους οποίους εξαρτάται η επιλογή παρατίθενται παρακάτω: Συνολική χωρητικότητα μπαταρίας Μέση κατανάλωση συστήματος Τόπος τοποθέτησης σταθμού Το φωτοβολταϊκό που θα επιλεγεί δε πρέπει να δίνει ισχύ πολύ μεγαλύτερη από τη χωρητικότητα της μπαταρίας καθώς αυτή δε θα είναι αξιοποιήσιμη. Παράλληλα, πρέπει να δίνει αρκετά ικανοποιητική ισχύ ώστε να διασφαλίζει την φόρτιση της μπαταρίας. Φυσικά ο κάθε τόπος έχει και διαφορετικό αριθμό ωρών ηλιοφάνειας κατά τη διάρκεια του έτους και πρέπει να συνυπολογιστεί στον υπολογισμό. Στη Θεσσαλονίκη και γενικότερα στην Ελλάδα, ο αριθμός ωρών ηλιοφάνειας για κάθε μήνα του έτους δίνεται από το παρακάτω διάγραμμα. Σχήμα 3-32: Αριθμός ωρών ηλιοφάνειας σύμφωνα με έρευνα της allmetstat Το σύστημα όπως προαναφέραμε απαιτεί 14.4Wh στη διάρκεια μίας ημέρας. Κατά τον μήνα Ιούλιο όπου έχουμε τις περισσότερες ώρες ηλιοφάνειας (περίπου 10.2), υπολογίζουμε την απαιτούμενη ισχύ του φωτοβολταϊκού για την ενεργειακή κάλυψη του σταθμού ως: Αντίθετα, κατά τους μήνες Δεκέμβριο και Ιανουάριο παρατηρούμε πως οι ώρες ηλιοφάνειας είναι ελάχιστες (περίπου 3.4), οπότε σε αυτή τη περίπτωση χρειαζόμαστε ηλιακό πάνελ με ισχύ: 38

53 Το πάνελ λοιπόν που επιλέχθηκε είναι της τάξης των 4.2Watt με τάση εξόδου σε ανοιχτό κύκλωμα 18V, πολυκρυσταλλικού τύπου και φαίνεται στην παρακάτω εικόνα. Πρέπει να τονιστεί ότι λόγω της χαμηλής απόδοσης του συγκεκριμένου πάνελ η έξοδος ισχύος είναι χαμηλότερη της αναγραφόμενης. Σχήμα 3-33: Το φωτοβολταϊκό πάνελ που χρησιμοποιήθηκε Για την φόρτιση της μπαταρίας πρέπει να σχεδιασθεί ένα ειδικό κύκλωμα τροφοδοσίας από πλευράς φωτοβολταϊκού που θα βγάζει τόσο σταθερή τάση στην έξοδο, αλλά παράλληλα θα προστατεύει την μπαταρία από υπερτάσεις. Τα φωτοβολταϊκά λόγω της συνεχόμενης μεταβολής της ηλιακής ακτινοβολίας βγάζουν διαφορετική τάση εξόδου κάθε χρονική στιγμή, άρα είναι αναγκαία η χρήση ενός σταθεροποιητή τάσης που ανεξάρτητα της τάσης εισόδου θα βγάζει σταθερή έξοδο. Επιπλέον, είναι σημαντικό σε περιόδους όπως κατά τη διάρκεια της νύχτας η μπαταρία να μην εκφορτίζεται μέσω του κυκλώματος τροφοδοσίας της και για αυτό τοποθετείται κατάλληλη δίοδος στην έξοδο. Επίσης, εισάγεται ποτενσιόμετρο με απώτερο σκοπό την χειροκίνητη επιλογή τάσης εξόδου. Τέλος, εισάγεται δίοδος Zener έτσι ώστε όταν η μπαταρία φορτιστεί έως τα 13.8V στη συνέχεια να διακοπεί η τροφοδοσία πάνω στα άκρα της. Το κύκλωμα που σχεδιάσθηκε φαίνεται παρακάτω. Σχήμα 3-34: Κύκλωμα τροφοδοσίας από το φωτοβολταϊκό 39

54 3.6.3 Δίκτυο Διανομής Για την φόρτιση της μπαταρίας μέσω του δικτύου διανομής, το μόνον που απαιτείται είναι ένας ανορθωτής γέφυρας. Το κύκλωμα είναι πολύ συνηθισμένο και παρατίθεται παρακάτω. Σχήμα 3-35: Ανορθωτής γέφυρας Σε πρακτικό επίπεδο λόγω της σταθερής τάσης εξόδου στα 19Volt, προτιμήθηκε να οδηγηθεί στον σταθεροποιητή του προηγούμενου κυκλώματος παρά απευθείας πάνω στα άκρα της ώστε να προστατευτεί από την χρόνια υπέρταση. 3.7 Σχηματικά Διαγράμματα και PCB Layout Αυτό το μέρος είναι αφιερωμένο στην διαδικασία σχεδίασης και ανάπτυξης των PCB πλακετών που υλοποιήθηκαν. Ακόμη, θα γίνει μια εισαγωγική παρουσίαση στην τεχνολογία PCB καθώς και στα βήματα σχεδίασης που απαιτούνται για την ανάπτυξη του πρωτότυπου Εισαγωγή Η πλακέτες τυπωμένου κυκλώματος -από εδώ και στο εξής αποκαλούμενες ως PCBs (Printed Circuit Boards), είναι ο πιο συνηθισμένος τρόπος κατασκευής ηλεκτρονικών κυκλωμάτων. Αποτελούμενες από ένα «sandwich» ενός ή και παραπάνω μονωμένων στρωμάτων (insulating layers) και ενός ή και παραπάνω στρωμάτων χαλκού, όπου εμπεριέχονται τα δρομάκια (traces) σημάτων, τροφοδοσίας και επιπέδων με Ground (ground planes), πολλές φορές η σχεδίασή τους είναι εξίσου πολύπλοκη και χρονοβόρα όσο και η ανάπτυξη του ηλεκτρονικού σχεδίου (schematic). Ο όρος PCB ουσιαστικά συνδέεται με την διαδικασία κατασκευής των πλακετών. Ο πιο συνηθισμένος τρόπος κατασκευής μεγάλων ποσοτήτων τέτοιων πλακετών βασίζεται στην φωτολιθογραφία (photolithography). Πιο συγκεκριμένα, οι ανεπιθύμητες περιοχές χαλκού ορίζονται μέσω στρώσεων φωτοευαίσθητης ουσίας όπου με την έκθεσή της σε υπεριώδη 40

55 ακτινοβολία είναι δυνατή η απομάκρυνσή της. Με την απομάκρυνση της φωτοευαίσθητης ουσίας ο ανεπιθύμητος χαλκός είναι δυνατόν να αφαιρεθεί μέσω ειδικών χημικών διεργασιών, συνήθως εφαρμόζοντας ένα μίγμα υπεροξειδίου του υδρογόνου (H2O2) και υδροχλωρικού οξέος (HCl). Με αυτόν τον τρόπο παραμένουν μόνον οι επιθυμητές περιοχές χαλκού που ορίζουν και το ηλεκτρονικό μας κύκλωμα. Βέβαια, υπάρχουν και εναλλακτικοί τρόποι αφαίρεσης του ανεπιθύμητου χαλκού όπως για παράδειγμα με την διαδικασία milling η οποία είναι μία καθαρά μηχανολογική διαδικασία. Σχήμα 3-36: Τομή μίας PCB πλακέτας με 4 στρώσεις χαλκού και 3 στρώσεις μονωτικού υλικού Έχοντας πλέον μια ιδέα για το τι είναι τα PCB και πως κατασκευάζονται μπορούμε να προχωρήσουμε στην παράθεση των σχεδίων που υλοποιήθηκαν για την δημιουργία του σταθμού καθώς και τα PCB που αναπτύχθηκαν τόσο στο χώρο του εργαστηρίου όσο και σε αυτά που σχεδιάσθηκαν από ειδικό εργοστάσιο κατασκευής PCB πλακετών (fabrication house) Πλακέτα Σταθμού Σε αυτό το μέρος θα παρουσιαστούν όλα τα σχηματικά και τα layouts από τα οποία απαρτίζεται η πλακέτα του σταθμού. Επίσης, θα παρουσιαστεί τόσο το πρωτότυπο PCB που κατασκευάστηκε στο εργαστήριο όσο και το τελικό που κατασκευάσθηκε από ειδική βιομηχανία κατασκευής πλακετών ATmega328PB Αρχικά θα παραθέσουμε το κύκλωμα γύρω από την κεντρική μονάδα επεξεργασίας, δηλαδή τον μικροελεγκτή ATmega328PB. Στο σχηματικό διάγραμμα που παρατίθεται φαίνεται η σύνδεση του κρυστάλλου τάξης 8MHz σε συνδυασμό με δύο πυκνωτές, η σύνδεση με τον connector ISP για τον προγραμματισμό του, ένα reset button για την επαναφορά του μικροελεγκτή καθώς και ένα Led ενδείξεως της κατάστασης σύνδεσης του σταθμού στο διαδίκτυο. Παράλληλα, απεικονίζεται ένας διαιρέτης τάσης για την 41

56 καταγραφή της τάσης της μπαταρίας μέσω ενός A/D μετατροπέα και την αποστολή της στον εξυπηρετητή. Επιπρόσθετα, τοποθετείται ένας πυκνωτής των 100nF μεταξύ του AREF και GND για την ορθή λειτουργία του ADC μετατροπέα στο εσωτερικό του μικροελεγκτή. Πολλά από τα υπόλοιπα pins που αναγράφονται θα προσδιοριστούν στα επόμενα σχηματικά καθώς πολλά αφορούν την σύνδεση με τους αισθητήρες, τρόπους επικοινωνίας καθώς και την δυνατότητα χρήσης κάποιων λειτουργιών τόσο από τον χρήστη όσο και από τον προγραμματιστή. Το διάγραμμα συνδεσμολογιών φαίνεται στο σχήμα Σχήμα 3-37: Σχηματικό διάγραμμα μικροελεγκτή ATmega328PB Σχήμα 3-38: Απεικόνιση του επεξεργαστή πάνω στο PCB 42

57 ESP8266 Η συνδεσμολογία του ESP8266 απαιτεί την χρήση κάποιων pull-up και pull-down αντιστάσεων καθώς και κάποιων buttons για την επαναφορά και τον προγραμματισμό του. Φυσικά, γίνονται και κάποιες επιπλέον συνδέσεις όπως αυτές της σειριακής θύρας για την επικοινωνία με τον ATmega328PB καθώς και ένα wake up pin όπως είχαμε αναφέρει σε προηγούμενο κεφάλαιο. Παράλληλα, απεικονίζεται ένας connector όπου εισέρχεται ένας USB to TTL μετατροπέας η χρήση του οποίου αφορά τον προγραμματιστή και όχι τον απλό χρήστη. Συγκεκριμένα, χρησιμοποιείται για debugging και προγραμματισμό του ESP8266. Για περισσότερες λεπτομέρειες μπορείτε να δείτε στο παράρτημα Γ. Τέλος, επισυνάπτεται και το DIP Switch που χρησιμοποιήθηκε για την ενεργοποίηση των modems, τον προγραμματισμό του ESP8266 καθώς και για debugging. Περισσότερες λεπτομέρειες παρατίθενται στο παράρτημα Β. Σχήμα 3-39: Σχηματικό διάγραμμα συνδεσμολογίας ESP8266 και διακοπτών 43

58 Σχήμα 3-40: Απεικόνιση του WiFi modem και των συνδεσμολογιών του σε 3D SIM900A Όπως έχει επισημανθεί το SIM900 είναι ένα module που προσφέρει υπηρεσίες πάνω στο δίκτυο κινητής τηλεφωνίας. Ως module παρέχει κάποια εξωτερικά pins προς την συνδεσμολογία του με την κεντρική μονάδα επεξεργασίας. Για αυτό το λόγο απεικονίζεται μόνον ένας connector πάνω στον οποίο συνδέονται όλα τα απαραίτητα καλώδια για την χρήση του module. Παράλληλα, παρατηρούμε την χρήση και κάποιων ακόμη στοιχείων όπως για παράδειγμα ένα PNP Mosfet transistor, συγκεκριμένα to IRF4905 που με τον έλεγχο της πύλης από ένα pin του ATmega328PB είμαστε σε θέση να το θέσουμε σε λειτουργία, υπό την προϋπόθεση ότι ο χρήστης έχει επίσης ενεργοποιήσει τον κατάλληλο διακόπτη για την τροφοδοσία του module. Το συγκεκριμένο κύκλωμα ελέγχου σχεδιάσθηκε με απώτερο σκοπό την δημιουργία αυτοματισμών όπως για παράδειγμα σε περίπτωση αδυναμίας σύνδεσης του ESP8266 στο WiFi να ενεργοποιείται αυτόματα το GPRS έτσι ώστε να δεδομένα να σταλούν στον server. Πρέπει να τονιστεί ότι το module SIM900 δουλεύει υπό τάση 5V, ενώ όλο το υπόλοιπο κύκλωμα υπό τάση 3.3V. Οπότε, είναι απαραίτητο να χρησιμοποιηθεί ένας διαιρέτης τάσης ώστε ο ATmega328PB να γνωρίζει αν ο χρήστης έχει ενεργοποιήσει το module σηκώνοντας τον κατάλληλο διακόπτη από το dip switch. Παρακάτω απεικονίζεται τόσο το σχηματικό διάγραμμα συνδεσμολογίας όσο και η χώρος τοποθέτησης του modem πάνω στο PCB. 44

59 Σχήμα 3-41: Σχηματικό διάγραμμα συνδεσμολογίας SIM900 Σχήμα 3-42: Ο χώρος τοποθέτησης του GPRS modem και ο connector όπου θα συνδεθούν τα απαραίτητα καλώδια 45

60 Αισθητήρες Οι αισθητήρες επί το πλείστον συνδέονται εξωτερικά με μοναδική εξαίρεση τον BMP180. Αυτό σημαίνει ότι πρέπει να γίνει τοποθέτηση κλεμών ώστε να συνδέονται οι αισθητήρες πάνω σε αυτές. Επίσης, τοποθετούνται και δύο ποτενσιόμετρα για την ρύθμιση της ευαισθησίας φωτεινότητας και βροχόπτωσης. Τέλος, απεικονίζονται υποδοχές για αισθητήρα ανέμου και ογκομετρητή νερού που όμως δεν χρησιμοποιούνται στον παρόν σταθμό. Σχήμα 3-43: Σχηματικό διάγραμμα αισθητήρων Σχήμα 3-44: Κλέμες υποδοχής αισθητήρων 46

61 Κύκλωμα εισόδου και εξόδου Τελευταίο κομμάτι της πλακέτας του σταθμού αποτελεί το κύκλωμα εισόδου τάσης από το τροφοδοτικό και μία έξοδος 12V την οποία μπορεί ο χρήστης να χρησιμοποιήσει για δικούς του σκοπούς μέσω απομακρυσμένου ελέγχου που ενεργοποιείται μέσω ενός τρανζίστορ και ενός ρελέ. Η πλακέτα έχει υποδοχή για την μπαταρία με 12V και με δύο σταθεροποιητές, συγκεκριμένα τους LM7805 και LM1117 εξάγει 5V και 3.3V αντίστοιχα για την τροφοδοσία των υποσυστημάτων πάνω σε αυτή. Επίσης, διατίθεται και μία δευτερεύουσα έξοδος 12V για την τροφοδοσία συστημάτων που δεν απαιτούν απομακρυσμένο έλεγχο. Σχήμα 3-45: Σχηματικό διάγραμμα εισόδου και εξόδου 47

62 Σχήμα 3-46: Απεικόνιση κυκλωμάτων εισόδου και εξόδου Τελική πλακέτα σταθμού Παρακάτω παρουσιάζονται οι πλακέτες που υλοποιήθηκαν με και χωρίς τα υλικά που τοποθετούνται. Για την σχεδίαση της πλακέτας χρησιμοποιήθηκε το Altium Designer, και η πρωτότυπη πλακέτα κατασκευάστηκε στο εργαστήριο. Στην τελευταία φάση, τα αρχεία σχεδίασης PCB στάλθηκαν σε εταιρεία κατασκευής πλακετών για καλύτερη και πιο επαγγελματική κατασκευή. Σχήμα 3-47: Το ολοκληρωμένο πρωτότυπο PCB που κατασκευάστηκε στο εργαστήριο 48

63 Σχήμα 3-48: Τελικό PCB layout σταθμού Altium Designer - Κάτω όψη Σχήμα 3-49: Τελικό PCB layout σταθμού Altium Designer- Κάτω όψη 49

64 Σχήμα 3-50: Η επαγγελματική πλακέτα από εργοστάσιο κατασκευής πλακετών Σχήμα 3-51: Η τελική πλακέτα με όλα τα εξαρτήματα τοποθετημένα 50

65 3.7.3 Πλακέτα Τροφοδοτικού Τα κυκλώματα τροφοδοσίας της μπαταρίας αναλύθηκαν σε προηγούμενο μέρος και εδώ παρατίθεται το σχηματικό του ολοκληρωμένου κυκλώματος, το PCB που σχεδιάσθηκε και η τελική πλακέτα που υλοποιήθηκε. Σχήμα 3-52: Σχηματικό διάγραμμα φόρτισης μπαταρίας μέσω φωτοβολταϊκού πάνελ και δικτύου διανομής Σχήμα 3-53: PCB layout κυκλώματος φόρτισης μπαταρίας σταθερής εξόδου 13.8V Σχήμα 3-54: Η τελική πλακέτα τροφοδοσίας του σταθμού 51

66 Κεφάλαιο 4 4. Τελική Συσκευή Μέχρις αυτό το σημείο έχουμε περιγράψει τα κύρια συστήματα που απαρτίζουν την πλακέτα του σταθμού και την πλακέτα φόρτισης της μπαταρίας καθώς και τον τρόπο λειτουργίας τους. Παρόλα αυτά ένα σημαντικό ζήτημα που παραμένει ανοιχτό είναι η φυσική τοποθέτηση του σταθμού και οι προϋποθέσεις που πρέπει να τηρεί για την ορθή λειτουργία του, ανεξαρτήτως των καιρικών συνθηκών που επικρατούν. 4.1 Φυσικές Απαιτήσεις Οι φυσικές απαιτήσεις του σταθμού μπορούν να χωριστούν σε δύο υποκατηγορίες: Φορητότητα Δυνατότητα εξωτερικής εγκατάστασης Με τον όρο φορητότητα εννοούμε την δυνατότητα εύκολης και γρήγορης εγκατάστασης του σταθμού από πλευράς του χρήστη καθώς και την ευελιξία σε περίπτωση επιθυμίας μετεγκατάστασης του σταθμού. Φυσικά, για να επιτευχθεί η φορητότητα είναι αναγκαία η ελαχιστοποίηση των διαστάσεών του. Ακόμη μία παράμετρος της φορητότητας είναι η σαφής απεικόνιση των βασικών διασυνδέσεων τροφοδοσίας και αισθητηρίων που απαιτούνται χωρίς αυτή να είναι πολύπλοκη για τον απλό χρήστη. Συμπερασματικά, όσο λιγότερες διεργασίες πρέπει να εκτελέσει ο χρήστης του σταθμού για να τον θέσει σε λειτουργία τόσο μεγαλύτερη η φορητότητά του. Η επόμενη σπουδαία παράμετρος που θα πρέπει να τηρεί ο σταθμός είναι η δυνατότητα εγκατάστασής του σε εξωτερικό περιβάλλον. Σχεδόν όλοι οι μετεωρολογικοί σταθμοί είναι ειδικά κατασκευασμένοι ώστε να λειτουργούν υπό εξαιρετικά αντίξοες συνθήκες, το οποίο σημαίνει πως ο σταθμός θα πρέπει να είναι σε θέση να αντιμετωπίσει καταστάσεις υψηλής υγρασίας, υψηλής και χαμηλής θερμοκρασίας, καθώς και έντονης υπεριώδους ακτινοβολίας. Η υγρασία αποτελεί ίσως τον πιο επικίνδυνο παράγοντα για τον σταθμό καθώς θα είναι εκτεθειμένος σε συνθήκες υπό απλή βροχόπτωση έως έντονης παγωνιάς και χιονοπτώσεως. Για την αντιμετώπιση τέτοιων ζητημάτων έχει διαμορφωθεί ένα ειδικό standard από την IEC (International Electrotechnical Commission), το IP Code (International Protection Marking). Το IP Code χαρακτηρίζει το επίπεδο προστασίας της περίφραξης μιας συσκευής. Για τον σταθμό που υλοποιήσαμε επιλέχθηκε ο βαθμός προστασίας IP56. Το πρώτο γράμμα φανερώνει τον βαθμό προστασίας της περίφραξης έναντι επαφής επικίνδυνων συνδέσεων καθώς και την εισαγωγή σκόνης ή άλλου στερεού 52

67 αντικειμένου. Το δεύτερο γράμμα απεικονίζει το βαθμό προστασίας έναντι υγρών. Το πρώτο γράμμα επιλέχθηκε ως 5 για την αποτελεσματική προστασία από σκόνη και από τυχόν επαφή συνδέσεων υψηλής τάσης με την περίφραξη. Το δεύτερο γράμμα επιλέχθηκε ως 6 το οποίο παρέχει ικανοποιητική προστασία σε αντίξοες καιρικές συνθήκες καθώς είναι ικανό να αντέξει ισχυρούς πίδακες νερού (water jets) προς κάθε κατεύθυνση. Επιλέγοντας λοιπόν ένα κουτί IP56 παρέχουμε όλη την προαναφερθείσα ασφάλεια. Ο δεύτερος επικίνδυνος παράγοντας είναι αυτός της υψηλής θερμοκρασίας. Γενικά, σε ένα εξωτερικό περιβάλλον όπου τοποθετούνται οι σταθμοί η θερμοκρασία συνήθως κυμαίνεται από -20 έως 47. Για την ορθή λειτουργία του σταθμού είναι απαραίτητη η χρήση υλικών που δουλεύουν δίχως πρόβλημα σε τέτοιες θερμοκρασίες. Τα υλικά αυτά δεν αφορούν μονάχα τους μικροελεγκτές, αλλά το κάθε στοιχείο από το οποίο απαρτίζεται ο σταθμός. Τέλος, ο τρίτος παράγοντας από τον οποίο οφείλουμε να προστατέψουμε τον σταθμό είναι αυτός της υπεριώδους ακτινοβολίας. Όμως, επειδή ως σταθμός θα τοποθετηθεί σε εξωτερικό περιβάλλον και πρέπει ορισμένοι αισθητήρες να έχουν πρόσβαση στα δεδομένα που καταμετρούν, δεν προβλέφθηκε κάποια ειδική ασφάλεια για αυτή την περίπτωση. Παρόλα αυτά ο σταθμός τέθηκε υπό την επήρεια της ηλιακής ακτινοβολίας για μεγάλο χρονικό διάστημα και διαπιστώθηκε πως μπορεί να ανταπεξέλθει σε αυτή. 4.2 Στεγανό κουτί Με βάση τις φυσικές απαιτήσεις που αναλύσαμε προηγουμένως γίνεται σαφές ότι το κουτί που θα χρησιμοποιήσουμε οφείλει να τηρεί τις παρακάτω προδιαγραφές: Αρκετός χώρος για την τοποθέτηση της πλακέτας του σταθμού, της πλακέτας τροφοδοσίας και της μπαταρίας IP56 standard Αντοχή σε θερμοκρασίες -20 έως 55 Αντοχή σε υπεριώδη ακτινοβολία Το κουτί στο οποίο καταλήξαμε τηρεί όλες τις παραπάνω προϋποθέσεις είναι αυτό που φαίνεται στην εικόνα 4-1 με τα παρακάτω τεχνικά χαρακτηριστικά. Παράμετρος Διαστάσεις Υλικό IEC Διάμετρος βιδών UV προστασία Κατασκευαστής Τιμή 240 x 190 x 90mm Technopolymer (Τεχνοπολυμερές) IP56 37mm Ναι GEWISS Πίνακας 4-1: Τεχνικά χαρακτηριστικά στεγανού κουτιού 53

68 Σχήμα 4-1: Το στεγανό κουτί που επιλέχθηκε για τον σταθμό (κωδικός GW44208) 4.3 Τελική συσκευή Η τελική συσκευή που αναπτύχθηκε απεικονίζεται στην επόμενη εικόνα. Η εγκατάσταση και η καλωδίωση που απαιτείται για την λειτουργία του σταθμού παρουσιάζεται στο παράρτημα Β. Σχήμα 4-2: Τελική κατασκευή σταθμού 54

69 4.4 Τελικό κόστος Σχήμα 4-3: Κόστος κατασκευής σταθμού 55

70 Κεφάλαιο 5 5. Αρχιτεκτονική τριών επιπέδων Σε αυτό το κεφάλαιο θα μιλήσουμε για την δομή της αρχιτεκτονικής της επικοινωνίας ολόκληρου του συστήματος με ιδιαίτερη έμφαση στην περιγραφή του εξυπηρετητή που επιλέχθηκε, το framework για την υλοποίηση των απαιτούμενων λειτουργιών, τα πρωτόκολλα επικοινωνίας καθώς και το μοντέλο της βάσης δεδομένων για την αποθήκευση των κρισιμότερων μετρήσεων και πληροφοριών. 5.1 Εισαγωγή Ένα πληροφοριακό σύστημα είναι ένα σύνολο από διασυνδεδεμένες συσκευές, εφαρμογές και πόρους. Η αρχιτεκτονική είναι ένα μοντέλο που ορίζει τη δομή, τη συμπεριφορά και τις όψεις ενός πληροφοριακού συστήματος (Jaakkola, 2010). Μερικές από αυτές τις αρχιτεκτονικές είναι οι επακόλουθες: MVC (Model View Controller) Client-Server (ή 2-Tier) Αρχιτεκτονική τριών επιπέδων (3-Tier Architecture) P2P (Peer to Peer) Κάθε αρχιτεκτονική έχει τα δικά της χαρακτηριστικά και για την επιλογή της κατάλληλης για την ανάπτυξη του συστήματος είναι αναγκαίος ο προσδιορισμός των λειτουργιών του. Για το ολοκληρωμένο σύστημα που αναπτύχθηκε χρησιμοποιήθηκε η αρχιτεκτονική τριών επιπέδων. Προτού ξεκινήσουμε την περιγραφή της αρχιτεκτονικής τριών επιπέδων είναι σημαντικό να επισημάνουμε ορισμένα χαρακτηριστικά της αρχιτεκτονικής client-server. Η αρχιτεκτονική client-server είναι ένα πρότυπο αρχιτεκτονικής λογισμικού σύμφωνα με το οποίο ένας ή περισσότεροι διακομιστές παρέχουν υπηρεσίες σε υποσυστήματα που αιτούνται εξυπηρέτηση, τα οποία με τη σειρά τους ονομάζονται clients. Ο client κάνει αίτηση στον διακομιστή, ο οποίος με τη σειρά του καλεί την κατάλληλη υπηρεσία και επιστρέφει τα δεδομένα στον πελάτη. Επιπλέον, αξίζει να επισημανθεί ότι οι αρχιτεκτονικές τύπου client-server χρησιμοποιούνται κατά κόρον σε συστήματα βάσεων δεδομένων όπου ο client είναι η εφαρμογή του χρήστη ή και κάποιο άλλο σύστημα όπως ο σταθμός, ενώ ο server είναι υπεύθυνος για την προσπέλαση και τη διαχείριση βάσεων δεδομένων. Σπουδαίο πλεονέκτημα της αρχιτεκτονικής αυτής είναι η ανεξαρτησία τόσο του client όσο και του server σε επίπεδο αλλαγών-αναβαθμίσεων από τη στιγμή που δεν επηρεάζουν το πρωτόκολλο επικοινωνίας. 56

71 Η αρχιτεκτονική τριών επιπέδων αποτελεί επέκταση της αρχιτεκτονικής client-server, αφού πλέον τα επίπεδα της αρχιτεκτονικής μπορούν να χωριστούν σε τρεις κατηγορίες. Επίπεδο πελάτη (client layer): Αποκαλείται επιπλέον επίπεδο διεπαφής αφού εδώ παρουσιάζονται τα διάφορα δεδομένα στον χρήστη ή αποστέλλονται νέα. Στην περίπτωσή μας τόσο ο σταθμός όσο και η εφαρμογή αποτελούν clients ασχέτως που επιτελούν διαφορετικές λειτουργίες. Ο σταθμός είναι υπεύθυνος για την αποστολή δεδομένων προς τον server ενώ η εφαρμογή κυρίως για λήψη. Επίπεδο λογικής (logic layer): Σε αυτό το επίπεδο εκτελούνται διεργασίες που εξαρτώνται από τις επιθυμίες του εκάστοτε συστήματος, όπως εξακρίβωση στοιχείων, επεξεργασία δεδομένων κτλ. Ουσιαστικά αποτελεί τον μεσάζων μεταξύ του επιπέδου του πελάτη και του επιπέδου δεδομένων καθώς παρέχει τις απαιτούμενες υπηρεσίες για την επικοινωνία τους. Επίπεδο δεδομένων (data layer): Τέλος, αυτό το επίπεδο είναι υπεύθυνο για την άμεση επαφή με τη βάση δεδομένων εκτελώντας τις συνήθεις λειτουργίες όπως insert, delete, update, select. Σχήμα 5-1: Απεικόνιση αρχιτεκτονικής τριών επιπέδων Στην αρχιτεκτονική του συστήματος οι συσκευές που χρησιμοποιήθηκαν επιτελούν τις εξής λειτουργίες: Σταθμός: Αποτελεί έναν client του συστήματος με κύριο σκοπό την αποστολή δεδομένων στον διακομιστή αλλά και τη λήψη των ανταποκρίσεών του. Εφαρμογή: Αποτελεί επίσης client του συστήματος με κύριο σκοπό την απεικόνιση δεδομένων που λαμβάνει από τον διακομιστή, αλλά και την αποστολή δεδομένων ή εντολών προς αυτόν. Raspberry Pi: Αποτελεί τον διακομιστή του συστήματος πάνω στον οποίο κατασκευάστηκε τόσο το επίπεδο της λογικής όσο και το επίπεδο δεδομένων (πρόσβαση και αποθήκευση) μέσω ενός εξειδικευμένου framework. 57

72 5.2 Raspberry Pi Έχοντας αναλύσει τον σταθμό εκτενέστατα είναι η ώρα να δώσουμε μία σύντομη αλλά ταυτόχρονα επεξηγηματική απεικόνιση του Raspberry Pi το οποίο χρησιμοποιήθηκε ως διακομιστής του συστήματος. Το Raspberry Pi είναι ένας πλήρης single-board μικροϋπολογιστής σε εξαιρετικά μικρό μέγεθος που μπορεί να προσφέρει μεγάλη γκάμα υπηρεσιών. Για την διπλωματική χρησιμοποιήθηκε το μοντέλο Raspberry Pi 3 Model B το οποίο απεικονίζεται παρακάτω. Το hardware του Raspberry Pi συνεχώς εξελίσσεται για τις διάφορες εκδόσεις του και διαθέτει παραλλαγές σε χωρητικότητα μνήμης και υποστήριξης περιφερειακών συσκευών. Σχήμα 5-2: Το Raspberry Pi model B Τα κύρια χαρακτηριστικά αυτού του μικροϋπολογιστή που τον θέτουν ιδανικό για την χρήση του ως server για το συγκεκριμένο project είναι τα παρακάτω: Υποστήριξη UNIX λειτουργικού συστήματος Ικανοποιητική ταχύτητα επεξεργασίας Σύνδεση μέσω WiFi και Ethernet Επεκτάσιμος αποθηκευτικός χώρος για αποθήκευση δεδομένων Υποστήριξη διαφόρων ειδών frameworks Απομακρυσμένη πρόσβαση και επαναφορά του server σε περίπτωση κάποιου προβλήματος μέσω του πρωτοκόλλου SSH (Secure Shell) Ευκολία φυσικής εγκατάστασης Χαμηλό κόστος Τέλος, τα βασικότερα τεχνικά χαρακτηριστικά του περιγράφονται στον πίνακα

73 Παράμετρος Τιμή CPU 4xArm Cortex-A53, 1.2GHz GPU Broadcom VideoCore IV RAM 1GB Networking 10/100 Ethernet, 2.4GHz n Bluetooth 4.1 Classic, Bluetooth Low Energy Storage MicroSD GPIO 40 pins HDMI 4xUSB Ports Camera Serial Interface (CSI) Ethernet Display Serial Interface (DSI) Πίνακας 5-1: Τεχνικά χαρακτηριστικά Raspberry Pi model B 5.3 REST API Τα RESTful web services είναι ένας τρόπος διαλειτουργικότητας μεταξύ υπολογιστικών συστημάτων εντός του διαδικτύου. Αυτά τα services επιτρέπουν την αίτηση και την πρόσβαση σε διάφορους διαδικτυακούς πόρους που παρουσιάζονται όμως σε κάποια καθορισμένη μορφή κειμένου, συνήθως σε JSON ή XML. Κάθε διαδικτυακός πόρος (web resource) χαρακτηρίζεται από ένα μοναδικό URI (Unique Resource Identifier). Επί το πλείστων η αίτηση (request) γίνεται χρησιμοποιώντας το HTTP πρωτόκολλο μέσω των HTTP verbs GET, POST, PUT, DELETE, UPDATE κτλ. Για τη δική μας αρχιτεκτονική δημιουργήθηκαν ειδικά URIs μέσω των οποίων είναι δυνατόν να στείλουμε δεδομένα (POST) αλλά και να κατεβάσουμε (GET). Για παράδειγμα, εάν θέλουμε την τελευταία μέτρηση του σταθμού αρκεί να χρησιμοποιήσουμε το κατάλληλο URI μέσω του web browser ή μέσω ειδικού κώδικα που ακολουθεί όμως το HTTP πρωτόκολλο. Σχήμα 5-3: Τελευταία μέτρηση του σταθμού σε JSON format 59

74 Βέβαια, μέσα από την εφαρμογή του κινητού πρέπει το request να ακολουθήσει τους κανόνες που ορίζει το HTTP. Έτσι η παραπάνω μέτρηση θα μπορούσε να ληφθεί αν το HTTP request ακολουθούσε τη παρακάτω μορφή. Σχήμα 5-4: Παράδειγμα HTTP GET request για τη λήψη δεδομένων Για την αποστολή των δεδομένων χρησιμοποιείται το ρήμα POST. Παρακάτω φαίνεται ένα τεχνητό παράδειγμα μετάδοσης δεδομένων από τον σταθμό προς τον server. Σχήμα 5-5: Παράδειγμα HTTP POST request για αποστολή δεδομένων Σε αυτό το σημείο να κάνουμε δύο παρατηρήσεις. Παρατηρούμε πως Host είναι η διεύθυνση URL που βρίσκεται ο server ενώ 5000 είναι η πόρτα η οποία χρησιμοποιείται από αυτόν. Δηλαδή, οποιαδήποτε δεδομένα διέρχονται μέσω της πόρτας 5000 οδηγούνται προς τον server, ενώ από οποιαδήποτε άλλη μπλοκάρονται από τον router του συστήματος. Αυτή η λειτουργία υλοποιείται μέσω του port forwarding που θα δούμε στο παράρτημα Β για την εγκατάσταση του server. Επίσης, από το πρωτόκολλο ΗΤΤP ορίζονται κάποιοι κωδικοί που υποδηλώνουν την επιτυχία ή αποτυχία κάποιου request. Αυτοί παρουσιάζονται στον πίνακα 5-2: Κωδικός Σημασία 200 Το request πραγματοποιήθηκε με επιτυχία 201 Τα δεδομένα δημιουργήθηκαν με επιτυχία (αφορά το POST) 3xx Ανακατεύθυνση 4xx Σφάλμα από πλευράς του client 400 Λανθασμένο request 401 Μη αδειοδοτημένη πρόσβαση 403 Απαγορευμένο 5xx Σφάλμα από πλευράς του server 500 Εσωτερικό σφάλμα server 505 Μη υποστηριζόμενη έκδοση HTTP Πίνακας 5-2: Κυριότεροι HTTP κωδικοί και η σημασία τους 60

75 Για το project υλοποιήθηκαν τα παρακάτω URIs τα οποία χρησιμοποιούνται από τον σταθμό και την εφαρμογή του χρήστη. URI /weather_station/<payload>/ /weather_station/valve/<payload>/ /weather_station/validate/<id>/ /weather_station/last_measurement/<id>/ /weather_station/<id> /last_measurements/<max_number> /interval/<interval> /weather_station/<id>/battery_voltage/ /weather_station/<id> /fromdate/<fyear>/<fmonth>/<fday> /todate/<tyear>/<tmonth>/<tday> /fromtime/<fhour>/<fmin>/<fsec> /totime/<thour>/<tmin>/<tsec> Πίνακας 5-3: Τα URIs που υποστηρίζονται από τον server Λειτουργία Μετάδοση δεδομένων από τον εκάστοτε σταθμό Μετάδοση από τον χρήστη επιθυμητής κατάστασης εξόδου απομακρυσμένου ελέγχου Έλεγχος εγκυρότητας του ID ενός σταθμού Τελευταία μέτρηση σταθμού με ID=<id> Λήψη πιο πρόσφατων μετρήσεων (η επεξεργασία του διαστήματος μεταξύ τους γίνεται στην εφαρμογή) Λήψη της τάσης της μπαταρίας του σταθμού Λήψη μετρήσεων ενός σταθμού εντός αυτών των χρονικών απαιτήσεων. 5.4 Βάση δεδομένων Η βάση δεδομένων βρίσκεται στον server και αποθηκεύει τα στοιχεία ενός σταθμού, τις μετρήσεις που καταγράφει κατά τη διάρκεια του έτους, καθώς και την κατάσταση της εξόδου απομακρυσμένου ελέγχου. Έτσι με βάση αυτά τα χαρακτηριστικά σχεδιάσθηκαν τρεις πίνακες-οντότητες. Με βάση αυτούς τους πίνακες θα υπάρχει η δυνατότητα αναζήτησης συγκεκριμένων μετρήσεων κάποιας καθορισμένης χρονικής περιόδου από τον επιθυμητό σταθμό, υπό τη βασική προϋπόθεση ότι ο χρήστης έχει στη κατοχή του έναν τέτοιο σταθμό. Γνώρισμα ID Owner Name Owner Last Name Πίνακας Σταθμών Πίνακας 5-4: Γνωρίσματα πίνακα σταθμών Λειτουργία Αναγνωριστικό σταθμού Όνομα κατόχου Επίθετο κατόχου 61

76 Πίνακας Μετρήσεων Γνώρισμα id_num ID Temperature Humidity Case_temperature Pressure Battery Weather Time Date Λειτουργία Αύξων αριθμός αναγνώρισης μέτρησης (εισάγεται αυτόματα) Αντιστοιχεί στο αναγνωριστικό του σταθμού Θερμοκρασία εξωτερικού περιβάλλοντος Υγρασία εξωτερικού περιβάλλοντος Θερμοκρασία εντός του σταθμού Ατμοσφαιρική πίεση Τάση μπαταρίας Κατάσταση καιρού Ώρα μέτρησης Ημερομηνία μέτρησης Πίνακας 5-5: Γνωρίσματα πίνακα μετρήσεων Πίνακας Απομακρυσμένου Ελέγχου Γνώρισμα Λειτουργία ID Αντιστοιχεί στο αναγνωριστικό του σταθμού Status Ανοιχτό ή κλειστό κύκλωμα Πίνακας 5-6: Γνωρίσματα πίνακα απομακρυσμένου ελέγχου Σχήμα 5-6: Διάγραμμα οντοτήτων-συσχετίσεων 62

77 Σχήμα 5-7: Σχεσιακό μοντέλο βάσης δεδομένων 5.5 Django Framework Το Django, είναι ένα υψηλού επιπέδου Python Web framework, το οποίο ενθαρρύνει το γρήγορο development και το καθαρό, πραγματιστικό design. Για τις ανάγκες της διπλωματικής θα μπορούσε να χρησιμοποιηθεί και κάποιο πιο ελαφρύ και εύχρηστο framework όπως για παράδειγμα το Flask, αλλά λόγω της ερασιτεχνικής του μορφής προτιμήθηκε η ανάπτυξη του server χρησιμοποιώντας το Django που προσφέρει επαγγελματικές λύσεις. Σχήμα 5-8: Δομή project του Django Framework 63

78 Ας δούμε λεπτομερέστερα τα δομικά στοιχεία αυτού του ισχυρού framework Models Αν και μπορούμε να χρησιμοποιήσουμε το Django χωρίς βάση δεδομένων, μας παρέχει έναν object-relational mapper (ORM), ο οποίος μας δίνει την δυνατότητα να φτιάξουμε την βάση, με κώδικα Python. Μας παρέχει ένα Python API, που υποστηρίζει C.R.U.D. λειτουργίες της βάσης δεδομένων Περιβάλλον Διαχείρισης Από την στιγμή που οριστούν τα μοντέλα, το Django αυτόματα δημιουργεί ένα επαγγελματικό και production ready διαχειριστικό interface -ένα website το οποίο επιτρέπει σε πιστοποιημένους χρήστες να προσθέσουν, αλλάξουν και να διαγράψουν αντικείμενα. Η φιλοσοφία εδώ είναι ότι το website μπορεί να διαχειριστεί από το προσωπικό ή μόνο από τον διαχειριστή και με αυτόν τον τρόπο δεν χρειάζεται να δημιουργηθούν νέα back end interfaces για απλή διαχείριση περιεχομένων Views Κάθε view (όψη) είναι υπεύθυνη για την επιστροφή κάποιου αντικειμένου, κωδικού ή κάποιας webpage, αναλόγως με το request που προηγήθηκε. Συνήθως, λαμβάνουν διάφορες παραμέτρους είτε για αποθήκευση είτε για την εύρεση στοιχείων εντός της βάσης δεδομένων URLs Το Django παρέχει μία εξαιρετική ευκολία για τη δημιουργία urls εντός του server μας τα οποία χρησιμοποιούνται για σκοπούς που περιεγράφηκαν προηγουμένως μέσω του REST API. Τέλος, υπάρχουν και τα templates τα οποία δεν χρησιμοποιήθηκαν αφού ο server παρέχει μόνον backend λειτουργίες. Παρόλα αυτά να αναφέρουμε πως τα templates καθορίζουν την εμφάνιση του website και παρέχουν έναν εύκολο τρόπο μεταβολής των στοιχείων του. 64

79 Κεφάλαιο 6 6. Ανάπτυξη εφαρμογής σε περιβάλλον Android Τελευταίο και κομβικό σημείο του project αποτέλεσε η ανάπτυξη ενός software που θα παρείχε άμεση πρόσβαση στα δεδομένα των σταθμών. Συγκεκριμένα, επιλέχθηκε να αναπτυχθεί μία εφαρμογή σε περιβάλλον Android με απώτερο σκοπό την παρουσίαση των μετρήσεων καθώς και την δυνατότητα απομακρυσμένου ελέγχου. 6.1 Λειτουργικές απαιτήσεις Η εφαρμογή οφείλει να πληροί ορισμένα σενάρια χρήσης (λειτουργικές απαιτήσεις), τα οποία παρουσιάζονται παρακάτω: Ο χρήστης πρέπει να μπορεί να εισάγει έναν ή περισσότερους σταθμούς. Ο χρήστης πρέπει να μπορεί να διαγράψει κάποιον σταθμό. Ο χρήστης πρέπει να μπορεί να δει τον σταθμό πάνω στον χάρτη. Ο χρήστης πρέπει να μπορεί να δει την τοποθεσία του πάνω στον χάρτη. Ο χρήστης πρέπει να μπορεί να δει την τελευταία μέτρηση του σταθμού πατώντας τον marker πάνω στον χάρτη. Ο χρήστης πρέπει να μπορεί να δει μία λίστα με τις τελευταίες μετρήσεις του επιλεγμένου σταθμού ορίζοντας το χρονικό μεσοδιάστημα μεταξύ αυτών καθώς και τον αριθμό αυτών των μετρήσεων. Ο χρήστης πρέπει να μπορεί να ενημερώνεται για την τάση της μπαταρίας όταν πέσει κάτω από τα 10.9V Ο χρήστης πρέπει να μπορεί να δει στατιστικά για τις τιμές των μετρήσεων του σταθμού. Ο χρήστης πρέπει να μπορεί να δει μέσω γραφικών παραστάσεων την τιμή της θερμοκρασίας, υγρασίας, πίεσης και τάσης της μπαταρίας για το χρονικό διάστημα που επιθυμεί. Ο χρήστης πρέπει να μπορεί να εξάγει τις μετρήσεις που έχουν ληφθεί για την απεικόνιση των γραφικών παραστάσεων σε ένα.txt αρχείο. Ο χρήστης πρέπει να μπορεί να ελέγξει απομακρυσμένα την θύρα εξόδου τάσεως 12V του σταθμού. Ο χρήστης πρέπει να μπορεί να ενεργοποιήσει αυτόματο κλείσιμο της θύρας εξόδου έπειτα από ένα χρονικό διάστημα που αυτός επιθυμεί. 65

80 6.2 Χρήστες και εξωτερικά συστήματα Χρήστης Ο χρήστης μπορεί να είναι οποιοσδήποτε έχει στη διάθεσή του έναν τέτοιο σταθμό και κινητό τηλέφωνο με λογισμικό Android. Όπως προαναφέρθηκε ο σταθμός που υλοποιήθηκε είχε ως στόχο την προσωπική και όχι την επαγγελματική χρήση, οπότε είναι διαθέσιμος προς όλους τους χρήστες. Μέσω της εφαρμογής του παρέχεται άμεση πρόσβαση στα δεδομένα του σταθμού ή των σταθμών του και δυνατότητα απομακρυσμένου ελέγχου κάποιου εξωτερικού συστήματος του Βάση δεδομένων Το σύστημα διαθέτει βάση δεδομένων όπως αναλύθηκε στο κεφάλαιο 5.4 με σκοπό την αποθήκευση στοιχείων των σταθμών καθώς και των μετρήσεών τους. Η βάση δεδομένων βρίσκεται στον κεντρικό server του συστήματος που αφορά όλους τους σταθμούς ανεξαρτήτως των χρηστών Υπηρεσία Χαρτών Η εφαρμογή κάνει χρήση της υπηρεσίας χαρτών της Google (google maps) για την απεικόνιση της θέσης του σταθμού ή των σταθμών του εκάστοτε χρήστη πάνω στον χάρτη καθώς και της σχετικής θέσης του σταθμού με αυτή του χρήστη Σταθμός Σαφώς, για την ορθή λειτουργία της εφαρμογής είναι απαραίτητο ο εκάστοτε χρήστης να έχει προμηθευτεί κάποιον σταθμό. Διαφορετικά θα μπορεί να δει δεδομένα μόνον ενός κεντρικού σταθμού που βρίσκεται στην περιοχή της Θεσσαλονίκης. 66

81 6.3 Διάγραμμα σεναρίων χρήσης Σε αυτή την ενότητα παρατίθεται το διάγραμμα σεναρίων χρήσης του συστήματος με σκοπό την ευκολότερη κατανόησή του από τους αναγνώστες. Σχήμα 6-1: Διάγραμμα σεναρίων χρήσης εφαρμογής 67

82 6.4 Επιδεικτικά γραφικά παράθυρα εφαρμογής Σχήμα 6-2: Απεικόνιση στον χάρτη Σχήμα 6-3: Πιο πρόσφατη μέτρηση Σχήμα 6-4: Λίστα μετρήσεων ενός σταθμού Σχήμα 6-5: Στατιστικά τρεχούσης λίστας δεδομένων 68

83 Σχήμα 6-6: Μενού επιλογών Σχήμα 6-7: Επιλογή σταθμού Σχήμα 6-8: Δημιουργία σταθμού Σχήμα 6-9: Διαγραφή σταθμού 69

84 Σχήμα 6-10: Ρυθμίσεις εφαρμογής Σχήμα 6-11: Επιλογή μεσοδιαστήματος μεταξύ μετρήσεων Σχήμα 6-12: Επιλογή χρόνου απενεργοποίησης RC Σχήμα 6-13: Επιλογή πλήθους εμφανιζόμενων μετρήσεων 70

85 Σχήμα 6-14: Απομακρυσμένος έλεγχος Σχήμα 6-15: Γραφική παράσταση θερμοκρασίας Σχήμα 6-16: Γραφική παράσταση υγρασίας Σχήμα 6-17: Στατιστικά δεδομένα εντός του ορισμένου χρονικού διαστήματος 71

86 Κεφάλαιο 7 7. Ενδεικτικές μετρήσεις Σε αυτό το κεφάλαιο θα παρουσιαστούν οι ενδεικτικές μετρήσεις που καταγράφηκαν σε ορισμένες χρονικές περιόδους. Συγκεκριμένα, θα συμπεριληφθούν γραφήματα θερμοκρασίας, υγρασίας, ατμοσφαιρικής πίεσης και της τάσης της μπαταρίας. Η εξαγωγή αυτών των μετρήσεων έγινε μέσω της εφαρμογής. Πιο συγκεκριμένα, εάν θέλουμε να εξάγουμε κάποιες μετρήσεις μπορούμε από το παράθυρο δημιουργίας γραφήματος να επιλέξουμε Settings->Export Data αφού ορίσουμε το χρονικό διάστημα που επιθυμούμε. Οι μετρήσεις έγιναν στην περιοχή της Θέρμης σε διαφορετικά χρονικά διαστήματα. Σχήμα 7-1: Γραφική παράσταση θερμοκρασίας Σχήμα 7-2: Ιστόγραμμα θερμοκρασίας Σχήμα 7-3: Γραφική παράσταση υγρασίας Σχήμα 7-4: Ιστόγραμμα υγρασίας 72

87 Σχήμα 7-5: Γραφική παράσταση ατμοσφαιρικής πίεσης Σχήμα 7-6: Ιστόγραμμα ατμοσφαιρικής πίεσης Σχήμα 7-7: Γραφική παράσταση σχέσης θερμοκρασίας-υγρασίας Σχήμα 7-8: Γραφική παράσταση τάσης μπαταρίας με φόρτιση από το δίκτυο διανομής Σχήμα 7-9: Γραφική παράσταση πτώσης τάσης μπαταρίας δίχως καμία φόρτιση με χρήση WiFi Σχήμα 7-10: Γραφική παράσταση τάσης μπαταρίας με φόρτιση από το φωτοβολταϊκό 73

88 Σε αυτό το σημείο πρέπει να κάνουμε μερικές παρατηρήσεις. Αρχικά, στο διάγραμμα 7-7 γίνεται εμφανής η σχέση μεταξύ θερμοκρασίας και υγρασίας του περιβάλλοντος όπου με την αύξηση ή μείωση της θερμοκρασίας προκαλείται αντίστοιχα μείωση ή αύξηση της υγρασίας. Στο διάγραμμα 7-9 βλέπουμε την καμπύλη εκφόρτισης της μπαταρίας με χρήση του WiFi modem το οποίο όπως έχει τονιστεί καταναλώνει μικρότερο ποσό ισχύος σε σύγκριση με αυτό του GPRS modem.τέλος, απεικονίζεται η φόρτιση της μπαταρίας μέσω του φωτοβολταϊκού πάνελ. Εδώ παρατηρούμε πως η μπαταρία δεν φορτίζεται πλήρως αλλά αντίθετα μέρα με τη μέρα η τάση της πέφτει παρά την ηλιοφάνεια εκείνης της περιόδου. Αυτό οφείλεται κυρίως στη χαμηλή ποιότητα του φωτοβολταϊκού πάνελ. Σε περίπτωση εμπορικής χρήσης του προϊόντος θα πρέπει να αντικατασταθεί με πάνελ υψηλότερης απόδοσης. 74

89 Κεφάλαιο 8 8. Συμπεράσματα 8.1 Ανάλυση κόστους Όπως είδαμε στο κεφάλαιο 4 το συνολικό κόστος του σταθμού ανέρχεται στα 80 ευρώ. Για την εμπορική εκμετάλλευση του συστήματος πρέπει να συνυπολογισθούν τα κόστη χρήσης του server, εφαρμογής, συσκευασίας σταθμού, παράδοσης και προώθησής του. Επίσης, σε περίπτωση χρήσης του GSM θα πρέπει μηνιαία να καταβάλλεται ένα μικρόν ποσόν για την ανανέωση των δεδομένων της κάρτας SIM. 8.2 Καινοτομία και σύγκριση με ανταγωνιστικά προϊόντα Αρχικά, πρέπει να τονιστεί ότι η κατασκευή που σχεδιάσθηκε σε καμία περίπτωση δεν αποτελεί κάτι το καινοτόμο και εύκολα μπορούν να βρεθούν συστήματα με παρόμοιες λειτουργίες στην αγορά των μετεωρολογικών σταθμών. Παρόλα αυτά, σε σύγκριση με τα ανταγωνιστικά προϊόντα ο σταθμός που υλοποιείται στην παρούσα εργασία χαρακτηρίζεται από τα ακόλουθα πλεονεκτήματα: Μη ανάγκη χρήσης κάποιου είδους server εντός του χώρου εγκατάστασης Δυνατότητα απομακρυσμένου ελέγχου Δυνατότητα αυτόματης εναλλαγής WiFi και GPRS Ακεραιότητα δεδομένων Μικρό μέγεθος Ειδοποίηση σε περίπτωση χαμηλής τάσης της μπαταρίας Δυνατότητα χρήσης άνω του ενός σταθμού από κάθε χρήστη Βέβαια, παρουσιάζει ορισμένα μειονεκτήματα σε σύγκριση με τους υπάρχοντες σταθμούς της αγοράς όπως αναγράφονται παρακάτω: Αυξημένη κατανάλωση ενέργειας λόγω χρήσης ασύρματων δικτύων αυξημένης κατανάλωσης Σε περίπτωση μέτρησης μεταβλητών υπό σκιά, το φωτοβολταϊκό πάνελ πρέπει να εγκατασταθεί εξωτερικά του σταθμού. Δεν χρησιμοποιείται ανεμόμετρο Δεν υπάρχει λογισμικό απεικόνισης των δεδομένων στον υπολογιστή 75

90 8.3 Μελλοντική ανάπτυξη Για την εμπορική εκμετάλλευση του συστήματος πρέπει να λάβουν μέρος μερικές περαιτέρω επεκτάσεις. Συγκεκριμένα, πρωταρχικός στόχος είναι η δυνατότητα σύνδεσης του σταθμού μέσω ενός USB καλωδίου στον υπολογιστή του χρήστη και η ρύθμιση του WiFi SSID καθώς και του password του δικτύου μέσω ειδικού λογισμικού. Αυτή τη χρονική στιγμή για την σύνδεση του σταθμού σε κάποιο WiFi δίκτυο είναι απαραίτητος ο εκ νέου προγραμματισμός του WiFi modem αλλάζοντας το SSID και τον κωδικό που είναι καταχωρημένα στον πηγαίο κώδικα. Έτσι, ο χρήστης θα μπορεί ο ίδιος να ρυθμίσει την συσκευή του δίχως να το παραγγέλνει κατάλληλα προγραμματισμένο. Επίσης, μέσω του ίδιου λογισμικού στον υπολογιστή ο χρήστης θα μπορεί να ρυθμίσει το APN και το PIN της SIM κάρτας που επιθυμεί να εισάγει. Επιπλέον, θα ήταν χρήσιμη η ανάπτυξη ενός ακόμη ειδικού λογισμικού για την παρακολούθηση των δεδομένων του σταθμού μέσω ενός browser πέραν της εφαρμογής. Επιπροσθέτως, θα ήταν σημαντική η προσθήκη ενός ανεμομέτρου το οποίο όμως πρέπει να τονίσουμε πως θα είχε επιπτώσεις στην φυσική εγκατάσταση του σταθμού. Τέλος, η σύμπτυξη των πλακετών σταθμού και τροφοδοσίας θα είχε σημαντικό αντίκτυπο στην μείωση του μεγέθους του σταθμού. 76

91 Παράρτημα Α Διαγράμματα Ροής Λειτουργίας Σταθμού Α.1 Διάγραμμα ροής διεργασιών του ATmega328PB Σχήμα Α-1: Διάγραμμα ροής διεργασιών του ATmega328PB 77

92 Α.2 Διάγραμμα ροής WiFi modem (ESP8266) Σχήμα Α-2: Διάγραμμα ροής WiFi modem (ESP8266) 78

93 A.3 Ρύθμιση του GSM/GPRS modem (SIM900) Σχήμα Α-3: Διάγραμμα ροής ρύθμισης SIM900 79

94 A.4 Σύνδεση στον server με το GSM/GPRS modem Σχήμα Α-4: Διαδικασία σύνδεσης στον server μέσω TCP στην κατάλληλη πόρτα με το SIM900. Χρειάζεται ιδιαίτερη προσοχή καθώς διαφέρει σημαντικά με το WiFi modem. 80

95 Παράρτημα Β Εγκατάσταση συστημάτων Για την εγκατάσταση του συστήματος δημιουργήθηκε ένας οδηγός που να περιγράφει λεπτομερώς τα απαραίτητα βήματα που πρέπει να ακολουθηθούν. Β.1 Εγκατάσταση server Η εγκατάσταση του server δεν αφορά τον απλό χρήστη, αλλά θεωρήθηκε απαραίτητο να παρουσιαστεί. Προτού ξεκινήσουμε, είναι απαραίτητο να υπάρχει ένα Raspberry Pi με φορτωμένο το λειτουργικό σύστημα Ubuntu MATE ή ένας απλός υπολογιστής με λειτουργικό σύστημα Ubuntu. Β.1.2 Εγκατάσταση python Όπως προαναφέρθηκε ο server έχει κατασκευασθεί με το Django framework το οποίο χρησιμοποιεί την γλώσσα Python. Συγκεκριμένα, χρησιμοποιήθηκε η Python v3. Για την εγκατάστασή της ακολουθούμε τα παρακάτω βήματα: 1. Μέσω ενός terminal ελέγχουμε αν η Python3 είναι ήδη εγκατεστημένη στο λειτουργικό σύστημα με την εντολή which python3 2. Αν δεν είναι τότε τρέχουμε την εντολή sudo apt-get install python3 3. Αναβαθμίζουμε τα εργαλεία μας μέσω της sudo apt-get update 4. Εγκαθιστούμε τα pip tools για την python3 με την εντολή sudo apt-get install python3-pip και ελέγχουμε αν εγκαταστάθηκε με επιτυχία μέσω της which pip3 Β.1.2 Εγκατάσταση virtualenv Επειδή στον υπολογιστή μας μπορεί να υπάρχουν άλλα προγράμματα που να κάνουν χρήση της python και των εργαλείων της και επειδή δεν θέλουμε να κάνουμε αλλαγές που μπορεί να επηρεάσουν την λειτουργία τους, θα εγκαταστήσουμε ένα ειδικό εικονικό περιβάλλον Python όπου θα γίνει η εγκατάσταση του server. Για την εγκατάστασή του απλά γράφουμε τις ακόλουθες εντολές: 1. pip3 install virtualenv 81

96 2. Δημιουργούμε νέο φάκελο με το εικονικό αυτό περιβάλλον και την python3 μέσω της εντολής virtualenv python=python3 mynewenv 3. Τέλος, ενεργοποιούμε το εικονικό περιβάλλον μέσω της εντολής mynewenv/bin/activate Β.1.3 Εγκατάσταση Django framework Συνεχίζοντας από τα προηγούμενα βήματα θα εγκαταστήσουμε το framework μέσω του οποίου θα υλοποιήσουμε τον server. Για την εγκατάστασή του γράφουμε τις παρακάτω εντολές: 1. pip install django== Ελέγχουμε την version ως django-admin version Β.1.4 Εγκατάσταση του project Αφού πλέον έχουμε εγκαταστήσει όλα τα απαραίτητα εργαλεία είμαστε πλέον σε θέση να δημιουργήσουμε το project εντός του οποίου μπορούμε να εισάγουμε στη συνέχεια τα αρχεία κώδικα που έχουμε δημιουργήσει. 1. Για να δημιουργήσουμε νέο project γράφουμε Django-admin startproject project_name 2. Το Django εμπεριέχει έναν μικρό webserver το οποίο χρησιμοποιείται για το development process. Για την ενεργοποίησή του μπαίνουμε αρχικά στον φάκελο του project που δημιουργήσαμε (cd project_name) και πατάμε python manage.py runserver. Για να ελέγξουμε πως δουλεύει ανοίγουμε τον browser και πηγαίνουμε στη διεύθυνση : Για τη δημιουργία ενός app (σύνολο αρχείων που περιγράφουν μία κοινή κατηγορία) γράφουμε python manage.py startapp app_name 4. Για να κάνουμε syncing τον κώδικα με τη βάση δεδομένων γράφουμε python manage.py migrate 5. Σε περίπτωση που φτιάξουμε ή μεταβάλλουμε ένα μοντέλο (database scheme) για το app τότε πρέπει να γράψουμε python manage.py makemigrations app_name καθώς επίσης και να το εισάγουμε στο αρχείο settings ως app_name.apps.app_nameconfig κάτω από τα INSTALLED_APPS. Επιπλέον, γράφουμε python manage.py sqlmigrate app_name <code> όπου <code> ο αριθμός που εμφανίστηκε με την εντολή makemigrations (000x). Τέλος, γράφουμε python manage.py migrate για τον συγχρονισμό με τη βάση δεδομένων. 6. Δημιουργούμε administrator με την εντολή python manage.py createsuperuser. 7. Για την εγκατάσταση λειτουργιών που υποστηρίζουν το REST API εγκαθιστούμε τα κατάλληλα εργαλεία μέσω της εντολής pip install djangorestframework. 82

97 B.1.5 Στατική IP για τον server Για την σωστή λειτουργία του συστήματος κρίνεται απαραίτητη η χρήση μιας στατικής IP διεύθυνσης εκ μέρους του server καθώς ο router πρέπει να γνωρίζει προς τα πού να ωθήσει τα πακέτα που εισέρχονται από τις πόρτες 5000 (δεδομένα) και 5500 (απομακρυσμένος έλεγχος). Αν δεν παραχωρήσουμε κάποια στατική IP στο επόμενο reset του router κατά πάσα πιθανότητα η διεύθυνση του server θα αλλάξει μέσω του DHCP πρωτοκόλλου και θα είναι αδύνατη η επικοινωνία τόσο μεταξύ σταθμού-server όσο και χρήστη-server. Σχήμα Β-1: α)δίνουμε την στατική διεύθυνση στην συσκευή με MAC διεύθυνση B8-27-EB-B0-C8-E7 που αντιστοιχεί στο Raspberry Pi. β) Δίνουμε την στατική διεύθυνση στην συσκευή με MAC address 5C-CF- 7F-13-EE-B7 που αντιστοιχεί στο ESP8266. Β.1.6 Port forwarding Πολύ σημαντικό κομμάτι για την λειτουργία του server είναι το port forwarding που ως σκοπό έχει την προώθηση πακέτων από και προς μία ή περισσότερες IP διευθύνσεις. Συγκεκριμένα, επιθυμούμε την προώθηση πακέτων που εισέρχονται από τις πόρτες 5000 και 5500 προς την στατική IP που παραχωρήσαμε στον server. Παρακάτω απεικονίζεται η προώθηση πακέτων που εισέρχονται από την πόρτα 5000 προς τον server. 83

98 Σχήμα Β-2: Port forwarding για την πόρτα Ομοίως για την Β.1.7 DDNS (Dynamic Domain Name System) Τελευταία ρύθμιση είναι η παραχώρηση μίας fixed WAN IP διεύθυνσης στο router του συστήματος. Γενικά, σε κάθε reset του router ο πάροχος του παραχωρεί μία νέα διεύθυνση IP. Ο σταθμός όμως, όπως και η εφαρμογή δεν μπορούν να γνωρίζουν αυτή τη νέα IP διεύθυνση με αποτέλεσμα να μη μπορούν να επικοινωνήσουν με τον server. Για αυτό το σκοπό χρησιμοποιήθηκε η υπηρεσία DDNS η οποία παρά την μεταβολή της IP διεύθυνσης έπειτα από κάποιο reset φροντίζει να μάθει τη νέα διεύθυνση και να ενημερώσει το fixed domain name που έχουμε επιλέξει για το δίκτυό μας (για παράδειγμα alatmos.dyndns.org). Η υπηρεσία που χρησιμοποιήθηκε για το σύστημα μας είναι αυτή που παρέχει η εταιρεία Dyn, Inc. Σχήμα Β-3: Ρύθμιση υπηρεσίας DDNS 84

99 Β.2 Εγκατάσταση σταθμού Σε αυτό το μέρος θα δούμε πως μπορεί να γίνει η εγκατάσταση του σταθμού, η καλωδίωσή του και υπό ποιες προϋποθέσεις. Β.2.1 Φυσική εγκατάσταση Ξεκινώντας από το μέρος εγκατάστασης του σταθμού πρέπει να τονίσουμε ότι οι μετεωρολογικοί σταθμοί μετρούν τις επιθυμητές τιμές υπό σκιά, δηλαδή χωρίς να είναι άμεσα εκτεθειμένοι στην ηλιακή ακτινοβολία. Σε περίπτωση βέβαια κάποιας αγροτικής καλλιέργειας ο ενδιαφερόμενος μπορεί να τοποθετήσει το σταθμό υπό την ηλιακή ακτινοβολία. Για τις ανάγκες της διπλωματικής και για λόγους εξοικονόμησης χώρου το φωτοβολταϊκό του σταθμού τοποθετήθηκε ακριβώς πάνω από αυτόν. Βέβαια, αν ο χρήστης επιθυμεί τιμές υπό σκιά αρκεί να τοποθετήσει το φωτοβολταϊκό σε κάποιο ξεχωριστό σημείο και να οδηγήσει τα δύο καλώδια που απαιτούνται στο μέρος όπου βρίσκεται ο σταθμός. Ένας σημαντικός παράγοντας που επηρεάζει την λειτουργία του σταθμού είναι η απόσταση του από το router του δικτύου σε περίπτωση χρήσης του WiFi modem. Πρέπει να είναι όσο το δυνατόν πιο κοντά έτσι ώστε να μη προκύψουν προβλήματα κατά τη διάρκεια προσπάθειας σύνδεσης του σταθμού στο δίκτυο WiFi. Βέβαια, το ίδιο ισχύει και για τη χρήση του GSM/GPRS modem καθώς είναι αναγκαίο να υπάρχει κοντά κάποιος σταθμός βάσης. Β.2.2 Καλωδίωση Η πλακέτα τροφοδοσίας και η απαιτούμενη καλωδίωσή της φαίνεται στο σχήμα Β.4: Σχήμα Β-4: Σύνδεση πλακέτας τροφοδοσίας Την μπαταρία συνδέουμε παράλληλα και με την πλακέτα του σταθμού όπως φαίνεται παρακάτω. Οι κλέμες που περισσεύουν μπορούν να χρησιμοποιηθούν ως εναλλακτικές 85

100 τάσεις τροφοδοσίας κάποιου μελλοντικού αισθητηρίου ή κάποιου εξωτερικού συστήματος. Σχήμα Β-5: Σύνδεση μπαταρίας με την πλακέτα του σταθμού Τέλος, φροντίζουμε να συνδέσουμε κατάλληλα το κάθε αισθητήριο στην κλέμα που προορίζεται για αυτό. Πάνω στην πλακέτα αναγράφεται το όνομα του αισθητηρίου το οποίο πρέπει να τοποθετηθεί. Να τονιστεί ότι στις κλέμες σημάτων συνδέονται τα κίτρινα καλώδια ενώ οι διπλανές παρέχουν την απαραίτητη τάση τροφοδοσίας των αισθητήρων. Σχήμα Β-6: Σύνδεση αισθητηρίων στις κλέμες σημάτων και τροφοδοσίας Αισθητήρας Κλέμα DHT22 HUM Rain Sensor RN LDR LDR DS18B20 TEMP Ανεμόμετρο (μελλοντική επέκταση) WD Πίνακας Β-1: Σύνδεση αισθητήρων στις κλέμες Τέλος, παρουσιάζεται η καλωδίωση του GPRS modem με εξωτερικά καλώδια στην ειδική υποδοχή με ονομασία «GPRS» που δημιουργήθηκε. GSM/GPRS modem Pin 5V 1 GND 2 GND 3 TX_3.3V 4 RX_3.3V 5 Πίνακας Β-2: Συνδεσμολογία GPRS modem στην ειδική υποδοχή (από τα αριστερά προς τα δεξιά) 86

101 Β.2.3 Στατική IP για τον σταθμό Σε περίπτωση μη εισαγωγής στατικής IP στον σταθμό η διάρκεια προσπάθειας σύνδεσης στο WiFi δίκτυο διαρκεί περίπου 8 δευτερόλεπτα εντός των οποίων η ενεργειακή κατανάλωση ξεπερνά τα 100mA που αντιστοιχούν σε αρκετά υψηλό ρεύμα για ένα τέτοιο σύστημα οδηγώντας την μπαταρία σε ταχεία εκφόρτιση. Αντίθετα, χρησιμοποιώντας στατική IP διεύθυνση ο χρόνος σύνδεσης που απαιτείται μειώνεται στα 2 δευτερόλεπτα προσφέροντας έτσι 4 φορές χαμηλότερη ενεργειακή κατανάλωση. Για να εισάγουμε στατική IP διεύθυνση ακολουθούμε την ίδια διαδικασία που απεικονίζεται στην εικόνα Β.1. Β.2.4 Διακόπτες Παρατηρούμε πως πάνω στη πλακέτα του σταθμού υπάρχουν 8 διακόπτες. Ο απλός χρήστης του συστήματος χρειάζεται μόλις τους δύο πρώτους καθώς οι υπόλοιποι χρησιμοποιούνται από τον μηχανικό για προγραμματισμό και debugging. Διακόπτης Λειτουργία 1 ON/OFF WiFi modem 2 ON/OFF GSM/GPRS modem 3 MCU_RX0 -> WIFI_TX 4 MCU_TX0 -> WIFI_RX 5 FTDI_RX -> WIFI_TX 6 FTDI_TX -> WIFI_RX 7 MCU_TX0 -> FTDI_RX 8 MCU_RX0 -> FTDI_TX Πίνακας Β-3: Πίνακας λειτουργίας διακοπτών πλακέτας σταθμού Για την λειτουργία του συστήματος φροντίζουμε πάντα οι διακόπτες 3,4 να είναι κλειστοί και επιλέγουμε το modem που θέλουμε να χρησιμοποιήσουμε μέσω των 1 και 2. Μπορούμε να κλείσουμε τόσο τον 1 όσο και τον 2 όταν επιθυμούμε σε περίπτωση αποτυχημένης σύνδεσης του WiFi modem στο δίκτυο να ενεργοποιηθεί το GSM/GPRS modem. 87

102 Παράρτημα Γ Προγραμματισμός σταθμού Γ.1 Προγραμματισμός κεντρικού μικροελεγκτή (ATmega328PB) Για τον προγραμματισμό του σταθμού είναι απαραίτητη η χρήση του AVR ISP mkll που φαίνεται παρακάτω σε συνδυασμό με τα pins του. Σχήμα Γ-1: AVR ISP mkll programmer Σχήμα Γ-2: Pinout Η τοποθέτησή του στη πλακέτα του σταθμού για τον προγραμματισμό του πρέπει να γίνει όπως φαίνεται παρακάτω με την προϋπόθεση ότι ο σταθμός τροφοδοτείται από το κύκλωμα τροφοδοσίας. Σχήμα Γ-3: Τοποθέτηση programmer πάνω στην πλακέτα Αφού λοιπόν πραγματοποιήσουμε την παραπάνω σύνδεση πλέον είμαστε έτοιμοι μέσω του Atmel Studio να προγραμματίσουμε τον κεντρικό μικροελεγκτή με τα αρχεία του κώδικά μας. Για τον προγραμματισμό πηγαίνουμε Tools->Device Programming. 88

103 Γ.2 Προγραμματισμός WiFi modem (ESP8266) Για τον προγραμματισμό του ESP8266 χρησιμοποιείται το Arduino IDE. Βέβαια, αυτό δεν αρκεί καθώς απαιτείται και ένα εξωτερικό εργαλείο το οποίο μετατρέπει τα σήματα της USB θύρας σε TTL που μπορεί να αντιληφθεί το ESP8266. Το συγκεκριμένο εργαλείο ονομάζεται FTDI programmer και απεικονίζεται παρακάτω. Να τονιστεί ότι τέτοιου είδους εργαλεία μπορούν να χρησιμοποιηθούν και για απλή αποστολή/λήψη μηνυμάτων από και προς τον υπολογιστή και μικροελεγκτή κυρίως για debugging σκοπούς. Σχήμα Γ-4: Ο programmer για το ESP8266 Για τον προγραμματισμό του ESP8266 φροντίζουμε να έχουμε κλειστούς τους διακόπτες 1,5,6 και όλους τους υπόλοιπους ανοιχτούς. Εν συνεχεία έχουμε πατημένο το εξωτερικό κουμπί δίπλα από το modem, πατάμε και αφήνουμε το reset (εσωτερικό κουμπί) και τέλος αφήνουμε το εξωτερικό. Με αυτό τον τρόπο βάζουμε το ESP8266 σε programming mode όπου πλέον μέσω του Arduino IDE το φορτώνουμε. Οι ρυθμίσεις στο Arduino IDE απεικονίζονται στην επόμενη εικόνα. Αφού το προγραμματίσουμε επαναφέρουμε τους διακόπτες στην αρχική τους κατάσταση. Σχήμα Γ-5: Ρυθμίσεις Arduino IDE για τον προγραμματισμό του ESP

104 Για το προγραμματισμό του WiFi modem πάνω στην πλακέτα του σταθμού τοποθετούμε το FTDI στην κατάλληλη θέση με ονομασία PROG/DEBUG όπως απεικονίζεται παρακάτω και εφαρμόζουμε την προαναφερθείσα διαδικασία. Σχήμα Γ-6: Προγραμματισμός ESP8266 με τη χρήση ενός FTDI Γ.3 Πηγαίος κώδικας Λόγω του μεγάλου μεγέθους του κώδικα που γράφηκε προτιμήθηκε να δοθεί η διεύθυνση στην οποία μπορεί κανείς να τον διαβάσει ή να τον χρησιμοποιήσει. Για τον ATmega328PB: Station/tree/master/source Για το ESP8266: Station/tree/master/WiFiModem Για την εφαρμογή Android: Γ.4 Σχέδια PCB Τα σχέδια PCB μπορείτε να κατεβάσετε τα αρχεία από τη διεύθυνση: 90

ΡΟΜΠΟΤΙΚΗ. ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication

ΡΟΜΠΟΤΙΚΗ. ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication ΡΟΜΠΟΤΙΚΗ ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication ΜΠΑΝΤΗΣ ΑΝΤΩΝΙΟΣ 533 ΤΣΙΚΤΣΙΡΗΣ ΔΗΜΗΤΡΙΟΣ 551 ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΡΟΜΠΟΤ LEGO NXT Το ρομπότ

Διαβάστε περισσότερα

WDT και Power Up timer

WDT και Power Up timer Ο ΜΙΚΡΟΕΛΕΓΚΤΗΣ PIC O μικροελεγκτής PIC κατασκευάζεται από την εταιρεία Microchip. Περιλαμβάνει τις τρεις βασικές κατηγορίες ως προς το εύρος του δίαυλου δεδομένων (Data Bus): 8 bit (σειρές PIC10, PIC12,

Διαβάστε περισσότερα

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών Μάθημα 4.5 Η Μνήμη - Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών Όταν ολοκληρώσεις το μάθημα αυτό θα μπορείς: Να αναφέρεις τα κυριότερα είδη μνήμης

Διαβάστε περισσότερα

Μαθαίνοντας το hardware του αναπτυξιακού

Μαθαίνοντας το hardware του αναπτυξιακού 1. ΑΣΚΗΣΗ 1 Μαθαίνοντας το hardware του αναπτυξιακού Προϋποθέσεις Το εργαστήριο αυτό προϋποθέτει το διάβασμα και χρήση των εξής: Αρχείο mcbstr9.chm HTML, που δίδεται με τα υπόλοιπα αρχεία του εργαστηρίου.

Διαβάστε περισσότερα

Αυτοματισμοί και Συστήματα Αυτομάτου Ελέγχου. Ενότητα 2

Αυτοματισμοί και Συστήματα Αυτομάτου Ελέγχου. Ενότητα 2 Αυτοματισμοί και Συστήματα Αυτομάτου Ελέγχου Ενότητα 2 Τι είναι το PLC ΠΕΡΙΕΧΟΜΕΝΑ 2 Τι είναι το PLC. 2.1 Πλεονεκτήματα των PLC. 2.2 Η δομή ενός PLC. 2.3 Τα PLC της αγοράς. 2.4 Αρχή λειτουργίας ενός PLC.

Διαβάστε περισσότερα

Μετρήσεις και συλλογή δεδομένων (Data acquisition) με μικροελεγκτές. Εισαγωγή στο Arduino. Ηλεκτρομηχανολογικός εξοπλισμός διεργασιών

Μετρήσεις και συλλογή δεδομένων (Data acquisition) με μικροελεγκτές. Εισαγωγή στο Arduino. Ηλεκτρομηχανολογικός εξοπλισμός διεργασιών Μετρήσεις και συλλογή δεδομένων (Data acquisition) με μικροελεγκτές Εισαγωγή στο Arduino Ηλεκτρομηχανολογικός εξοπλισμός διεργασιών Τι είναι Μικροελεγκτής; Ηλεκτρονική συσκευή που διαχειρίζεται ηλεκτρονικά

Διαβάστε περισσότερα

CTMU. => C = 50pF 10pF = 40 pf. C stray. d (C V ) I= I = C V. C= I t. Ι = dq dt

CTMU. => C = 50pF 10pF = 40 pf. C stray. d (C V ) I= I = C V. C= I t. Ι = dq dt CTMU Με τη μονάδα CTMU (Charge Time Measurement Unit) μπορούμε να μετρήσουμε απόλυτη χωρητικότητα, σχετική μεταβολή χωρητικότητας καθώς επίσης και χρονικό διάστημα ανάμεσα σε δύο παλμούς. Βασίζεται στην

Διαβάστε περισσότερα

Συσκευές Τηλεπικοινωνιών και Δικτύωσης. Επικοινωνίες Δεδομένων Μάθημα 9 ο

Συσκευές Τηλεπικοινωνιών και Δικτύωσης. Επικοινωνίες Δεδομένων Μάθημα 9 ο Συσκευές Τηλεπικοινωνιών και Δικτύωσης Επικοινωνίες Δεδομένων Μάθημα 9 ο Εισαγωγή Ένα δίκτυο αποτελείται από ενεργά και παθητικά στοιχεία. Στα παθητικά στοιχεία εντάσσονται τα καλώδια και τα εξαρτήματα

Διαβάστε περισσότερα

ΔΙΑΧΥΤΑ ΚΑΙ ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ

ΔΙΑΧΥΤΑ ΚΑΙ ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΔΙΑΧΥΤΑ ΚΑΙ ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ Πλατφόρμες ενσωματωμένων συστημάτων Διδάσκων: Παναγιώτης Καρκαζής Περίγραμμα - Δίαυλοι επικοινωνίας - Μνήμες -Συσκευές Ι/Ο Timers Counters keyboards Leds 7 segment display

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 2 USB και Σειριακή Επικοι- νωνία Σ Σειριακή Επικοινωνία

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 2 USB και Σειριακή Επικοι- νωνία Σ Σειριακή Επικοινωνία Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 2 USB και Σειριακή Επικοινωνία. Σειριακή Επικοινωνία USB Σύνδεση / Πρωτόκολλο Σκοπός Εντολή επιλογής (if) Εντολή Επανάληψης (while) Πίνακες 1 Μέρος Α : Σκοπός

Διαβάστε περισσότερα

Ι ΑΣΚΩΝ ΚΑΘΗΓΗΤΗΣ: ΚΑΘΗΓΗΤΗΣ ΕΦΑΡΜΟΓΩΝ. ΤΕΙ ΥΤΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ d.fotiadis@kastoria.teikoz.gr

Ι ΑΣΚΩΝ ΚΑΘΗΓΗΤΗΣ: ΚΑΘΗΓΗΤΗΣ ΕΦΑΡΜΟΓΩΝ. ΤΕΙ ΥΤΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ d.fotiadis@kastoria.teikoz.gr Ι ΑΣΚΩΝ ΚΑΘΗΓΗΤΗΣ: ΦΩΤΙΑ ΗΣ Α. ΗΜΗΤΡΗΣ M.Sc. ΚΑΘΗΓΗΤΗΣ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Τ.Ε. ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ (Σ.Τ.ΕΦ.) ΤΕΙ ΥΤΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ d.fotiadis@kastoria.teikoz.gr Ασύγχρονη σειριακή

Διαβάστε περισσότερα

Α5.1 Εισαγωγή στα Δίκτυα. Α Λυκείου

Α5.1 Εισαγωγή στα Δίκτυα. Α Λυκείου Α5.1 Εισαγωγή στα Δίκτυα Α Λυκείου Εισαγωγή Δίκτυο Υπολογιστών (Computer Network) είναι μια ομάδα από δύο ή περισσότερους υπολογιστές ή άλλες συσκευές που συνδέονται μεταξύ τους με σκοπό να ανταλλάσσουν

Διαβάστε περισσότερα

ΑΝΑLOG TO DIGITAL CONVERTER (ADC)

ΑΝΑLOG TO DIGITAL CONVERTER (ADC) ΑΝΑLOG TO DIGITAL CONVERTER (ADC) O ADC αναλαμβάνει να μετατρέψει αναλογικές τάσεις σε ψηφιακές ώστε να είναι διαθέσιμες εσωτερικά στο μικροελεγκτή για επεξεργασία. Η αναλογική τάση που θέλουμε να ψηφιοποιηθεί

Διαβάστε περισσότερα

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων Εργαστήριο ενσωματωμένων συστημάτων Παρουσίαση 1: Εισαγωγή στα ενσωματωμένα συστήματα (embedded systems) Εργαστήριο Αυτομάτου Ελέγχου Ενσωματωμένα συστήματα (Embedded Systems) Ενσωματωμένα συστήματα (Embedded

Διαβάστε περισσότερα

WIRELESS SENSOR NETWORKS (WSN)

WIRELESS SENSOR NETWORKS (WSN) WIRELESS SENSOR NETWORKS (WSN) Δρ. Ιωάννης Παναγόπουλος Εργαστήριο Υπολογιστικών Συστημάτων Καθ. Γεώργιος Παπακωνσταντίνου Αθήνα 2008 ΕΙΣΑΓΩΓΗ ΣΤΑ WSN Σε συγκεκριμένες εφαρμογές, επιθυμείται η μέτρηση

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ 1.1 ΕΙΣΑΓΩΓΗ ΣΤΑ ΑΝΑΛΟΓΙΚΑ ΗΛΕΚΤΡΟΝΙΚΑ 1 1.1.1 Αναλογικά σήματα 1 1.1.2 Οι αντιστάσεις 3 1.1.3 Οι πυκνωτές 7 1.1.4 Τα πηνία 11 1.1.5 Οι δίοδοι 13 1.1.6

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 201 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM). Μνήμες Ένα από τα βασικά πλεονεκτήματα των ψηφιακών συστημάτων σε σχέση με τα αναλογικά, είναι η ευκολία αποθήκευσης μεγάλων ποσοτήτων πληροφοριών, είτε προσωρινά είτε μόνιμα Οι πληροφορίες αποθηκεύονται

Διαβάστε περισσότερα

για τις ρυθμίσεις LabView μέσα από το κανάλι και του καλωδίου USB.

για τις ρυθμίσεις LabView μέσα από το κανάλι   και του καλωδίου USB. 1o ΕΠΑΛ- Ε.Κ. Συκεών -Τομέας: Ηλεκτρονικής, Ηλεκτρολογίας και Αυτοματισμού Εκπαιδευτικοί: Μπουλταδάκης Στέλιος Μαυρίδης Κώστας Δραστηριότητα: 11 Μάθημα: Εργαστήριο Δικτύων Υπολογιστών Αντικείμενο : Μέτρηση

Διαβάστε περισσότερα

ΕΦΑΡΜΟΓΕΣ ΤΗΛΕΠIΚΟΙΝΩΝΙΑΚΩΝ ΔΙΑΤΑΞΕΩΝ

ΕΦΑΡΜΟΓΕΣ ΤΗΛΕΠIΚΟΙΝΩΝΙΑΚΩΝ ΔΙΑΤΑΞΕΩΝ ΕΦΑΡΜΟΓΕΣ ΤΗΛΕΠIΚΟΙΝΩΝΙΑΚΩΝ ΔΙΑΤΑΞΕΩΝ ΟΙΚΟΝOΜΟΥ ΧΑΡΗΣ (6424) ΦΩΚΟΣ ΝΙΚΟΛΑΟΣ(6592) ΚΑΜΒΥΣΗΣ ΝΙΚΟΛΑΟΣ(7178) 2013-2014 ΠΕΡΙΕΧΟΜΕΝΑ Σκοπός της εργασίας Ανάλυση Arduino Uno Δημιουργία πληροφορίας Αποστολή και

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 5. Ρυθμίζοντας τη Φορά Περιστροφής. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 5. Ρυθμίζοντας τη Φορά Περιστροφής. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Σκοπός Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 5 Ρυθμίζοντας τη Φορά Περιστροφής DC Κινητήρα. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Βασική δομή ενός προγράμματος στο LabVIEW. Εμπρόσθιο Πλαίσιο (front

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΤΗ ΔΙΟΙΚΗΣΗ ΚΑΙ ΣΤΗΝ ΟΙΚΟΝΟΜΙΑ 2 Ο ΜΑΘΗΜΑ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΑΠΟΣΤΟΛΙΑ ΠΑΓΓΕ Υπολογιστής Συνοπτικό λεξικό Οξφόρδης -> «ηλεκτρονική υπολογιστική μηχανή»

Διαβάστε περισσότερα

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07 Ενότητα 4 Εισαγωγή στην Πληροφορική Κεφάλαιο 4Α: Αναπαράσταση πληροφορίας Κεφάλαιο 4Β: Επεξεργαστές που χρησιµοποιούνται σε PCs Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Εισαγωγή

Διαβάστε περισσότερα

Το εσωτερικό ενός PC. Τεχνολογία Η/Υ & Πληροφοριών - 05 Κεντρική μονάδα Χουρδάκης Μανόλης

Το εσωτερικό ενός PC. Τεχνολογία Η/Υ & Πληροφοριών - 05 Κεντρική μονάδα Χουρδάκης Μανόλης Το εσωτερικό ενός PC 1 Το κουτί του PC (περίβλημα) περιέχει όλα τα βασικά μέρη του συστήματος Δύο κατηγορίες κουτιών: Desktop και Tower Mini tower Midi tower Full tower Κεντρική μονάδα Ο τύπος του κουτιού

Διαβάστε περισσότερα

Κεφάλαιο 1.6: Συσκευές αποθήκευσης

Κεφάλαιο 1.6: Συσκευές αποθήκευσης Κεφάλαιο 1.6: Συσκευές αποθήκευσης 1.6.1 Συσκευές αποθήκευσης Μνήμη τυχαίας προσπέλασης - RAM Η μνήμη RAM (Random Access Memory Μνήμη Τυχαίας Προσπέλασης), κρατεί όλη την πληροφορία (δεδομένα και εντολές)

Διαβάστε περισσότερα

ΣΤΑΤΙΚΕΣ ΚΑΙ ΔΥΝΑΜΙΚΕΣ ΜΝΗΜΕΣ ΤΥΧΑΙΑΣ ΠΡΟΣΠΕΛΑΣΗΣ (Static and Dynamic RAMs). ΔΙΑΡΘΡΩΣΗ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΘΕΜΑΤΙΚΕΣ ΕΝΟΤΗΤΕΣ

ΣΤΑΤΙΚΕΣ ΚΑΙ ΔΥΝΑΜΙΚΕΣ ΜΝΗΜΕΣ ΤΥΧΑΙΑΣ ΠΡΟΣΠΕΛΑΣΗΣ (Static and Dynamic RAMs). ΔΙΑΡΘΡΩΣΗ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΘΕΜΑΤΙΚΕΣ ΕΝΟΤΗΤΕΣ ΣΤΑΤΙΚΕΣ ΚΑΙ ΔΥΝΑΜΙΚΕΣ ΜΝΗΜΕΣ ΤΥΧΑΙΑΣ ΠΡΟΣΠΕΛΑΣΗΣ (Static and Dynamic RAMs). ΔΙΑΡΘΡΩΣΗ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΘΕΜΑΤΙΚΕΣ ΕΝΟΤΗΤΕΣ ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ ΗΜΙΑΓΩΓΙΚΩΝ ΜΝΗΜΩΝ. ΒΑΣΙΚΗ ΛΕΙΤΟΥΡΓΙΑ RAM CMOS. ΤΥΠΟΙ ΚΥΤΤΑΡΩΝ ΑΡΧΕΣ

Διαβάστε περισσότερα

ΜΕΛΕΤΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΣΥΣΤΗΜΑΤΟΣ ΜΕΤΡΗΣΗΣ ΑΤΜΟΣΦΑΙΡΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΠΟΥ ΕΠΗΡΕΑΖΟΥΝ ΤΗΝ ΔΙΕΝΕΡΓΕΙΑ ΑΣΤΡΟΝΟΜΙΚΩΝ ΠΑΡΑΤΗΡΗΣΕΩΝ ΚΑΙ ΜΕΤΡΗΣΕΩΝ.

ΜΕΛΕΤΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΣΥΣΤΗΜΑΤΟΣ ΜΕΤΡΗΣΗΣ ΑΤΜΟΣΦΑΙΡΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΠΟΥ ΕΠΗΡΕΑΖΟΥΝ ΤΗΝ ΔΙΕΝΕΡΓΕΙΑ ΑΣΤΡΟΝΟΜΙΚΩΝ ΠΑΡΑΤΗΡΗΣΕΩΝ ΚΑΙ ΜΕΤΡΗΣΕΩΝ. Ερασιτεχνικής Αστρονομίας ΜΕΛΕΤΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΣΥΣΤΗΜΑΤΟΣ ΜΕΤΡΗΣΗΣ ΑΤΜΟΣΦΑΙΡΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΠΟΥ ΕΠΗΡΕΑΖΟΥΝ ΤΗΝ ΔΙΕΝΕΡΓΕΙΑ ΑΣΤΡΟΝΟΜΙΚΩΝ ΠΑΡΑΤΗΡΗΣΕΩΝ ΚΑΙ ΜΕΤΡΗΣΕΩΝ. Κυριάκος Πανίτσας Διπλ. Ηλεκτρολόγος Μηχανικός-Εκπαιδευτικός

Διαβάστε περισσότερα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα 1. Ποια είναι η σχέση της έννοιας του μικροεπεξεργαστή με αυτή του μικροελεγκτή; Α. Ο μικροεπεξεργαστής εμπεριέχει τουλάχιστο έναν μικροελεγκτή. Β. Ο

Διαβάστε περισσότερα

ΒΑΣΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ. Τίτλος Μαθήματος. Διαλέξεις - Θεωρητική Διδασκαλία, Εποπτευόμενο Εργαστήριο Επίδειξη, Μελέτες (Projects)

ΒΑΣΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ. Τίτλος Μαθήματος. Διαλέξεις - Θεωρητική Διδασκαλία, Εποπτευόμενο Εργαστήριο Επίδειξη, Μελέτες (Projects) ΒΑΣΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ Τίτλος Μαθήματος Μικροελεγκτές και Ενσωματωμένα συστήματα Ανάπτυξη και Εφαρμογές Κωδικός Μαθήματος Μ2 Θεωρία / Εργαστήριο Θεωρία + Εργαστήριο Πιστωτικές μονάδες 4 Ώρες Διδασκαλίας 2Θ+1Ε

Διαβάστε περισσότερα

Λογικά σύμβολα των CPU, RAM, ROM και I/O module

Λογικά σύμβολα των CPU, RAM, ROM και I/O module Μικροϋπολογιστές Λογικά σύμβολα των CPU, RAM, ROM και I/O module Data CPU Data Data Address RAM Control Address Control External Data Data Address Control I/O module External Data External Control ROM

Διαβάστε περισσότερα

A. ΓΕΝΙΚΕΣ ΠΡΟΔΙΑΓΡΑΦΕΣ ΥΛΙΚΟΥ

A. ΓΕΝΙΚΕΣ ΠΡΟΔΙΑΓΡΑΦΕΣ ΥΛΙΚΟΥ A. ΓΕΝΙΚΕΣ ΠΡΟΔΙΑΓΡΑΦΕΣ ΥΛΙΚΟΥ Εισαγωγή Οι προδιαγραφές του υλικού που ακολουθούν, έχουν βασιστεί στο Ενιαίο Πλαίσιο Προγράμματος Σπουδών και στα Προγράμματα σπουδών Πληροφορικής για το Γυμνάσιο και το

Διαβάστε περισσότερα

Bread Online. Παναγιώτης Ιωαννίδης Επιβλέπων καθηγητής: Μηνάς Δασυγένης

Bread Online. Παναγιώτης Ιωαννίδης Επιβλέπων καθηγητής: Μηνάς Δασυγένης Bread Online Σχεδιασμός και μετατροπή μιας απλής οικιακής συσκευής σε επαναπρογραμματιζόμενη συσκευή IP Παναγιώτης Ιωαννίδης Επιβλέπων καθηγητής: Μηνάς Δασυγένης Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών

Διαβάστε περισσότερα

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Παρακάτω δίνονται μερικοί από τους ακροδέκτες που συναντάμε στην πλειοψηφία των μικροεπεξεργαστών. Φτιάξτε έναν πίνακα που να

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ 4 ο Μάθημα. Το Υλικό του Υπολογιστή

ΠΛΗΡΟΦΟΡΙΚΗ 4 ο Μάθημα. Το Υλικό του Υπολογιστή ΠΛΗΡΟΦΟΡΙΚΗ 4 ο Μάθημα Το Υλικό του Υπολογιστή Ηλεκτρονικός Υπολογιστής Πουλιέται οπουδήποτε (ακόμη και σε Super Market) Είναι παντού Ο φορητός έχει τις ίδιες δυνατότητες με τον επιτραπέζιο Γίνονται μικρότεροι

Διαβάστε περισσότερα

16PROC

16PROC ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ, ΕΡΕΥΝΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΓΕΝΙΚΗ ΓΡΑΜΜΑΤΕΙΑ ΕΡΕΥΝΑΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΙΔΡΥΜΑ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΡΕΥΝΑΣ ΙΝΣΤΙΤΟΥΤΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΜΑΘΗΜΑΤΙΚΩΝ Ηράκλειο 07-10-2016 Αριθ.

Διαβάστε περισσότερα

Δθαξκνγέο αζύξκαηεο ηειεκεηξίαο ζηελ αλαπηπμηαθή πιαηθόξκα Arduino

Δθαξκνγέο αζύξκαηεο ηειεκεηξίαο ζηελ αλαπηπμηαθή πιαηθόξκα Arduino Σερλνινγηθό Δθπαηδεπηηθό Ίδξπκα Κξήηεο ρνιή Σερλνινγηθώλ Δθαξκνγώλ Σκήκα Δθαξκνζκέλεο Πιεξνθνξηθήο & Πνιπκέζσλ Πηπρηαθή εξγαζία Δθαξκνγέο αζύξκαηεο ηειεκεηξίαο ζηελ αλαπηπμηαθή πιαηθόξκα Arduino Διεπζεξηάδεο

Διαβάστε περισσότερα

Μάθημα 4.2 Η μητρική πλακέτα

Μάθημα 4.2 Η μητρική πλακέτα Μάθημα 4.2 Η μητρική πλακέτα - Εισαγωγή - Οι βάσεις του επεξεργαστή και της μνήμης - Οι υποδοχές της μητρικής πλακέτας - Άλλα μέρη της μητρική πλακέτας - Τυποποιήσεις στην κατασκευή μητρικών πλακετών Όταν

Διαβάστε περισσότερα

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Γ ΕΠΑΛ 14 / 04 / 2019

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Γ ΕΠΑΛ 14 / 04 / 2019 Γ ΕΠΑΛ 14 / 04 / 2019 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΘΕΜΑ 1 ο 1. Να γράψετε στο τετράδιό σας το γράμμα καθεμιάς από τις παρακάτω προτάσεις και δίπλα τη λέξη ΣΩΣΤΟ, αν είναι σωστή ή τη λέξη ΛΑΘΟΣ, αν είναι λανθασμένη.

Διαβάστε περισσότερα

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΕΦΑΛΑΙΟ 7ο ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Γενικό διάγραμμα υπολογιστικού συστήματος Γενικό διάγραμμα υπολογιστικού συστήματος - Κεντρική Μονάδα Επεξεργασίας ονομάζουμε

Διαβάστε περισσότερα

Εκτέλεση προγράμματος

Εκτέλεση προγράμματος ιεπιφάνεια controller Επισκόπηση λειτουργιών CNC Επισκόπηση λειτουργιών DNC Επικοινωνίες 1 2 Αυτόματα Εκτέλεση προγράμματος παραγωγή Χειροκίνητα για απλές λίγες κινήσεις Εντολή προς εντολή για έλεγχο ορθότητας

Διαβάστε περισσότερα

Κεφάλαιο 5 Διασύνδεση Αναλογικών & Ψηφιακών Συστημάτων

Κεφάλαιο 5 Διασύνδεση Αναλογικών & Ψηφιακών Συστημάτων Κεφάλαιο 5 Διασύνδεση Αναλογικών & Ψηφιακών Συστημάτων Αναλογικές & Ψηφιακές Διατάξεις Τα διάφορα μεγέθη των φυσικών διεργασιών τα μετράμε με αισθητήρες που ουσιαστικά παρέχουν ηλεκτρικά σήματα χαμηλής

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Τι εννοούμε με τον όρο υπολογιστικό σύστημα και τι με τον όρο μικροϋπολογιστικό σύστημα; Υπολογιστικό

Διαβάστε περισσότερα

Σύγχρονη και Ασύγχρονη Σειριακή Επικοινωνία

Σύγχρονη και Ασύγχρονη Σειριακή Επικοινωνία Σύγχρονη και Ασύγχρονη Σειριακή Επικοινωνία Δρ. Κλειώ Σγουροπούλου Μετάδοση Δεδομένων Οργάνωση καναλιού μετάδοσης Τρόποι επικοινωνίας Τρόποι μετάδοσης Οργάνωση καναλιού μετάδοσης Τα δεδομένα μπορούν να

Διαβάστε περισσότερα

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, 2016-2017 ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ Μικροϋπολογιστής Υπολογιστής που χρησιμοποιείται για την είσοδο, επεξεργασία και έξοδο πληροφοριών. Είδη μικροϋπολογιστών:

Διαβάστε περισσότερα

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. ΚΕΦΑΛΑΙΟ 4ο ΜΝΗΜΕΣ. (c) Αμπατζόγλου Γιάννης, Ηλεκτρονικός Μηχανικός, καθηγητής ΠΕ17

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. ΚΕΦΑΛΑΙΟ 4ο ΜΝΗΜΕΣ. (c) Αμπατζόγλου Γιάννης, Ηλεκτρονικός Μηχανικός, καθηγητής ΠΕ17 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΕΦΑΛΑΙΟ 4ο ΜΝΗΜΕΣ Μνήμες (Memory) - Είναι ημιαγώγιμα κυκλώματα που μπορούν να αποθηκεύσουν ένα σύνολο από δυαδικά ψηφία (bit). - Μια μνήμη αποθηκεύει λέξεις (σειρές από bit). - Σε κάθε

Διαβάστε περισσότερα

Ενσωµατωµένα Συστήµατα

Ενσωµατωµένα Συστήµατα Ενσωµατωµένα Συστήµατα για εφαρµογές πραγµατικού χρόνου Μικροελεγκτής Arduino Ιωάννης Καλόµοιρος Αναπληρωτής Καθηγητής Τµήµα Μηχανικών Πληροφορικής Μάθηµα 7ο Τι είναι το Arduino... Ένα open-hardware σύστηµα

Διαβάστε περισσότερα

Εργαστηριακές ασκήσεις λογικών κυκλωμάτων 11 A/D-D/A

Εργαστηριακές ασκήσεις λογικών κυκλωμάτων 11 A/D-D/A 11.1 Θεωρητικό μέρος 11 A/D-D/A 11.1.1 Μετατροπέας αναλογικού σε ψηφιακό σήμα (A/D converter) με δυαδικό μετρητή Σχ.1 Μετατροπέας A/D με δυαδικό μετρητή Στο σχήμα 1 απεικονίζεται σε block diagram ένας

Διαβάστε περισσότερα

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ) ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ) Συσκευές αποθήκευσης Ένας υπολογιστής προκειµένου να αποθηκεύσει δεδοµένα χρησιµοποιεί δύο τρόπους αποθήκευσης: Την Κύρια Μνήµη Τις συσκευές µόνιµης αποθήκευσης (δευτερεύουσα

Διαβάστε περισσότερα

Σύστημα διασύνδεσης και. διαδικασία εισόδου-εξόδου

Σύστημα διασύνδεσης και. διαδικασία εισόδου-εξόδου ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 6 Σύστημα διασύνδεσης και διαδικασία εισόδου-εξόδου Τι είναι αρτηρία (Bus) ; Ένα σύνολο γραμμών διασύνδεσης Πρωτόκολλο (protocol) Περιγραφή Πρωτοκόλλου χρονικό διάγραμμα

Διαβάστε περισσότερα

Βασικές Έννοιες της Πληροφορικής

Βασικές Έννοιες της Πληροφορικής Βασικές Έννοιες της Πληροφορικής Ηλεκτρονικός Υπολογιστής Αυτόματη ηλεκτρονική μηχανή που δέχεται, φυλάσσει, επαναφέρει, επεξεργάζεται και παρουσιάζει πληροφορίες σύμφωνα με προκαθορισμένες εντολές. Δεδομένα

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών

ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών Διδάσκων: Απόστολος Γκάμας (Διδάσκων ΠΔ 407/80) Ενδεικτική Λύση 2 ης Εργαστηριακής

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 3 : Μια άποψη του κορυφαίου επιπέδου λειτουργίας και διασύνδεσης του υπολογιστή Καρβούνης Ευάγγελος Η έννοια

Διαβάστε περισσότερα

Εφαρµογές Πληροφορικής Υπολογιστών. Κεφάλαιο 3 Το υλικό του υπολογιστή

Εφαρµογές Πληροφορικής Υπολογιστών. Κεφάλαιο 3 Το υλικό του υπολογιστή Κεφάλαιο 3 Το υλικό του υπολογιστή Εισαγωγή Τµήµατα του Η/Υ καιοργάνωση Μονάδα Κεντρικής Μνήµης Κεντρική Μονάδα Επεξεργασίας (CPU) Μονάδα Εισόδου Εξόδου ίαυλοι Επικοινωνίας Εναλλακτικές αρχιτεκτονικές

Διαβάστε περισσότερα

Ενότητα 8.1. Σειριακή και παράλληλη μετάδοση δεδομένων

Ενότητα 8.1. Σειριακή και παράλληλη μετάδοση δεδομένων Ενότητα 8.1 Σειριακή και παράλληλη μετάδοση δεδομένων 1 2 Η μετάδοση δεδομένων μεταξύ δύο συσκευών μπορεί να γίνει με παράλληλο ή με σειριακό τρόπο Παράλληλη μετάδοση δεδομένων Στην παράλληλη μετάδοση

Διαβάστε περισσότερα

Εφαρμογές Σειριακής Επικοινωνίας

Εφαρμογές Σειριακής Επικοινωνίας Εφαρμογές Σειριακής Επικοινωνίας Εισαγωγή Στο μάθημα αυτό θα μάθουμε πώς να χρησιμοποιούμε την βιβλιοθήκη serial για την επικοινωνία από την πλατφόρμα Arduino πίσω στον υπολογιστή μέσω της θύρας usb. Τι

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Λιβανός Γιώργος Εξάμηνο 2017Β

Λιβανός Γιώργος Εξάμηνο 2017Β Λιβανός Γιώργος Εξάμηνο 2017Β Υπολογιστικό σύστημα Υλικό (hardware) Λογισμικό (Software) Ολοκληρωμένα κυκλώματα, δίσκοι, οθόνη, κλπ. Λογισμικό συστήματος Προγράμματα εφαρμογών Χρειάζονται ένα συντονιστή!!!

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 1 (22 Νοεμβρίου 2017)

ΑΣΚΗΣΗ 1 (22 Νοεμβρίου 2017) ΑΣΚΗΣΗ 1 (22 Νοεμβρίου 2017) Περιγραφή της Άσκησης Ο σκοπός της πρώτης άσκησης είναι κυρίως η εξοικείωση με το περιβάλλον προγραμματισμού του Arduino, γι αυτό και δεν είναι ιδιαίτερα σύνθετη. Αρχικά, θα

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2016

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2016 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2016 ΤΕΧΝΟΛΟΓΙΑ (ΙΙ) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΠΡΑΚΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Τεχνολογία και

Διαβάστε περισσότερα

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου)

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου) Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα 1.7 - Πρωτόκολλα και Αρχιτεκτονική Δικτύου) Πρωτόκολλο είναι ένα σύνολο κανόνων που πρέπει να ακολουθήσουν όλοι οι σταθμοί εργασίας σε ένα δίκτυο ώστε να μπορούν

Διαβάστε περισσότερα

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Κεφάλαιο 4 SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ 1 4.1 ΕΙΣΑΓΩΓΗ...3 4.2 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ...3 4.2.1 Η ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΟΥ...3 4.2.1.1 ΣΤΑΘΜΟΣ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΟΥ...4 4.2.1.2 ΔΙΑΧΕΙΡΙΖΟΜΕΝΟΙ

Διαβάστε περισσότερα

Λειτουργίες CNC-DNC. Επισκόπηση λειτουργιών CNC Επισκόπηση λειτουργιών DNC Επικοινωνίες. Λειτουργίες CNC-DNC. Γ.Βοσνιάκος-ΕΡΓΑΛΕΙΟΜΗΧΑΝΕΣ

Λειτουργίες CNC-DNC. Επισκόπηση λειτουργιών CNC Επισκόπηση λειτουργιών DNC Επικοινωνίες. Λειτουργίες CNC-DNC. Γ.Βοσνιάκος-ΕΡΓΑΛΕΙΟΜΗΧΑΝΕΣ Λειτουργίες CNC-DNC Επισκόπηση λειτουργιών CNC Επισκόπηση λειτουργιών DNC Επικοινωνίες Γ.Βοσνιάκος-ΕΡΓΑΛΕΙΟΜΗΧΑΝΕΣ Λειτουργίες CNC-DNC Άδεια Χρήσης Το παρόν υλικό υπόκειται σε άδειες χρήσης Creative Commons

Διαβάστε περισσότερα

Μέρος Β - Δίκτυα. Ασκήσεις I. Ποιος ο ρόλος του πομπού και του δέκτη στο μοντέλο επικοινωνίας που α- πεικονίζεται στο σχήμα που ακολουθεί; Μ Δεδομένα

Μέρος Β - Δίκτυα. Ασκήσεις I. Ποιος ο ρόλος του πομπού και του δέκτη στο μοντέλο επικοινωνίας που α- πεικονίζεται στο σχήμα που ακολουθεί; Μ Δεδομένα Μέρος Β - Δίκτυα 1 η Διδακτική Ενότητα Μοντέλο επικοινωνίας δεδομένων - Κώδικες - Σήματα Προβλεπόμενες διδακτικές ώρες: 1 Λέξεις Κλειδιά ASCII BCD Unicode αναλογικό σήμα ΕΛΟΤ-928 επικοινωνία δεδομένων

Διαβάστε περισσότερα

«ΑΣΥΡΜΑΤΟ ΣΥΣΤΗΜΑ ΕΠΙΤΗΡΗΣΗΣ, ΚΑΤΑΓΡΑΦΗΣ & ΕΛΕΓΧΟΥ ΑΝΤΛΙΟΣΤΑΣΙΩΝ» Τεχνική έκθεση Προδιαγραφές Προϋπολογισμός

«ΑΣΥΡΜΑΤΟ ΣΥΣΤΗΜΑ ΕΠΙΤΗΡΗΣΗΣ, ΚΑΤΑΓΡΑΦΗΣ & ΕΛΕΓΧΟΥ ΑΝΤΛΙΟΣΤΑΣΙΩΝ» Τεχνική έκθεση Προδιαγραφές Προϋπολογισμός Δ/ΝΣΗ ΤΕΧΝΙΚΩΝ ΥΠΗΡΕΣΙΩΝ ΤΜΗΜΑ ΑΡΔΕΥΣΗΣ ΤΙΤΛΟΣ ΜΕΛΕΤΗΣ «ΑΣΥΡΜΑΤΟ ΣΥΣΤΗΜΑ ΕΠΙΤΗΡΗΣΗΣ, ΚΑΤΑΓΡΑΦΗΣ & ΕΛΕΓΧΟΥ ΑΝΤΛΙΟΣΤΑΣΙΩΝ» Τεχνική έκθεση Προδιαγραφές Προϋπολογισμός Προϋπολογ. : 9.963,00 Με ΦΠΑ 23% Χρήση

Διαβάστε περισσότερα

ΚΑΤΑΛΟΓΟΣ ΠΡΟΪΟΝΤΩΝ 2014

ΚΑΤΑΛΟΓΟΣ ΠΡΟΪΟΝΤΩΝ 2014 ΚΑΤΑΛΟΓΟΣ ΠΡΟΪΟΝΤΩΝ 2014 POLYMECHANICS Μπενάκη 5 Πεύκα Θεσσαλονίκη Τηλ: +302315 318802 www.polymechanics.gr info@polymechanics.gr ΚΑΤΑΛΟΓΟΣ ΠΡΟΪΟΝΤΩΝ 2014 Σειρά καταγραφικών συστήµατων Ultima Πληροφορίες

Διαβάστε περισσότερα

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ (Τμήματα Υπολογιστή) ΕΚΠΑΙΔΕΥΤΗΣ:ΠΟΖΟΥΚΙΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΤΜΗΜΑΤΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ Κάθε ηλεκτρονικός υπολογιστής αποτελείται

Διαβάστε περισσότερα

Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή

Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή 1.5.1 Ανάλυση των μερών ενός υπολογιστή Μονάδα συστήματος Είναι το κουτί του υπολογιστή το οποίο φαίνεται αρκετά συμπαγές, αλλά στην πραγματικότητα αποτελείται

Διαβάστε περισσότερα

Συστήματα σε Ολοκληρωμένα Κυκλώματα

Συστήματα σε Ολοκληρωμένα Κυκλώματα Συστήματα σε Ολοκληρωμένα Κυκλώματα Κεφάλαιο 2: Τεχνικές για Σχεδιασμό Χαμηλής Κατανάλωσης Ισχύος στα MPSoCs Διδάσκων: Καθηγητής Οδυσσέας Κουφοπαύλου Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών

Διαβάστε περισσότερα

ΠΡΟΣΚΛΗΣΗ ΕΚ ΗΛΩΣΗΣ ΕΝ ΙΑΦΕΡΟΝΤΟΣ για την προµήθεια δύο αυτόνοµων τηλεµετρικών µετεωρολογικών σταθµών

ΠΡΟΣΚΛΗΣΗ ΕΚ ΗΛΩΣΗΣ ΕΝ ΙΑΦΕΡΟΝΤΟΣ για την προµήθεια δύο αυτόνοµων τηλεµετρικών µετεωρολογικών σταθµών 1 ΕΤΑΙΡΙΑ Υ ΡΕΥΣΕΩΣ & ΑΠΟΧΕΤΕΥΣΕΩΣ ΘΕΣΣΑΛΟΝΙΚΗΣ Α.Ε. /ΝΣΗ ΟΙΚΟΝΟΜΙΚΟΥ ΤΜΗΜΑ ΠΡΟΜΗΘΕΙΩΝ,.Υ. & ΑΠΟΘΗΚΩΝ Πληρ. Σπ. Πετρόπουλος Τηλ. 2310 966972,968,928 Fax 2310 283117 E - mail promithies@eyath.gr Θεσσαλονίκη

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 2 (29 Νοεμβρίου 2016)

ΑΣΚΗΣΗ 2 (29 Νοεμβρίου 2016) ΑΣΚΗΣΗ 2 (29 Νοεμβρίου 2016) Περιγραφή της Άσκησης Στόχος της άσκησης είναι η δημιουργία ενός συστήματος διαχείρισης φωτισμού. Μία φωτομεταβαλλόμενη αντίσταση (LDR) θα διαπιστώνει την ποσότητα του φωτός

Διαβάστε περισσότερα

Δομή Ηλεκτρονικού υπολογιστή

Δομή Ηλεκτρονικού υπολογιστή Δομή Ηλεκτρονικού υπολογιστή Η κλασσική δομή του μοντέλου που πρότεινε το 1948 ο Von Neumann Κεντρική Μονάδα Επεξεργασίας Είσοδος Αποθήκη Αποθήκη - Έξοδος Εντολών Δεδομένων Κλασσικό μοντέλο Von Neumann

Διαβάστε περισσότερα

Επαναληπτικές Ασκήσεις Μαθήματος

Επαναληπτικές Ασκήσεις Μαθήματος Επαναληπτικές Ασκήσεις Μαθήματος Ερώτηση: EAM1. Ποιο από τα παρακάτω χαρακτηριστικά δεν αποτελεί κριτήριο κατηγοριοποίησης δικτύων. Κλίμακα Τεχνολογία μετάδοσης Πλήθος τερματικών εντός του δικτύου Ερώτηση:

Διαβάστε περισσότερα

Σχεδιασμός και υλοποίηση κυκλώματος μέτρησης κατανάλωσης ισχύος

Σχεδιασμός και υλοποίηση κυκλώματος μέτρησης κατανάλωσης ισχύος Σχεδιασμός και υλοποίηση κυκλώματος μέτρησης κατανάλωσης ισχύος Φοιτητής Φετινίδης Αναστάσιος Επιβλέπων Δασυγένης Μηνάς Μάρτιος 2014 1 Περιεχόμενα παρουσίασης Εισαγωγή Θεωρητικό υπόβαθρο Υλικό μέρος του

Διαβάστε περισσότερα

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων Εργαστήριο ενσωματωμένων συστημάτων Παρουσίαση 2: Βασικός Προγραμματισμός Arduino (AVR) Εργαστήριο Αυτομάτου Ελέγχου Η πλατφόρμα Arduino Microcontroller: ATmega328 Operating Voltage: 5V Digital I/O Pins:

Διαβάστε περισσότερα

Το υλικό του υπολογιστή

Το υλικό του υπολογιστή Το υλικό του υπολογιστή Ερωτήσεις 1. Τι αντιλαμβάνεστε με τον όρο υλικό; Το υλικό(hardware) αποτελείται από το σύνολο των ηλεκτρονικών τμημάτων που συνθέτουν το υπολογιστικό σύστημα, δηλαδή από τα ηλεκτρονικά

Διαβάστε περισσότερα

Οδηγίες Εγκατάστασης GSM-GPRS LINK INTERFACE

Οδηγίες Εγκατάστασης GSM-GPRS LINK INTERFACE Οδηγίες Εγκατάστασης GSM-GPRS LINK INTERFACE Ο ORION-G είναι μία συσκευή η οποία εξομοιώνει την αναλογική τηλεφωνική γραμμή (PSTN), αξιοποιώντας το δίκτυο της κινητής τηλεφωνίας, και χρησιμοποιείται για

Διαβάστε περισσότερα

Ανασκόπηση Τελικού Πειράματος με μετρήσεις θερμοκρασιών Στάτορα και Ρότορα. Δοκιμασία της κατασκευασμένης διάταξης.

Ανασκόπηση Τελικού Πειράματος με μετρήσεις θερμοκρασιών Στάτορα και Ρότορα. Δοκιμασία της κατασκευασμένης διάταξης. Κεφάλαιο 8 Ανασκόπηση Τελικού Πειράματος με μετρήσεις θερμοκρασιών Στάτορα και Ρότορα. Δοκιμασία της κατασκευασμένης διάταξης. Η μέτρηση των θερμοκρασιών στα συγκεκριμένα σημεία του στάτη της μηχανής έγινε

Διαβάστε περισσότερα

Διπλωματική Εργασία. Επιβλέπων καθηγητής: Δρ. Μηνάς Δασυγένης. Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών

Διπλωματική Εργασία. Επιβλέπων καθηγητής: Δρ. Μηνάς Δασυγένης. Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Διπλωματική Εργασία Επιβλέπων καθηγητής: Δρ. Μηνάς Δασυγένης Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών,

Διαβάστε περισσότερα

Κεφάλαιο 5 Διασύνδεση Αναλογικών & Ψηφιακών Συστηµάτων

Κεφάλαιο 5 Διασύνδεση Αναλογικών & Ψηφιακών Συστηµάτων Κεφάλαιο 5 Διασύνδεση Αναλογικών & Ψηφιακών Συστηµάτων Αναλογικές & Ψηφιακές Διατάξεις Control Systems Laboratory Τα διάφορα μεγέθη των φυσικών διεργασιών τα μετράμε με αισθητήρες που ουσιαστικά παρέχουν

Διαβάστε περισσότερα

GSM INTD Εγχειρίδιο χρήσης GSM INTD0909

GSM INTD Εγχειρίδιο χρήσης GSM INTD0909 GSM INTD0909 Εγχειρίδιο χρήσης GSM INTD0909 Σελ. 2 Γενική Περιγραφή Σελ. 3 Σύνδεση & Ενεργοποίηση Σελ. 4 Επεξηγήσεις LED s Σελ. 5 Σχέδιο Συνδεσμολογίας Παρακαλούμε διαβάστε προσεκτικά τις οδηγίες για να

Διαβάστε περισσότερα

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο ΤΕΙ Δυτικής Ελλάδας Τμήμα Μηχανικών Πληροφορικής ΤΕ Εργαστήριο Σχεδίασης Ψηφιακών Ολοκληρωμένων Κυκλωμάτων και Συστημάτων «Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο 2016-2017 Διάλεξη 4 η :

Διαβάστε περισσότερα

ΕΝΟΤΗΤΑ 10: ΟΔΗΓΗΣΗ ΚΙΝΗΤΗΡΩΝ

ΕΝΟΤΗΤΑ 10: ΟΔΗΓΗΣΗ ΚΙΝΗΤΗΡΩΝ ΕΝΟΤΗΤΑ 10: ΟΔΗΓΗΣΗ ΚΙΝΗΤΗΡΩΝ Στόχος και Περίγραμμα της Ενότητας 10 Στόχος της παρουσίασης Παρουσίαση της βασικής ιδέα και απλών παραδειγμάτων για την οδήγηση DC και βηματικών κινητήρων με το Arduino.

Διαβάστε περισσότερα

ΡΟΜΠΟΤΙΚΗ ΜΕ ARDUINO - ARDUINO ΚΑΙ ΗΧΟΣ I. Δημιουργός: Δρ.Αθανάσιος Μπαλαφούτης Επιβλέπων: Πετεινάτος Ηλίας Υποψήφιος Διδάκτωρ

ΡΟΜΠΟΤΙΚΗ ΜΕ ARDUINO - ARDUINO ΚΑΙ ΗΧΟΣ I. Δημιουργός: Δρ.Αθανάσιος Μπαλαφούτης Επιβλέπων: Πετεινάτος Ηλίας Υποψήφιος Διδάκτωρ ΡΟΜΠΟΤΙΚΗ ΜΕ ARDUINO - ARDUINO ΚΑΙ ΗΧΟΣ I Δημιουργός: Δρ.Αθανάσιος Μπαλαφούτης Επιβλέπων: Πετεινάτος Ηλίας Υποψήφιος Διδάκτωρ 1 ARDUINO ΚΑΙ ΗΧΟΣ ΠΕΡΙΕΧΟΜΕΝΑ Εισαγωγή, μηχανές παραγωγής ήχου Χρήση του πιεζοηλεκτρικού

Διαβάστε περισσότερα

ΣΕΙΡΑ ΚΑΤΑΓΡΑΦΙΚΩΝ MICROBOT

ΣΕΙΡΑ ΚΑΤΑΓΡΑΦΙΚΩΝ MICROBOT ΚΑΤΑΛΟΓΟΣ ΠΡΟΪΟΝΤΩΝ 2015 ΣΕΙΡΑ ΚΑΤΑΓΡΑΦΙΚΩΝ MICROBOT POLYMECHANICS Τηλ: +302315 318802 www.polymechanics.gr info@polymechanics.gr Χαρακτηριστικά συστηµάτων MICROBOT H σειρά καταγραφικών συστηµάτων Microbot

Διαβάστε περισσότερα

Ιατρικά Ηλεκτρονικά. Δρ. Π. Ασβεστάς Εργαστήριο Επεξεργασίας Ιατρικού Σήματος & Εικόνας Τμήμα Τεχνολογίας Ιατρικών Οργάνων

Ιατρικά Ηλεκτρονικά. Δρ. Π. Ασβεστάς Εργαστήριο Επεξεργασίας Ιατρικού Σήματος & Εικόνας Τμήμα Τεχνολογίας Ιατρικών Οργάνων Ιατρικά Ηλεκτρονικά Δρ. Π. Ασβεστάς Εργαστήριο Επεξεργασίας Ιατρικού Σήματος & Εικόνας Τμήμα Τεχνολογίας Ιατρικών Οργάνων Χρήσιμοι Σύνδεσμοι Σημειώσεις μαθήματος: http://medisp.bme.teiath.gr/eclass/courses/tio127/

Διαβάστε περισσότερα

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ» Περιεχόμενα Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»... 2 Καταχωρητές... 3 Αριθμητική-λογική μονάδα... 3 Μονάδα μνήμης... 4 Μονάδα Εισόδου - Εξόδου... 5 Μονάδα ελέγχου... 5 Ρεπερτόριο Εντολών «ΑΒΑΚΑ»... 6 Φάση

Διαβάστε περισσότερα

Μάθημα 4.1 Βασικές μονάδες προσωπικού υπολογιστή

Μάθημα 4.1 Βασικές μονάδες προσωπικού υπολογιστή Μάθημα 4.1 Βασικές μονάδες προσωπικού υπολογιστή - Εισαγωγή - Αρχιτεκτονική προσωπικού υπολογιστή - Βασικά τμήματα ενός προσωπικού υπολογιστή - Η κεντρική μονάδα Όταν ολοκληρώσεις το μάθημα αυτό θα μπορείς:

Διαβάστε περισσότερα

Τεχνολογικό Eκπαιδευτικό Ίδρυμα Kρήτης TMHMA MHXANOΛOΓIAΣ. Δρ. Φασουλάς Γιάννης

Τεχνολογικό Eκπαιδευτικό Ίδρυμα Kρήτης TMHMA MHXANOΛOΓIAΣ. Δρ. Φασουλάς Γιάννης Τεχνολογικό Eκπαιδευτικό Ίδρυμα Kρήτης TMHMA MHXANOΛOΓIAΣ Δρ. Φασουλάς Γιάννης jfasoulas@staff.teicrete.gr Θα μάθετε: Έννοιες που σχετίζονται με την μετατροπή μεταξύ αναλογικών και ψηφιακών σημάτων Πώς

Διαβάστε περισσότερα

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Τμήμα Λογιστικής Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Μάθημα 8 Κεντρική Μονάδα Επεξεργασίας και Μνήμη 1 Αρχιτεκτονική του Ηλεκτρονικού Υπολογιστή Μονάδες Εισόδου Κεντρική

Διαβάστε περισσότερα

Οδηγίες χρήσης DC UPS SC-313 DC UPS SC-616

Οδηγίες χρήσης DC UPS SC-313 DC UPS SC-616 Οδηγίες χρήσης DC UPS SC-313 DC UPS SC-616 Σας ευχαριστούμε που επιλέξατε το DC UPS. Πριν λειτουργήσετε αυτό το UPS, παρακαλώ διαβάστε προσεκτικά τις οδηγίες χρήσης για να επιτύχετε την καλύτερη δυνατή

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ 1.1 ΕΙΣΑΓΩΓΙΚΗ ΑΝΑΦΟΡΑ ΣΤΑ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ 1 1.1.1 Σήματα ψηφιακών συστημάτων 1 1.1.2 Παράλληλη και σειριακή μεταφορά πληροφορίας 2 1.1.3 Λογική τριών

Διαβάστε περισσότερα

ΣΥΝΘΕΤΑ ΣΥΣΤΗΜΑΤΑ ΑΥΤΟΜΑΤΙΣΜΟΥ. Μετά την ολοκλήρωση της ενότητας αυτής θα μπορείτε:

ΣΥΝΘΕΤΑ ΣΥΣΤΗΜΑΤΑ ΑΥΤΟΜΑΤΙΣΜΟΥ. Μετά την ολοκλήρωση της ενότητας αυτής θα μπορείτε: Ενότητα 2.6 Κεφάλαιο 2 ΣΥΝΘΕΤΑ ΣΥΣΤΗΜΑΤΑ ΑΥΤΟΜΑΤΙΣΜΟΥ ΣΤΟΧΟΙ Μετά την ολοκλήρωση της ενότητας αυτής θα μπορείτε: Να αιτιολογείτε την αναγκαιότητα χρησιμοποίησης κάθε είδους αυτοματισμού. Να διακρίνετε

Διαβάστε περισσότερα

ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΣΕΙΡΙΑΚΗ ΠΡΟΣΘΕΣΗ

ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΣΕΙΡΙΑΚΗ ΠΡΟΣΘΕΣΗ ΑΣΠΑΙΤΕ ΤΜΗΜΑ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΗΛΕΚΤΡΟΛΟΓΙΑΣ & ΗΛΕΚΤΡΟΝΙΚΗΣ ΕΡΓΑΣΤΗΡΙΟ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ & μ-υπολογιστων ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΣΕΙΡΙΑΚΗ ΠΡΟΣΘΕΣΗ Θεωρητικό Μέρος Οι σειριακές λειτουργίες είναι πιο

Διαβάστε περισσότερα

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων Εργαστήριο ενσωματωμένων συστημάτων Παρουσίαση 2: Βασικός Προγραμματισμός Arduino (AVR) Εργαστήριο Αυτομάτου Ελέγχου Η πλατφόρμα Arduino UNO Microcontroller: ATmega328 Operating Voltage: 5V Digital I/O

Διαβάστε περισσότερα

Περιεχόµενα. I Βασικές Γνώσεις 1

Περιεχόµενα. I Βασικές Γνώσεις 1 Περιεχόµενα I Βασικές Γνώσεις 1 1 Μοντελοποίηση Προγραµµάτων 3 1.1 Ψευδογλώσσα....................... 6 1.2 Διαγράµµατα Ροής..................... 6 1.3 Παραδείγµατα σε Ψευδογλώσσα και Διαγράµµατα Ροής.

Διαβάστε περισσότερα

Εισαγωγή στην πληροφορική

Εισαγωγή στην πληροφορική Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στην πληροφορική Ενότητα 2: Βασικές αρχές λειτουργίας και χρήσης του υπολογιστή Αγγελίδης Παντελής Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Διαβάστε περισσότερα

Ψηφιακή Λογική Σχεδίαση

Ψηφιακή Λογική Σχεδίαση Ψηφιακή Λογική Σχεδίαση Επιμέλεια: Γεώργιος Θεοδωρίδης, Επίκουρος Καθηγητής Ανδρέας Εμερετλής, Υποψήφιος Διδάκτορας Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Σημείωμα Αδειοδότησης Το παρόν

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ. Β Γυμνασίου Σχολικό έτος

ΠΛΗΡΟΦΟΡΙΚΗ. Β Γυμνασίου Σχολικό έτος ΠΛΗΡΟΦΟΡΙΚΗ Β Γυμνασίου Σχολικό έτος 2009-2010 Γνωρίζω το υπολογιστή ως ενιαίο σύστημα Ψηφιακός Κόσμος Το Εσωτερικό του Υ. Σ. Πολυμέσα Δίκτυα Η / Υ Ψηφιακός Κόσμος Ψηφιακό Αναλογικό Με τον όρο Ψηφιακό

Διαβάστε περισσότερα

Μάθημα 4.7 Θύρες περιφερειακών

Μάθημα 4.7 Θύρες περιφερειακών Μάθημα 4.7 Θύρες περιφερειακών - Εισαγωγή - Η σειριακή θύρα - Η παράλληλη θύρα - Οι θύρες πληκτρολογίου και ποντικιού τύπου PS/2 - Ο διάδρομος USB Όταν ολοκληρώσεις το μάθημα αυτό θα μπορείς: Να αναφέρεις

Διαβάστε περισσότερα