Preview only show first 10 pages with watermark. For full document please download

πτυχιακή εργασία τμήματος μηχανικών πληροφορικής σδυνολογικο δκπαιγδτσικο ιγρτμα κρηση΢ ΢σολή σεσνολογικών δθαπμογών

   EMBED


Share

Transcript

Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής ΣΔΥΝΟΛΟΓΙΚΟ ΔΚΠΑΙΓΔΤΣΙΚΟ ΙΓΡΤΜΑ ΚΡΗΣΗ΢ ΢σολή Σεσνολογικών Δθαπμογών Σμήμα Δθαπμοζμένηρ Πληποθοπικήρ & Πολςμέζυν Πηπρηαθή Δξγαζία Τίηινο: ΢σεδίαζη και ανάπηςξη μεηευπολογικού ζηαθμού με ηη σπήζη μονάδυν Arduino και Android εθαπμογήρ Μαθξπγηαλλάθεο Δκκαλνπήι ( ΑΜ : 1572 ) Δπηβιέπσλ θαζεγεηήο : PH.D Βιεζίδεο Αλδξέαο Δπηηξνπή Αμηνιόγεζεο : PH.D Βιεζίδεο Αλδξέαο PH.D Παλαγησηάθεο Σπύξνο PH.D Σηξαηάθεο Γεκήηξηνο Ηκεξνκελία παξνπζίαζεο : 17/9/2014 Σελίδα 1 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Δςσαπιζηίερ Αξρηθά ζα ήζεια λα επραξηζηήζσ ηνλ θύξην Αλδξέα Βιεζίδε ν νπνίνο ήηαλ εηζεγεηήο ηεο πηπρηαθήο κνπ εξγαζίαο, ν όπνηνο κε θαζνδήγεζε θαη ππνζηήξημε ζε όια ηα ζεκεία θαη ζηάδηα ηεο πηπρηαθήο κνπ. Ιδηαίηεξεο επραξηζηίεο ζηνπο ζπκθνηηεηέο πνπ ζπλεξγαζηήθακε Φξαγθηαδάθε Μηράιε , Βαζηιάθε Γηώξγν, Φαξαθόπνπιν Σηαύξν, Γνύλαξε Γηώξγν Δπραξηζηώ όινπο ηνπο ζπλαδέιθνπο κνπ, ζηελ εηαηξία πνπ εξγάδνκαη (TOPHOST.gr) Δηδηθόηεξα γηα ζπγθεθξηκέλε βνήζεηα ηνπο Γελεηδάθε Μαλώιε (βνήζεηα ζηνλ administration ηνπ server), Καδαληδάθε Νηθν (arduino ), Τζαγθαξάθε Γηάλλε (Web εθαξκνγή), Γεκεηξίνπ Κώζηαο (Installation Server), Δπραξηζηώ επίζεο όια ηα παηδηά πνπ είρα ηελ ηηκή λα ζπλεξγαζηώ θαη λα βνεζήζσ ζην εξγαζηήξην πνύ είλαη ππεύζπλνο ν θύξηνο Αλδξέαο Βιεζίδεο. Έλα κεγάιν επραξηζηώ γηα ηνλ ηκήκα Μεραληθώλ Πιεξνθνξηθήο πνπ κνπ πξνζέθεξε ηνλ ρώξν αιιά θαη ηα πιηθά λα πινπνηήζσ ηελ πηπρηαθή κνπ. Σελίδα 2 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής ΢ύνοτη Οη κεηεσξνινγηθνί ζηαζκνί έρνπλ γίλεη πιένλ αλαπόζπαζην θνκκάηη ηεο θαζεκεξηλήο δσήο ηνπ αλζξώπνπ, ηόζν γηα ηελ επίβιεςε αιιά θαη ηελ παξαηήξεζε ησλ θπζηθώλ θαηλνκέλσλ ζηελ γε. Η πηπρηαθή απηή εξγαζία έρεη ζθνπό ηελ αλάπηπμε ελόο κεηεσξνινγηθνύ ζηαζκνύ αιιά θαη ησλ επηκέξνπο εθαξκνγώλ γηα ηνλ ρεηξηζκό, ηελ επεμεξγαζία αιιά θαη ηελ πξνβνιή ησλ δεδνκέλσλ ηνπ κεηεσξνινγηθνύ ζηαζκνύ. Οη εθαξκνγέο απηέο, ζα δίλνπλ ηελ δπλαηόηεηα ζηνλ ρξήζηε ηελ άκεζε παξαθνινύζεζε ησλ ηηκώλ ηνπ κεηεσξνινγηθνύ ζηαζκνύ, ηελ ζύγθξηζε κεηαμύ άιισλ ζηαζκώλ, αιιά θαη ηελ παξακεηξνπνίεζε ησλ εηδνπνηήζεσλ πνπ ζα κπνξεί λα ιάβεη έλαο ρξήζηεο ησλ εθαξκνγώλ. Σελίδα 3 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Abstract Meteorological stations have become an integral part of everyday human life, for the supervision and observation of natural phenomena on earth. This thesis is to develop a meteorological station and the individual applications for handling, processing and displaying the data of the meteorological station. These applications will give the user the current values of the weather station, and the necessary tools for the comparison between other weather stations. An end user with fullaccess, he can extract data from the database and determine the alerts of the application. Σελίδα 4 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Πεπιεσόμενα 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ΢ελίδα Δπραξηζηίεο Σύλνςε Abstract Πεξηερόκελα Πίλαθαο εηθόλσλ Δηζαγσγή 6.1. Ιζηνξία 6.2. Πεξίιεςε 6.3. Κίλεηξν γηα ηελ Γηεμαγσγή ηεο Δξγαζίαο 6.4. Σθνπόο θαη Σηόρνη Δξγαζίαο Γνκή Δξγαζίαο 7.1. Γεληθά 7.2. Δμνπιηζκόο Αλάπηπμεο Πιαηθόξκαο 7.2.1. Δμππεξεηεηήο (Server) 7.2.2. Arduino 7.2.3. Arduino Ethernet Shield 7.2.4. Weather Meters 7.2.5. Barometric Pressure Sensor MPL115A1 7.2.6. DHT11 temperature and humidity sensor 7.2.7. Mini Photocell(LDR) 7.3. Πξνγξακκαηηζκόο ηνπ Arduino 7.4. Datalogger Οη εθαξκνγέο 8.1. Τη είλαη ε PHP 8.2. Τη είλαη ε Ηtml 8.3. Τη είλαη ην Ajax 8.4. Τη είλαη ην Javascript-JQuery 8.5. Τη είλαη ε MySQL 8.6. Τη είλαη Notepad++ 8.7. Τη είλαη ην Eclipse; Οη δπλαηόηεηεο ηεο Web Δθαξκνγήο 9.1. Live data 9.2. Γξαθήκαηα 9.3. Μελνύ δηαρείξηζεο 9.3.1. Λήςε δεδνκέλσλ 9.3.2. Δηδνπνηήζεηο. 9.4. Τερληθέο ιεπηνκέξεηεο θαη Πιεξνθνξίεο Android Δθαξκνγή Απνηειέζκαηα 11.1. Σπκπεξάζκαηα 11.2. Μειινληηθή Δξγαζία θαη Δπεθηάζεηο Βηβιηνγξαγία Σελίδα 5 2 3 4 5 6 7 7 8 8 8 9 10 11 11 14 15 16 16 17 18 19 23 25 25 25 26 26 27 27 28 29 29 30 31 31 32 32 33 34 34 34 35 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Πίνακαρ εικόνυν 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. ΢ελίδα Δηθόλα 1 Ο ΜΣ Νάμνπ, από ηνπο αξραηόηεξνπο ζηελ Διιάδα. Αλαγέξζεθε ην 1951 Δηθόλα 2 Σρεδηάγξακκα Δξγαζίαο Δηθόλα 3 Πεξηβάιινλ δηαρείξηζεο Server Δηθόλα 4 Πεξηβάιινλ δηαρείξηζεο ISPConfig 3 Δηθόλα 5 Πεξηβάιινλ δηαρείξηζεο FTP Δηθόλα 6 Πεξηβάιινλ δηαρείξηζεο MySql Δηθόλα 7 Arduino Δηθόλα 8 Ethernet Shield Δηθόλα 9 Wind Speed Dir Rain Δηθόλα 10 MPL115A1 Δηθόλα 11 DHT11 Δηθόλα 12 LDR Δηθόλα 13 Παξάδεηγκα θώδηθα ETHERNET Shield Δηθόλα 14 Παξάδεηγκα θώδηθα MPL115A1 Δηθόλα 15 Παξάδεηγκα θώδηθα αηζζεηεξίσλ αλέκνπ θαη βξνρήο Δηθόλα 16 Παξάδεηγκα θώδηθα δηεύζπλζεο αλέκνπ Δηθόλα 17 Παξάδεηγκα θώδηθα ζεξκνθξαζίαο πγξαζίαο Δηθόλα 18 Δπηινγέο ξπζκίζεηο ηνπ παιαηόηεξνπ ΜΣ Δηθόλα 19 datalogger DL2 Δηθόλα 20 Δπηηπρήο ζύλδεζε θαη απνζηνιή δεδνκέλσλ Δηθόλα 21 Γεδνκέλα Δηθόλα 22 Τα δεδνκέλα ηεο ηειεπηαίαο ώξαο Δηθόλα 23 γξαθήκαηα ΜΣ arduino Δηθόλα 24 Σπλδπαζηηθά δεδνκέλα Δηθόλα 25 Μελνύ εηζόδνπ Δηθόλα 26 Δπηινγήο εκεξνκεληώλ Δηθόλα 27 Δπεμεξγαζία εηδνπνηήζεσλ Δηθόλα 28 δεδνκέλα android εθαξκνγήο. Δηθόλα 29 Γξαθήκαηα android Σελίδα 6 7 9 11 12 13 13 14 15 16 16 17 18 19 19 20 21 21 22 23 24 29 29 30 30 31 31 32 33 33 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Διζαγυγή Ιζηοπία Τν ελδηαθέξνλ ηνπ αλζξώπνπ γηα ηελ κειινληηθή γλώζε ηνπ θαηξνύ είλαη ηόζν παιαηό, ώζηε ράλεηαη ζηα βάζε ησλ κπζνινγηθώλ αηώλσλ. Αξραίνη ιανί όπσο Ιλδνί, Αηγύπηηνη, Αζζύξηνη, Βαβπιώληνη, θ.ιπ. παξαηεξνύζαλ ηα δηάθνξα θαηλόκελα θαη θαηά ηηο δπλάκελεο αληηιήςεηο ηνπο ηα ελζσκάησλαλ ζηηο δηάθνξεο δνμαζίεο ηνπο. Όκσο απηέο νη πξνβιέςεηο πνπ ζηεξίδνληαλ θπξίσο ζηνπο αζηέξεο ήηαλ αηειείο. Ωζηόζν όκσο ήηαλ ρξήζηκεο ζηηο θύξηεο ηόηε αζρνιίεο ηνπο, ζηε γεσξγία θαη ηελ θηελνηξνθία. Οη αξραίνη όκσο Έιιελεο πνπ εμ αλάγθεο βξέζεθαλ, κεηά ηνπο ηξεηο θαηαθιπζκνύο ηνπ αξραίνπ ειιαδηθνύ ρώξνπ, λα αλαπηύζζνπλ ηελ Ναπηηιία όρη κόλν ζπκπιήξσλαλ ηηο παξαηεξήζεηο ηνπο δίλνληαο αιιεγνξηθέο εξκελείεο αιιά έθζαζαλ θαη λα ηηο θσδηθνπνηνύλ. Η Διιεληθή Μπζνινγία είλαη πινύζηα ζε ηέηνηα παξαδείγκαηα.(3) Από ηελ κειέηε ησλ θεηκέλσλ ησλ αξραίσλ Διιήλσλ ζνθώλ θαη κεηεσξνιόγσλ ζπλάγεηαη ην ζπκπέξαζκα όηη από ηνλ 5ν αηώλα π.Φ. νη Έιιελεο ζπλέρηζαλ ηηο αληίζηνηρεο πξνζπάζεηεο ησλ πξναλαθεξνκέλσλ ιαώλ. Σπγθεθξηκέλα ν Αξηζηνηέιεο, γύξσ ζην 350 π.Φ., δεκνζίεπζε 4 επκεγέζε βηβιία πνπ ηα νλόκαζε "Μεηεσξνινγηθά". Σ΄ απηό ην πειώξην θαη΄ έθηαζε θαη ζπνπδαηόηεηα έξγν, ζπλέιεμε όιεο ηηο γλσζηέο ηόηε παξαηεξήζεηο - γλώζεηο όρη κόλν γηα ηνλ θαηξό αιιά θαη γηα ηελ ζάιαζζα θαη ηνλ Οπξαλό. Τα "Μεηεσξνινγηθά" ηνπ Αξηζηνηέιε γηα δύν ρηιηάδεο ρξόληα απεηέιεζαλ ην πξόηππν δηδαθηηθό βηβιίν ηεο Μεηεσξνινγίαο θαη όρη κόλν. Δικόνα 1 Ο Μ΢ Νάξος, από ηοςρ απσαιόηεποςρ ζηην Δλλάδα. Αναγέπθηκε ηο 1951 Σελίδα 7 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Πεπίλητη Η ηδέα ηεο πηπρηαθήο απηήο, δεκηνπξγήζεθε από ηηο αλάγθεο ηνπ εξγαζηεξίνπ γηα έλαλ επέιηθην αιιά θαη θηελό ζε ζπληήξεζε κεηεσξνινγηθό ζηαζκό. Δπίζεο αλαπηύρζεθαλ νη θαηάιιειεο web θαη mobile εθαξκνγέο γηα ηελ επεμεξγαζία αιιά θαη ηελ πξνβνιή ησλ δεδνκέλσλ. Οη εθαξκνγέο πνπ αλαπηύρζεθαλ δίλνπλ ηελ δπλαηόηεηα ζην ρξήζηε λα έρεη άκεζε πξόζβαζε ζηηο ηειεπηαίεο ηηκέο ζηνπ κεηεσξνινγηθνύ ζηαζκνύ. Δπίζεο ππάξρεη ε δπλαηόηεηα ρξήζεο ησλ επηκέξνπο ραξαθηεξηζηηθώλ ησλ εθαξκνγώλ, όπσο γηα παξάδεηγκα ε αλαπαξάζηαζε ηεο κεηαβνιήο ησλ δεδνκέλσλ ησλ ηειεπηαίσλ εηθνζηηεζζέξσλ σξώλ πνπ έρεη θαηαγξάςεη ν κεηεσξνινγηθόο ζηαζκόο ζε γξαθηθή παξάζηαζε. Κίνηηπο για ηην Γιεξαγυγή ηηρ Δπγαζίαρ Η δεκηνπξγία ελόο πξνζηηνύ νηθνλνκηθά θαη εύθνια πξνγξακκαηηδόκελνπ κεηεσξνινγηθνύ ζηαζκνύ. ΢κοπόρ και ΢ηόσοι Δπγαζίαρ Κύξηνο ζηόρνο ηεο εξγαζίαο είλαη, ε θαηαλόεζε ηεο ιεηηνπξγίαο ελόο κεηεσξνινγηθνύ ζηαζκνύ, ώζηε λα δεκηνπξγεζεί έλαο κεηεσξνινγηθόο ζηαζκόο ν νπνίνο λα είλαη εύθνια παξακεηξνπνηήζηκνο. Η εύθνιε πξνζζήθε αηζζεηεξίσλ αιιά θαη ε νξγάλσζε ηνπ, ώζηε λα θαηαθέξνπκε λα έρνπκε εύθνιε αληηθαηάζηαζε αηζζεηήξησλ αιιά θαη ρακειό θόζηνο ιεηηνπξγηθόηεηαο. Με ηελ δεκηνπξγία επίζεο ησλ επηκέξνπο εθαξκνγώλ ν ρξήζηεο ζα κπνξεί λα γλσξίζεη ηα ηειεπηαία δεδνκέλα αιιά θαη λα επηβιέπεη ηνλ θαηξό ζηελ πεξηνρή πνπ έρεη εγθαηαζηαζεί. Σελίδα 8 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Γομή Δπγαζίαρ Η εξγαζία ρσξίδεηε ζε ηξία θύξηα κέξε. Δικόνα 2 ΢σεδιάγπαμμα Δπγαζίαρ Σην πξώην κέξνο δεκηνπξγήζεθε ν εμππεξεηεηήο ν νπνίνο ζα ζπγθεληξώλεη ηα δεδνκέλα ηνπ κεηεσξνινγηθνύ ζηαζκνύ ζε κία βάζε δεδνκέλσλ. Τν δεύηεξν κέξνο αθνξά ηελ αλάπηπμε θαη ηελ θαηαζθεπή ηνπ κεηεσξνινγηθνύ ζηαζκνύ, κε ηνλ νπνίν ζα κπνξέζνπκε λα θαηαγξάςνπκε ηα κεηεσξνινγηθά δεδνκέλα. Σην ηξίην θαη ηειεπηαίν θνκκάηη, είλαη ε δεκηνπξγία θαη αλάπηπμε ησλ εθαξκνγώλ κε ηηο νπνίεο ζα κπνξέζεη ν ρξήζηεο λα ρξεζηκνπνηήζεη ηα δεδνκέλα απηά. Σελίδα 9 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Γενικά Ο Μεηεσξνινγηθόο ζηαζκόο είλαη έλα επίγεην ζεκείν ζην νπνίν πξαγκαηνπνηνύληαη ηαθηηθέο κεηεσξνινγηθέο παξαηεξήζεηο. Πξόθεηηαη γηα επαλδξσκέλε κόληκε εγθαηάζηαζε (θηηξηαθή) ζηελ νπνία θέξνληαη πνιιά κεηεσξνινγηθά όξγαλα, ηόζν κέζα ζε κεηεσξνινγηθό θισβό είηε εθηόο απηνύ ζηνλ πέξημ ρώξν είηε θαη εληόο απηνύ, όπσο επαλαιήπηεο κεηεσξνινγηθώλ νξγάλσλ. Η ζέζε αλέγεξζεο απηώλ ησλ ζηαζκώλ νξίδεηαη από ηε θεληξηθή Δζληθή Μεηεσξνινγηθή Υπεξεζία ηεο θάζε Φώξαο έηζη ώζηε ζην ζύλνιό ηνπο απηνί λα απνηεινύλ έλα εληαίν δίθηπν κεηεσξνινγηθήο παξαηήξεζεο. (2) Καζέλαο Μεηεσξνινγηθόο ζηαζκόο θέξεη δηεζλή αξηζκό ηαπηόηεηαο κε ηνλ νπνίν θαη απεηθνλίδεηαη ζηνπο κεηεσξνινγηθνύο ράξηεο. Οη Μεηεσξνινγηθνί ζηαζκνί επαλδξώλνληαη από επηζηεκνληθό πξνζσπηθό ή εηδηθά εθπαηδεπκέλν γηα ηηο αλάγθεο ησλ παξαηεξήζεσλ. Σηελ Διιάδα Μεηεσξνινγηθνί ζηαζκνί ππάξρνπλ ζηηο θπξηόηεξεο πόιεηο, ζηνπο κεγάινπο ιηκέλεο θαη ζε όια ηα αεξνδξόκηα ηεο Φώξαο. Από ηνπο Σηαζκνύο απηνύο κεηαβηβάδνληαη ζε ηαθηά ρξνληθά δηαζηήκαηα νη παξαηεξνύκελεο ελδείμεηο ησλ θεξνκέλσλ νξγάλσλ κε εηδηθό θσδηθνπνηεκέλν ηύπν ζήκαηνο. Οη ζεκαηηθέο απηέο αλαθνξέο ησλ κεηεσξνινγηθώλ ζηαζκώλ ζηε θεληξηθή ππεξεζία θαηαρσξνύληαη ζηνπο ππό ζύληαμε κεηεσξνινγηθνύο ράξηεο ηεο επξύηεξεο πεξηνρήο, από ηε κειέηε ησλ νπνίσλ εμάγνληαη ζπκπεξάζκαηα πξόβιεςεο θαηξνύ. Δπίζεο κεηεσξνινγηθνί ζηαζκνί ζεσξνύληαη πέξαλ ησλ εηδηθώλ επηζηεκνληθήο έξεπλαο πινίσλ θαη όια εθείλα πνπ θέξνπλ κεηεσξνινγηθό θισβό θαη θαηαγξάθνπλ ηαθηέο κεηεσξνινγηθέο παξαηεξήζεηο. Καη απηά θέξνπλ ηδηαίηεξνπο θσδηθνύο αξηζκνύο κε ηνπο νπνίνπο θαη ππνβάινπλ "κέηεν-ζήκαηα" ζηε θεληξηθή κεηεσξνινγηθή ππεξεζία ηεο εγγύηεξεο Φώξαο ηνπ ρώξνπ πνπ δηαπιένπλ ή ζε δηεζλή κεηεσξνινγηθή ππεξεζία αλ βξίζθνληαη ζε Ωθεαλνύο. Οη κεηεσξνινγηθνί ζηαζκνί ζηνπο νπνίνπο είρακε πξόζβαζε, καο παξείραλ όιεο ηηο απαξαίηεηεο πιεξνθνξίεο γηα ηνλ πξνγξακκαηηζκό ηνπ κεηεσξνινγηθνύ καο ζηαζκνύ. Η πιαηθόξκα arduino, ζηελ όπνηα βαζίζηεθε ε εξγαζία, καο παξείρε όια ηα απαξαίηεηα εξγαιεία γηα ηελ ζπιινγή ησλ δεδνκέλσλ. Σελίδα 10 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Δξοπλιζμόρ Ανάπηςξηρ Πλαηθόπμαρ Δξςπηπεηηηήρ (Server) Δμππεξεηεηήο(4) ή δηαθνκηζηήο (αγγι.: server) είλαη πιηθό ή / θαη ινγηζκηθό πνπ αλαιακβάλεη ηελ παξνρή δηάθνξσλ ππεξεζηώλ, «εμππεξεηώληαο» αηηήζεηο άιισλ πξνγξακκάησλ, γλσζηνύο σο πειάηεο (clients) πνπ κπνξνύλ λα ηξέρνπλ ζηνλ ίδην ππνινγηζηή ή ζε ζύλδεζε κέζσ δηθηύνπ. Όηαλ έλαο ππνινγηζηήο εθηειεί θπξίσο ηέηνηα πξνγξάκκαηα εμππεξεηεηέο ζπλερόκελα, 24 ώξεο ηελ εκέξα, ηόηε κπνξνύκε λα αλαθεξζνύκε ζε όινλ ηνλ ππνινγηζηή σο εμππεξεηεηή, αθνύ απηή είλαη ε θύξηα ιεηηνπξγία ηνπ. Παξνκνίσο, σο πειάηε κπνξνύκε λα ζεσξήζνπκε είηε θάπνην ινγηζκηθό πνπ επηθνηλσλεί θαη ππνβάιεη αηηήκαηα ζηνλ εμππεξεηεηή, είηε ζε όιν ηνλ ππνινγηζηή όηαλ ν εμππεξεηεηήο είλαη άιινο ππνινγηζηήο θαη νη 2 ππνινγηζηέο είλαη ζπλδεδεκέλνη ζε έλα δίθηπν. Σηελ εξγαζία ν εμππεξεηεηήο καο είλαη έλαο ππνινγηζηήο κε επεμεξγαζηή Intel(R) Core(TM)2 Duo CPU E4500 @ 2.20GHz, 2 GB RAM θαη ζθιεξό δίζθν 200GB. Τν ιεηηνπξγηθό ζύζηεκα ην νπνίν εγθαηαζηάζεθε γηα ηελ πιήξε αμηνπνίεζε ησλ δπλαηνηήησλ ελόο εμππεξεηεηή είλαη ην Ubuntu 12.04.4 LTS(5) (GNU/Linux 3.11.0-15-generic x86_64). Δπίζεο γηα ηελ δεκηνπξγία θαη δηαρείξηζε όισλ ην απαξαίηεησλ ππεξεζηώλ πνπ ρξεηάδνληαη γηα ηελ ζσζηή ιεηηνπξγία ηεο εθαξκνγήο καο αιιά θαη ηηο θαηαγξαθείο ησλ δεδνκέλσλ ηνπ κεηεσξνινγηθνύ ζηαζκνύ , εγθαηαζηάζεθε ην ISPConfig 3. Δικόνα 3 Πεπιβάλλον διασείπιζηρ Server Σελίδα 11 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Τν ISPConfig 3(6) είλαη κία πιαηθόξκα αλνηρηνύ θώδηθα, ε νπνία καο δίλεη ηελ δπλαηόηεηα λα δηαρεηξηζηνύκε ηηο ππεξεζίεο ελόο εμππεξεηεηή. Οη ππεξεζίεο ελόο εμππεξεηεηή κπνξεί γηα παξάδεηγκα λα είλαη Web,FTP,SMTP,POP3,IMAP,DNS,mySQL. Σηελ εξγαζία καο νη ππεξεζίεο πνπ ρξεζηκνπνηήζακε είλαη, ε Web ε FTP θαη ε mySQL ππεξεζία . Δικόνα 4 Πεπιβάλλον διασείπιζηρ ISPConfig 3 Ο ApacheHTTP(7) γλσζηόο θαη σο Apache είλαη έλαο εμππεξεηεηήο ηνπ παγθόζκηνπ ηζηνύ (web). Όπνηε έλαο ρξήζηεο επηζθέπηεηαη έλα ηζηόηνπν ην πξόγξακκα πινήγεζεο (browser) επηθνηλσλεί κε έλαλ δηαθνκηζηή(server) κέζσ ηνπ πξσηνθόιινπ HTTP, ν νπνίνο παξάγεη ηηο ηζηνζειίδεο θαη ηηο απνζηέιιεη ζην πξόγξακκα πινήγεζεο. O Apache είλαη έλαο από ηνπο δεκνθηιέζηεξνπο εμππεξεηεηέο ηζηνύ, ελ κέξεη γηαηί ιεηηνπξγεί ζε δηάθνξεο πιαηθόξκεο όπσο ηα Windows, ην Linux, ην Unix θαη ην Mac OS X. Κπθινθόξεζε ππό ηελ άδεηα ινγηζκηθνύ Apache θαη είλαη ινγηζκηθό αλνηρηνύ θώδηθα. Σπληεξείηαη από κηα θνηλόηεηα αλνηθηνύ θώδηθα κε επηηήξεζε από ην Ίδξπκα Λνγηζκηθνύ Apache (Apache Software Foundation). Η ππεξεζία web καο πξνζέθεξε ηελ δπλαηόηεηα πινπνίεζεο ηεο εθαξκνγήο ζηε νπνία ν ρξήζηεο ζα είρε πξόζβαζε ζηα δεδνκέλα ηα νπνία ζηέιλεη ν κεηεσξνινγηθόο ζηαζκόο ζηνλ server. Σελίδα 12 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Τν File Transfer Protocol (FTP), (ειιεληθά: Πξσηόθνιιν Μεηαθνξάο Αξρείσλ) είλαη έλα επξέσο ρξεζηκνπνηνύκελν πξσηόθνιιν ζε δίθηπα ηα νπνία ππνζηεξίδνπλ ην πξσηόθνιιν TCP/IP (δίθηπα όπσο internet ή intranet). Ο ππνινγηζηήο πνπ ηξέρεη εθαξκνγή FTP client κόιηο ζπλδεζεί κε ηνλ server κπνξεί λα εθηειέζεη έλα πιήζνο δηεξγαζηώλ όπσο αλέβαζκα αξρείσλ ζηνλ server, θαηέβαζκα αξρείσλ από ηνλ server, κεηνλνκαζία ή δηαγξαθή αξρείσλ από ηνλ server θ.ν.θ. Τν πξσηόθνιιν είλαη έλα αλνηρηό πξόηππν. Δίλαη δπλαηό θάζε ππνινγηζηήο πνπ είλαη ζπλδεδεκέλνο ζε έλα δίθηπν, λα δηαρεηξίδεηαη αξρεία ζε έλα άιιν ππνινγηζηή ηνπ δηθηύνπ, αθόκε θαη εάλ ν δεύηεξνο δηαζέηεη δηαθνξεηηθό ιεηηνπξγηθό ζύζηεκα. Με ην πξσηόθνιιν επηθνηλσλίαο FTP αλεβάζακε ηα απαξαίηεηα αξρεία γηα ηελ ιεηηνπξγία ηεο εθαξκνγήο. Δικόνα 5 Πεπιβάλλον διασείπιζηρ FTP Η MySQL(17) είλαη έλα ζύζηεκα δηαρείξηζεο ζρεζηαθώλ βάζεσλ δεδνκέλσλ πνπ κεηξά πεξηζζόηεξεο από 11 εθαηνκκύξηα εγθαηαζηάζεηο. Έιαβε ην όλνκά ηεο από ηελ θόξε ηνπ Μόληπ Βηληέληνπο, ηε Μάη (αγγι. My). Τν πξόγξακκα ηξέρεη έλαλ εμππεξεηεηή (server) παξέρνληαο πξόζβαζε πνιιώλ ρξεζηώλ ζε έλα ζύλνιν βάζεσλ δεδνκέλσλ. Δικόνα 6 Πεπιβάλλον διασείπιζηρ MySql Σελίδα 13 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Arduino Δικόνα 7 Arduino Τν Arduino(8,9) είλαη κηα ππνινγηζηηθή πιαηθόξκα βαζηζκέλε ζε κηα απιή κεηξηθή πιαθέηα αλνηθηνύ θώδηθα, κε ελζσκαησκέλν κηθξνειεγθηή θαη εηζόδνπο/εμόδνπο, θαη ε νπνία κπνξεί λα πξνγξακκαηηζηεί κε ηε γιώζζα Wiring (νπζηαζηηθά πξόθεηηαη γηα ηε γιώζζα πξνγξακκαηηζκνύ C++ θαη έλα ζύλνιν από βηβιηνζήθεο, πινπνηεκέλεο επίζεο ζηελ C++ ). Τν Arduino κπνξεί λα ρξεζηκνπνηεζεί γηα ηελ αλάπηπμε αλεμάξηεησλ δηαδξαζηηθώλ αληηθεηκέλσλ αιιά θαη λα ζπλδεζεί κε ππνινγηζηή κέζσ πξνγξακκάησλ ζε Processing, Max/MSP, Pure Data, SuperCollider. Οη πεξηζζόηεξεο εθδόζεηο ηνπ Arduino κπνξνύλ λα αγνξαζηνύλ πξν-ζπλαξκνινγεκέλεο, ην δηάγξακκα θαη πιεξνθνξίεο γηα ην πιηθό είλαη ειεύζεξα δηαζέζηκα γηα απηνύο πνπ ζέινπλ λα ζπλαξκνινγήζνπλ ην Arduino κόλνη ηνπο. Υπάξρνπλ πνιινί άιινη κηθξνειεγθηέο θαη πιαηθόξκεο κηθξνειεγθηώλ πνπ είλαη δηαζέζηκα γηα physical computing, όπσο γηα παξάδεηγκα νη Parallax Basic Stamp, Netmedia ηνπ BX-24, Phidgets, Handyboard ηνπ MIT, θαη πνιινί άιινη πνπ πξνζθέξνπλ παξόκνηα ιεηηνπξγηθόηεηα. Τν Arduino απινπνηεί ηε δηαδηθαζία ηεο εξγαζίαο καο κε ηνπο κηθξνειεγθηέο. Έλα ζεκαληηθό πιενλέθηεκα ηνπ, είλαη όηη είλαη ηόζν απιό πνπ κπνξεί λα ρξεζηκνπνηεζεί από ηνπο εθπαηδεπηηθνύο, ηνπο καζεηέο, αιιά θαη από εξαζηηέρλεο πνπ δελ έρνπλ ηελ θαηάιιειε εκπεηξία κε ηα πξνεγνύκελα ζπζηήκαηα πνπ αλαθέξνπκε. Οη Arduino πιαθέηεο είλαη ζρεηηθά θζελέο ζε ζύγθξηζε κε άιιεο πιαηθόξκεο κηθξνειεγθηώλ. Οη ιηγόηεξν αθξηβέο εθδόζεηο ηνπ Arduino κπνξεί λα ζπλαξκνινγεζνύλ ζην ρέξη, θαη αθόκε ηα πξν-ζπλαξκνινγεκέλα Arduino θνζηίδνπλ ιηγόηεξν από € 45 Τν ινγηζκηθό ηνπ Arduino κπνξεί λα εγθαηαζηαζεί ζε Windows, Macintosh OSX θαη Linux ιεηηνπξγηθά ζπζηήκαηα. Τα πεξηζζόηεξα ζπζηήκαηα κηθξνειεγθηή πεξηνξίδεηαη ζηα Windows. Τν πεξηβάιινλ πξνγξακκαηηζκνύ Arduino είλαη εύθνιν ζηε ρξήζε γηα αξράξηνπο, αιιά είλαη θαη επέιηθην αξθεηά γηα πξνρσξεκέλνπο ρξήζηεο πνπ κπνξνύλ λα επσθειεζνύλ πιήξσο ηεο δπλαηόηεηεο ηνπ. Τα Arduino θαη ηα Arduino ζπκβαηά boards ρξεζηκνπνηνύλ ηελ ηερλνινγία ησλ shields, ηππσκέλσλ boards επεθηάζεσλ θπθισκάησλ πνπ ζπλδένληαη ζηα θαλνληθά παξερόκελα Arduino pin-headers. Τα shields κπνξνύλ λα παξέρνπλ έιεγρν ζε STEPmotors, GPS, Ethernet, LCD display. Σελίδα 14 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Arduino Ethernet Shield Δικόνα 8 Ethernet Shield Τν Arduino Ethernet Shield(10) επηηξέπεη ζην Arduino λα ζπλδεζεί ζην Internet. Βαζίδεηαη ζηελ ethernet chip Wiznet W5100. Τν Wiznet W5100 παξέρεη ηελ δπλαηόηεηα λα ζπλδεζεί ζε ETHERNET δίθηπν (IP),γηα TCP θαη UDP επηθνηλσλία. Υπνζηεξίδεη έσο θαη ηέζζεξηο ηαπηόρξνλεο ζπλδέζεηο. Φξεζηκνπνώληαο ηε βηβιηνζήθε Ethernet γηα λα γξάςεηε πξνγξάκκαηα ηα νπνία κπνξνύλ θαη ζπλδένληαη ζην Internet ρξεζηκνπνηώληαο ην Ethernet Shield . Τν Ethernet Shield ζπλδέεηαη ζην Arduino ρξεζηκνπνηώληαο καθξέο θεθαιίδεο ( ζύξκα-wrap ) πνπ εθηείλνληαη δηακέζνπ ηεο Shield. Απηό θξαηά ηε δηάηαμε ηνπ άζηθηε θαη επηηξέπεη θαη άιιεο αζπίδεο λα ζηνηβάδνληαη ζε απηό. Υπάξρεη κηα ελζσκαησκέλε ππνδνρή θάξηαο micro-SD, ην νπνίν κπνξεί λα ρξεζηκνπνηεζεί γηα λα απνζεθεύζεη ηα αξρεία γηα ηελ εμππεξέηεζε κέζσ ηνπ δηθηύνπ. Δίλαη ζπκβαηό κε ην Arduino Uno θαη Mega (ρξεζηκνπνηώληαο ηε βηβιηνζήθε Ethernet). Η ελζσκαησκέλε ζπζθεπή αλάγλσζεο θαξηώλ microSD είλαη πξνζβάζηκε κέζσ ηεο βηβιηνζήθεο SD. Η αζπίδα παξέρεη έλα πξόηππν RJ45 ππνδνρήο ethernet. Τν θνπκπί επαλαθνξάο ζηελ αζπίδα επαλαθέξεη ηόζν ηνλ W5100 αιιά θαη ηελ πιαθέηα Arduino. Η αζπίδα πεξηέρεη κηα ζεηξά από ελεκεξσηηθέο LEDs:        PWR: δείρλεη όηη ην δηνηθεηηθό ζπκβνύιην θαη ε αζπίδα είλαη powered LINK: δείρλεη ηελ παξνπζία ελόο ζπλδέζκνπ δηθηύνπ θαη αλαβνζβήλεη όηαλ ε αζπίδα κεηαδίδεη ή ιακβάλεη δεδνκέλα FULLD: ππνδεηθλύεη όηη ε ζύλδεζε δηθηύνπ είλαη full duplex 100M: δείρλεη ηελ παξνπζία ηεο ζύλδεζεο κε ην δίθηπν ελόο 100 Mb / s (ζε αληίζεζε κε ηα 10 Mb / s) RX: αλαβνζβήλεη όηαλ ε αζπίδα ιακβάλεη δεδνκέλα TX: αλαβνζβήλεη όηαλ ε αζπίδα ζηέιλεη δεδνκέλα COLL: αλαβνζβήλεη όηαλ αληρλεύνληαη ζπγθξνύζεηο δηθηύνπ Σελίδα 15 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Weather Meters Δικόνα 9 Wind Speed Dir Rain Αηζζεηήξηα γηα ηελ κέηξεζε ηεο έληαζεο θαη θαηεύζπλζεο ηνπ αλέκνπ αιιά θαη ηεο βξνρόπησζεο(11). Απηά ηα αηζζεηήξηα απνηεινύληαη από καγλεηηθά κέξε θαη δηαθόπηεο, γηα λα κπνξέζνπκε λα ηα ρξεζηκνπνηήζνπκε ζα ρξεηαζηνύκε κία κηθξή ηάζε. Τν αηζζεηήξην ηεο βξνρόπησζεο απνηειείηε από έλα ηύπν απηόκαηνπ αδεηάζκαηνο δηαθόπηε, ν νπνίνο θάζε θνξά πνπ θιείλεη ζηέιλεη έλα ζήκα, ην νπνίν ζεκαίλεη όηη θάζε ζήκα πνπ ζηέιλεη είλαη 0.2794 mm βξνρήο. Ο αηζζεηήξαο ηεο έληαζεο ηνπ αλέκνπ κεηξάεη ηελ ηαρύηεηα ηνπ αλέκνπ κε έλα δηαθόπηε ν νπνίνο αλνηγνθιείλεη ην νπνίν έρεη σο απνηέιεζκα, θάζε θιείζηκν ηνπ ζπγθεθξηκέλνπ δηαθόπηε αλά δεπηεξόιεπην λα αληηζηνηρεί ζε 2.4 km/h. Τν αηζζεηήξην ηεο δηεύζπλζεο ηνπ αλέκνπ είλαη ιίγν πην πεξίπινθν. Απνηειείηε από νθηώ δηαθόπηεο, νη νπνίνη είλαη ζπλδεκέλνη ζε δηαθνξεηηθέο αληηζηάζεηο. Ο καγλήηεο κπνξεί λα θιείζεη κέρξη θαη δύν δηαθόπηεο ηαπηόρξνλα, ην νπνίν καο δίλεη ηελ δπλαηόηεηα λα καο ππνδείμεη δεθάεμη δηαθνξεηηθέο ζέζεηο. Barometric Pressure Sensor MPL115A1 Δικόνα 10 MPL115A1 Ο MPL115A1(12) είλαη έλα αηζζεηήξην απόιπηεο πίεζεο κε ςεθηαθή έμνδν κε ρακειό θόζηνο γηα δηάθνξεο εθαξκνγέο. Έλα κηθξνζθνπηθό mm παθέην LGA 5 x 3 x 1.2 ηαηξηάδεη ηδαληθά γηα θνξεηέο ζπζθεπέο θαη κε πεξηνξηζκέλν ρώξν εθαξκνγέο. Με ρακειέο ηξέρνπζεο Σελίδα 16 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής θαηαλαιώζεηο 5 κA θαηά ηε δηάξθεηα ηεο ελεξγνύ ιεηηνπξγίαο θαη 1 κA θαηά ηνλ ηεξκαηηζκό ιεηηνπξγίαο (Sleep) κπαηαξία ζηόρν ηε ιεηηνπξγία θαη άιιεο εθαξκνγέο ρακειήο ηζρύνο. Έρεη έλα επξύ θάζκα ζεξκνθξαζίαο ιεηηνπξγίαο από -40 ° C έσο + 105 ° C θαη ηαηξηάδεη απόιπηα ζε απαηηεηηθέο πεξηβαιινληηθέο ζπλζήθεο. Ο MPL115A1 ρξεζηκνπνηεί έλαλ αηζζεηήξα πίεζεο MEMS κε θιηκαηηζκό IC γηα ηελ παξνρή αθξηβήο κέηξεζε ηεο πίεζεο 50 έσο 115 kPa. Έλα νινθιεξσκέλν ADC παξέρεη ςεθηνπνηεκέλε ζεξκνθξαζία θαη αηζζεηήξα πίεζεο κέζσ ηεο ζύξαο SPI. Αμηνπνηώληαο ηηο πξώηεο εμόδνπο ηνπ αηζζεηήξα, ν κηθξνειεγθηήο ππνδνρήο εθηειεί έλαλ αιγόξηζκν αληηζηάζκηζεο γηα λα θαηαζηήζεη αιιεινζπκπιεξνύκελα ηελ απόιπηε πίεζε κε 1 kPa αθξίβεηα. Ο κηθξό-ζπληειεζηήο ηεο κνξθήο ηνπ αηζζεηήξα πίεζεο MPL115A1 ζπκβάιεη ζηε ηθαλόηεηα δύλακεο θαη αθξίβεηαο, έηζη ώζηε λα βειηηζηνπνηήζεη ηηο κεηξήζεηο γηα ηηο απαηηεηηθέο εθαξκνγέο κέηξεζεο. DHT11 temperature and humidity sensor Δικόνα 11 DHT11 Τν DHT11(13) είλαη έλα βαζηθό, πνιύ ρακειό ζε θόζηνο ςεθηαθό αηζζεηήξην κέηξεζε ηεο ζεξκνθξαζίαο θαη ηεο ζρεηηθήο πγξαζίαο. Φξεζηκνπνηεί έλα αηζζεηήξα πγξαζίαο θαη έλα ζεξκίζηνξ έηζη ώζηε λα κεηξήζεη ζηνλ αέξα γύξσ, θαη κόιηο νινθιεξώζεη ηελ δηαδηθαζία απηή, εμάγεη ηα απνηειέζκαηα κε έλα ςεθηαθό ζήκα. Δίλαη πνιύ απιό ζηελ ρξήζε ηνπ θαη ην κόλν πξόβιεκα ηνπ είλαη γηα λα κπνξέζεη λα νινθιεξώζεη ζσζηά ηελ κέηξεζε απηή ρξεηάδεηαη δύν δεπηεξόιεπηα, νπόηε θαη κπνξεί λα κεηξήζεη άκεζα κεηά από δύν δεπηεξόιεπηα, ρξεζηκνπνηώληαο πάληα ηελ θαηάιιειε βηβιηνζήθε. Τερληθέο ιεπηνκέξεηεο ηνπ DHT11 :         ρακειό θόζηνο 3 έσο 5V ηξνθνδνζία θαη I / O 2.5mA max ξεύκα θαηά ηελ ηξέρνπζα ρξήζε ζηε δηάξθεηα ηεο κεηαηξνπήο (ελώ δεηά ζηνηρεία) Καιό γηα 20-80% κεηξήζεηο πγξαζίαο κε 5% αθξίβεηα Καιό γηα 0-50 ° κεηξήζεηο ζεξκνθξαζίαο C ± αθξίβεηαο 2 ° C Ο ξπζκόο δεηγκαηνιεςίαο δελ κπνξεί λα μεπεξάζεη ην 1 Hz (κία θνξά αλά δεπηεξόιεπην) Μέγεζνο 15,5 ρηιηνζηά x 12mm x 5,5 ρηιηνζηά 4 εμόδνπο κε 0.1 "απόζηαζε Σελίδα 17 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Mini Photocell(LDR) Δικόνα 12 LDR Δίλαη έλαο κηθξόο αηζζεηήξαο θσηόο. Τν LDR αιιάδεη (είλαη γλσζηό θαη σο θσηναληίζηαζε, αληρλεπηήο θσηόο, Cds) ηελ αληίζηαζε ηνπ, εμαξηώκελν από ηελ έληαζε ηνπ θσηόο πνπ έρεη εθηεζεί. Τερληθέο ιεπηνκέξεηεο θαη ραξαθηεξηζηηθά ηνπ LDR :        Light resistance : ~1k Ohm Dark resistance : ~10k Ohm Max voltage : 150V Max power: 100mW 2 x 4 x 5mm 4mm between pins 31mm lead length Σελίδα 18 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Ππογπαμμαηιζμόρ ηος Arduino Με ηελ ζπγθέληξσζε ησλ παξαπάλσ αηζζεηεξίσλ έπξεπε λα πξνγξακκαηηζηεί ην arduino έηζη ώζηε λα ππνδερζεί ρσξίο θάπνην πξόβιεκα ην Ethernet Shield, αιιά θαη ηα ππόινηπα αηζζεηήξηα. Η παξακεηξνπνίεζε ησλ αηζζεηεξίσλ έπξεπε λα πξαγκαηνπνηεζεί γηα ην θαζέλα πξώηα μερσξηζηά. Τν θαζέλα από απηά ηα αηζζεηήξηα είρε μερσξηζηέο ηδηόηεηεο θαη ρξεηάζηεθε ην θαζέλα ην δηθό ηνπ « κνλαδηθό » θώδηθά. Τν ETHERNET shield γηα λα κπνξέζεη λα απνθηήζεη ηελ δπλαηόηεηα λα ζπλδεζεί ζην « Ιληεξλέη » θαη λα κπνξέζεη λα κεηαθέξεη ηα δεδνκέλα ησλ αηζζεηήξσλ, έπξεπε πξώηα λα παξακεηξνπνηεζεί έηζη ώζηε λα απνθηήζεη κία θπζηθή δηεύζπλζε ζην δίθηπν πνπ ζα ζπλδεζεί. Με ηε ζύλδεζε ηνπ πιένλ ζην δηαδίθηπν, ζα κπνξεί πιένλ λα ζπλδεζεί κε ηνλ εμππεξεηεηή θαη λα ηνλ ελεκεξώζεη κε ηηο θαηλνύξγηεο ηηκέο ησλ αηζζεηήξησλ. Δικόνα 13 Παπάδειγμα κώδικα ETHERNET Shield Τν αηζζεηήξην ηεο βαξνκεηξηθήο πίεζεο απαηηνύζε ζπγθεθξηκέλε ρξήζε ησλ θαηαρσξεηώλ ηνπ arduino, ην νπνίν πξαγκαηνπνηνύηαλ κε ηελ ρξήζε ηεο βηβιηνζήθεο MPL115A1.h . Δικόνα 14 Παπάδειγμα κώδικα MPL115A1 Σελίδα 19 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Η ηαρύηεηα ηνπ αλέκνπ θαη ε δηεύζπλζε ρξεηάδεηαη λα ελεκεξώλνληαη ζπλέρεηα. Απηό απαηηεί ρξήζε ζπλαξηήζεσλ θαη ησλ εηδηθώλ εηζόδσλ ηνπ arduino νη νπνίεο κπνξνύλ λα ιεηηνπξγνύλ αλεμάξηεηα από ην πξόγξακκα πνπ ηξέρεη εθείλε ηελ ζηηγκή ζην arduino. Οη ςεθηαθέο είζνδνη ηνπ arduino πνπ έρνπλ ηελ δπλαηόηεηα απηή είλαη ε ςεθηαθή δύν θαη ε ςεθηαθή ηξία. Δικόνα 15 Παπάδειγμα κώδικα αιζθηηηπίυν ανέμος και βποσήρ Σελίδα 20 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Τν αηζζεηήξην ηεο δηεύζπλζεο ηνπ αλέκνπ, ρξεηαδόηαλ δύν πίλαθεο έηζη ώζηε λα ζπγθξίλεη ηηο ηηκέο απηώλ θαη λα καο απνδώζεη ηελ ζσζηή. Δικόνα 16 Παπάδειγμα κώδικα διεύθςνζηρ ανέμος Γηα ηα αηζζεηήξηα ηεο θσηεηλόηεηαο, ηεο πγξαζίαο θαη ζεξκνθξαζίαο, ε δηαδηθαζία αλάθηεζεο ησλ ηηκώλ ηνπο ήηαλ πην απιή κε ην ρξεηαδόηαλ απιώο ην θάιεζκα ηεο εθάζηνηε ζπλάξηεζεο ηνπο. Δικόνα 17 Παπάδειγμα κώδικα θεπμοκπαζίαρ ςγπαζίαρ Σελίδα 21 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Με ηελ νινθιήξσζε ηεο παξακεηξνπνίεζεο ηνπ θάζε θώδηθα μερσξηζηά, ζην ηειηθό ζηάδην όινη απηνί νη μερσξηζηνί θώδηθεο ζα ελζσκαησζνύλ ζε έλα εληαίν, γηα λα πξνγξακκαηηζηεί ε θεληξηθή κνλάδα ηνπ arduino έηζη ώζηε λα αληαπνθξίλεηαη ζε όια ηα αηζζεηήξηα. Τν πξόβιεκα πνπ πξνέθπςε ζε απηή ηε δηαδηθαζία είλαη ζπρλόηεηα ηεο θαηαγξαθήο ησλ δεδνκέλσλ από ηνπο αηζζεηήξεο. Δικόνα 18 Δπιλογέρ πςθμίζειρ ηος παλαιόηεπος Μ΢ Μειεηώληαο πξνζεθηηθά ηα δεδνκέλα ησλ πξνεγνύκελσλ κεηεσξνινγηθώλ ζηαζκώλ αιιά θαη ηνλ ηξόπν θαηαγξαθήο ησλ δεδνκέλσλ απηώλ (βιέπε εηθόλα 18 ), αμηνπνηώληαο θάζε δπλαηή ζπλάξηεζε ε νπνία καο πξνζθεξόηαλ από ηεο βηβιηνζήθεο ηνπ arduino, θαηαιήμακε ζην ζπκπέξαζκα όηη κπνξνύκε λα απμήζνπκε ην ρξόλν δεηγκαηνιεςίαο ησλ δεδνκέλσλ θαη λα απνζηέιινπκε απηά ζηε βάζε δεδνκέλσλ θάζε έλα ιεπηό. (19.20.21) Σελίδα 22 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Datalogger Οη κεηεσξνινγηθνί ζηαζκνί ρξεζηκνπνηνύλ γηα ηελ θαηαγξαθή ησλ δεδνκέλσλ ηνπο data loggers. Έλαο data logger είλαη κηα ειεθηξνληθή ζπζθεπή πνπ θαηαγξάθεη ηα δεδνκέλα ζηελ πάξνδν ηνπ ρξόλνπ ζε ζρέζε κε ηελ ηνπνζεζία, είηε κε ελζσκαησκέλα όξγαλα ή αηζζεηήξεο ή κέζσ εμσηεξηθώλ κέζσλ θαη αηζζεηήξσλ. Οινέλα θαη πεξηζζόηεξν βαζίδνληαη ζε ςεθηαθνύο επεμεξγαζηέο (ή ζε ππνινγηζηέο). Γεληθά είλαη κηθξνί, κε κπαηαξίεο, θνξεηνί, θαη εμνπιηζκέλνη κε έλα κηθξνεπεμεξγαζηή, εζσηεξηθή κλήκε γηα ηελ απνζήθεπζε δεδνκέλσλ, θαη αηζζεηήξεο. Μεξηθνί data loggers κπνξνύλ λα ζπλδεζνύλ κε έλαλ πξνζσπηθό ππνινγηζηή θαη λα ρξεζηκνπνηήζνπλ ην ινγηζκηθό ηνπο είηε γηα λα ελεξγνπνηεζεί ν data logger, είηε γηα ηελ αλάιπζε θαη αμηνιόγεζε ησλ θαηαγεγξακκέλσλ δεδνκέλσλ, ελώ άιινη έρνπλ κηα ηνπηθή ζπζθεπή δηεπαθήο (πιεθηξνιόγην, νζόλε LCD) γηα λα κπνξεί λα ρξεζηκνπνηεζεί σο απηόλνκε ζπζθεπή. Οη data loggers πνηθίιινπλ κεηαμύ ηνπο θαη ρξεζηκνπνηνύληαη γηα έλα γηα έλα επξύ θάζκα εθαξκνγώλ θαη κεηξήζεσλ. Δικόνα 19 datalogger DL2 Ο ηειηθόο θώδηθαο πξνγξακκαηηζκνύ ηνπ arduino είρε ηα ραξαθηεξίζηεθα ελόο datalogger. Οη κεηξήζεηο ζπιιέγνληαη θαη επεμεξγάδνληαη γηα έλα ιεπηό θαη ζηελ ζπλέρεηα, κε ηελ βνήζεηα ηνπ ethernet shield, εθηειείηε έλα Get εξώηεκα ην νπνίν ζε έλα PhP αξρείν. Τν εξώηεκα απηό πεξηιακβάλεη όιεο ηηο ηηκέο ησλ αηζζεηεξίσλ, νη νπνίεο κε ηελ βνήζεηα ελόο SQL εξσηήκαηνο εηζάγνληαη ζηελ βάζε δεδνκέλσλ ηνπ εμππεξεηεηή. Σελίδα 23 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Έρνληαο νινθιεξώζεη ηελ δηαδηθαζία πξνγξακκαηηζκνύ ηνπ arduino, κπνξνύκε λα ιάβνπκε ειέγμνπκε όηη είλαη επηηπρεκέλε ε επηθνηλσλία αιιά θαη ε απνζηνιή ην δεδνκέλσλ, ρξεζηκνπνηώληαο ην πξόγξακκα πνπ κπνξνύκε θαη πξνγξακκαηίδνπκε ην arduino (arduino1.0.5) . Σηελ εηθόλα πνπ αθνινπζεί, παξαηεξνύκε ηελ επηηπρή ζύλδεζε ηνπ arduino κε ηνλ εμππεξεηεηή αιιά θαη ηελ απνζηνιή ησλ δεδνκέλσλ ηνπ εθηειώληαο ην εξώηεκα απηό. Δικόνα 20 Δπιηςσήρ ζύνδεζη και αποζηολή δεδομένυν Σελίδα 24 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Οι εθαπμογέρ Τν επόκελν βήκα κεηά ηελ νινθιήξσζε ηνπ πξνγξακκαηηζκνύ ηνπ arduino, ήηαλ ε δεκηνπξγία ησλ εθαξκνγώλ κε ηηο νπνίεο ζα κπνξεί ν ρξήζηεο λα παξαηεξήζεη ηηο ηηκέο ηνπ κεηεσξνινγηθνύ ζηαζκνύ, είηε ζηνλ ππνινγηζηή ηνπ είηε ζηελ ζπζθεπή android πνπ πηζαλόλ λα ρξεζηκνπνηεί. Οη δύν απηέο εθαξκνγέο ζηεξίδνληαη ζηηο γιώζζεο PhP, Html, Ajax, JSP, Javacript-Jquery, Java, θαη ζηα εξγαιεία επεμεξγαζίαο πνπ ρξεζηκνπνηήζεθαλ γηα ην πξνγξακκαηηζκό Notepad ++ θαη Eclispe –Juno . Σι είναι η PHP PHP είλαη κηα γιώζζα πξνγξακκαηηζκνύ πνπ ζρεδηάζηεθε γηα ηε δεκηνπξγία δπλακηθώλ ζειίδσλ ζην δπαδίθηπν θαη είλαη επηζήκσο γλσζηή σο: Php Hypertext Prepocessor. Δίλαη κηα server-side (εθηειείηε ζηνλ δηαθνκηζηή) scripting γιώζζα πνπ γξάθεηαη ζπλήζσο πιαηζησκέλε από HTML, γηα κνξθνπνίεζε ησλ απνηειεζκάησλ. Αληίζεηα από κηα ζπλεζηζκέλε HTML ζειίδα ε ζειίδα PHP δελ ζηέιλεηαη άκεζα ζε έλαλ πειάηε (client), αλη' απηνύ πξώηα αλαιύεηαη θαη κεηά απνζηέιιεηαη ην παξαγόκελν απνηέιεζκα. Τα ζηνηρεία HTML ζηνλ πεγαίν θώδηθα κέλνπλ σο έρνπλ, αιιά ν PHP θώδηθαο εξκελεύεηαη θαη εθηειείηαη. Ο θώδηθαο PHP κπνξεί λα ζέζεη εξσηήκαηα ζε βάζεηο δεδνκέλσλ, λα δεκηνπξγήζεη εηθόλεο, λα δηαβάζεη θαη λα γξάςεη αξρεία, λα ζπλδεζεί κε απνκαθξπζκέλνπο ππνινγηζηέο , θ.α. Σε γεληθέο γξακκέο νη δπλαηόηεηεο πνπ καο δίλεη είλαη απεξηόξηζηεο. Αξρηθά ε νλνκαζία ηεο ήηαλ PHP/FI από ην Forms Interpreter ε νπνία δεκηνπξγήζεθε ην 1995 από ηνλ Rasmus Lerdorf σο κηα ζπιινγή από Perl scripts πνπ ηα ρξεζηκνπνηνύζε ζηελ πξνζσπηθή ηνπ ζειίδα. Γελ άξγεζε λα ηα εκπινπηίζεη κε ιεηηνπξγίεο επεμεξγαζίαο δεδνκέλσλ κε SQL, αιιά ηα ζεκαληηθά βήκαηα πνπ έθεξαλ θαη ηελ κεγάιε απνδνρή ηεο PHP ήηαλ αξρηθά ε κεηαηξνπή ηνπο ζε C θαη κεηέπεηηα ε δσξεάλ παξνρή ηνπ πεγαίνπ θώδηθα κέζσ ηεο ζειίδαο ηνπ ώζηε λα επσθειεζνύλ όινη από απηό πνπ είρε θηηάμεη, αιιά θαη λα ηνλ βνεζήζνπλ ζηελ πεξαηηέξσ αλάπηπμή ηεο. Σι είναι η Ηtml HTML (αθξσλύκην ηνπ αγγιηθνύ Hyper Text Markup Language) είλαη ε θύξηα γιώζζα ζήκαλζεο γηα ηηο ηζηνζειίδεο, θαη ηα ζηνηρεία ηεο είλαη ηα βαζηθά δνκηθά ζηνηρεία ησλ ηζηνζειίδσλ. Η HTML γξάθεηαη ππό κνξθή ζηνηρείσλ HTML ηα νπνία απνηεινύληαη από εηηθέηεο, νη νπνίεο πεξηθιείνληαη κέζα ζε ζύκβνια «κεγαιύηεξν από» θαη «κηθξόηεξν από» (γηα παξάδεηγκα ), κέζα ζην πεξηερόκελν ηεο ηζηνζειίδαο. Οη εηηθέηεο HTML ζπλήζσο ιεηηνπξγνύλ αλά δεύγε (γηα παξάδεηγκα

θαη

), κε ηελ πξώηε λα νλνκάδεηαη εηηθέηα έλαξμεο θαη ηε δεύηεξε εηηθέηα ιήμεο (ή ζε άιιεο πεξηπηώζεηο εηηθέηα αλνίγκαηνο θαη εηηθέηα θιεηζίκαηνο αληίζηνηρα). Αλάκεζα ζηηο εηηθέηεο, νη ζρεδηαζηέο ηζηνζειίδσλ κπνξνύλ λα ηνπνζεηήζνπλ θείκελν, πίλαθεο, εηθόλεο θιπ. Ο ζθνπόο ελόο web browser είλαη λα δηαβάδεη ηα έγγξαθα HTML θαη ηα ζπλζέηεη ζε ζειίδεο πνπ κπνξεί θαλείο λα δηαβάζεη ή λα αθνύζεη. Ο browser δελ εκθαλίδεη ηηο εηηθέηεο HTML, αιιά ηηο ρξεζηκνπνηεί γηα λα εξκελεύζεη ην πεξηερόκελν ηεο ζειίδαο. Τα ζηνηρεία ηεο HTML ρξεζηκνπνηνύληαη γηα λα θηίζνπλ όινπο ηνπ ηζηόηνπνπο. Η HTML επηηξέπεη ηελ ελζσκάησζε εηθόλσλ θαη άιισλ αληηθεηκέλσλ κέζα ζηε ζειίδα, θαη Σελίδα 25 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής κπνξεί λα ρξεζηκνπνηεζεί γηα λα εκθαλίζεη δηαδξαζηηθέο θόξκεο. Παξέρεη ηηο κεζόδνπο δεκηνπξγίαο δνκεκέλσλ εγγξάθσλ (δειαδή εγγξάθσλ πνπ απνηεινύληαη από ην πεξηερόκελν πνπ κεηαθέξνπλ θαη από ηνλ θώδηθα κνξθνπνίεζεο ηνπ πεξηερνκέλνπ) θαζνξίδνληαο δνκηθά ζεκαληηθά ζηνηρεία γηα ην θείκελν, όπσο θεθαιίδεο, παξαγξάθνπο, ιίζηεο, ζπλδέζκνπο, παξαζέζεηο θαη άιια. Σι είναι ηο Ajax H AJAX (Asynchronous JavaScript and XML) είλαη έλα γθξνππ αιιειέλδεηεο ηερληθέο αλάπηπμεο ηζηνζειίδσλ πνπ ρξεζηκνπνηνύληαη γηα ηελ αλάπηπμε αζύγρξνλσλ εθαξκνγώλ δηαδηθηύνπ. Με ηελ Ajax νη εθαξκνγέο απηέο κπνξνύλ λα ζηείινπλ θαη λα πάξνπλ δεδνκέλα από έλα server πνπ ηξέρεη ρσξίο λα θαίλεηαη θαη ρσξίο λα αιιειεπηδξά κε κηα ήδε ππάξρνπζα ζειίδα. Τα δεδνκέλα κπνξνύκε λα ηα πάξνπκε ρξεζηκνπνηώληαο έλα XMLHttpRequest αληηθείκελν. Αλεμάξηεηα από ην όλνκα, ε ρξήζε ηεο XML δελ είλαη απαξαίηεηε θαη νη αηηήζεηο δελ είλαη αλαγθαίν λα είλαη αζύγρξνλεο Η Ajax δελ είλαη κηα εληαία ηερλνινγία αιιά έλα γθξνππ από ηερλνινγίεο. Οη HTML θαη CSS κπνξνύλ λα ζπλδπαζηνύλ γηα ηηο πιεξνθνξίεο ηεο εκθάληζεο. Σηε DOM έρνπκε πξόζβαζε κέζσ ηεο JavaScript γηα ηελ δπλακηθή εκθάληζε θαη ηελ ηθαλόηεηα ηνπ ρξήζηε λα αιιειεπηδξά κε ηα δεδνκέλα πνπ παξνπζηάδνληαη. Η JavaScript θαη ηα XMLHttpRequest αληηθείκελα καο παξέρνπλ κηα κέζνδν αληαιιαγήο δεδνκέλσλ αζύγρξνλα κεηαμύ ηνπ browser θαη ηνπ server γηα λα απνθύγνπκε ηελ επαλαθόξηηζε όιεο ηεο ζειίδαο Σι είναι ηο Javascript-JQuery Η JavaScript (JS) είλαη δηεξκελεπκέλε γιώζζα πξνγξακκαηηζκνύ γηα ειεθηξνληθνύο ππνινγηζηέο. Αξρηθά απνηέιεζε κέξνο ηεο πινπνίεζεο ησλ θπιινκεηξεηώλ Ιζηνύ, ώζηε ηα ζελάξηα από ηελ πιεπξά ηνπ πειάηε (client-side scripts) λα κπνξνύλ λα επηθνηλσλνύλ κε ηνλ ρξήζηε, λα αληαιιάζζνπλ δεδνκέλα αζύγρξνλα θαη λα αιιάδνπλ δπλακηθά ην πεξηερόκελν ηνπ εγγξάθνπ πνπ εκθαλίδεηαη. Η JavaScript είλαη κηα γιώζζα ζελαξίσλ πνπ βαζίδεηαη ζηα πξσηόηππα (prototypebased), είλαη δπλακηθή, κε αζζελείο ηύπνπο θαη έρεη ζπλαξηήζεηο σο αληηθείκελα πξώηεο ηάμεο. Η ζύληαμή ηεο είλαη επεξεαζκέλε από ηε C. Η JavaScript αληηγξάθεη πνιιά νλόκαηα θαη ζπκβάζεηο νλνκα ηνδνζίαο από ηε Java, αιιά γεληθά νη δύν απηέο γιώζζεο δε ζρεηίδνληαη θαη έρνπλ πνιύ δηαθνξεηηθή ζεκαζηνινγία. Οη βαζηθέο αξρέο ζρεδηαζκνύ ηεο JavaScript πξνέξρνληαη από ηηο γιώζζεο πξνγξακκαηηζκνύ Self θαη Scheme. Δίλαη γιώζζα βαζηζκέλε ζε δηαθνξεηηθά πξνγξακκαηηζηηθά παξαδείγκαηα (multi-paradigm), ππνζηεξίδνληαο αληηθεηκελνζηξαθέο, πξνζηαθηηθό θαη ζπλαξηεζηαθό ζηπι πξνγξακκαηηζκνύ. Η JavaScript ρξεζηκνπνηείηαη θαη ζε εθαξκνγέο εθηόο ηζηνζειίδσλ — ηέηνηα παξαδείγκαηα είλαη ηα έγγξαθα PDF, νη εμεηδηθεπκέλνη θπιινκεηξεηέο (site-specific browsers) θαη νη κηθξέο εθαξκνγέο ηεο επηθάλεηαο εξγαζίαο (desktop widgets). Οη λεόηεξεο εηθνληθέο κεραλέο θαη πιαίζηα αλάπηπμεο γηα JavaScript (όπσο ην Node.js) έρνπλ επίζεο θάλεη ηε JavaScript πην δεκνθηιή γηα ηελ αλάπηπμε εθαξκνγώλ Ιζηνύ ζηελ πιεπξά ηνπ Σελίδα 26 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής δηαθνκηζηή (server-side). Τν πξόηππν ηεο γιώζζαο θαηά ηνλ νξγαληζκό ηππνπνίεζεο ECMA νλνκάδεηαη ECMAscript. Η jQuery είλαη κία βηβιηνζήθε javascript ε νπνία καο δίλεη ηε δπλαηόηεηα λα δεκηνπξγνύκε δηάθνξα εθέ ζηελ ζειίδα καο ρσξίο όκσο λα ρξεηάδεηαη ε πνζόηεηα θώδηθα πνπ ζα ρξεηαδόηαλ εάλ ρξεζηκνπνηνύζακε ηελ παξαδνζηαθή javascript.Τν κόλν πνπ έρνπκε λα θάλνπκε είλαη λα θαηεβάζνπκε ηε jQuery ,λα ηελ εθαξκόζνπκε ζην site καο θαη είκαζηε έηνηκνη λα δεκηνπξγήζνπκε.Τα εθέ πνπ κπνξνύκε λα δεκηνπξγήζνπκε είλαη πνιιά θαη δηάθνξα.Γηα παξάδεηγκα κπνξνύκε λα εκθαλίδνπκε ή λα εμαθαλίδνπκε παξαγξάθνπο, λα αιιάδνπκε ρξώκαηα γξακκαηνζεηξάο ,λα ειέγρνπκε δειαδή κε όια ηα html ζηνηρεία ηεο ζειίδαο καο θαη λα κπνξνύκε λα ειέγρνπκε έλα - έλα από απηά μερσξηζηά. Η jQuery ρξεζηκνπνηείηαη επξέσο ζήκεξα δηόηη δίλεη ηε δπλαηόηεηα λα πξνζθέξνπκε ζηνπο ρξήζηεο ηεο ηζηνζειίδαο καο αιιειεπίδξαζε κε απηή θαη ηα εθέ πνπ κπνξνύκε λα δεκηνπξγήζνπκε είλαη πάξα πνιιά. jQuery είλαη κία βηβιηνζήθε JavaScript ε νπνία έρεη ζρεδηαζηεί γηα λα απινπνηήζεη ην client-side scripting ηεο HTML. Δίρε θπθινθνξήζεη ηνλ Ιαλνπάξην ηνπ 2006 ζηε Νέα Υόξθε από ηνλ John Barcamp Resig. jQuery είλαη δσξεάλ, αλνηρηνύ θώδηθα ινγηζκηθό, ζύκθσλα κε ηελ άδεηα MIT License. Η jQuery ζύληαμε έρεη ζρεδηαζηεί γηα λα θαηαζηήζεη επθνιόηεξε ηελ πινήγεζε ζε έλα έγγξαθν, ηελ επηινγή DOM ζηνηρείσλ, ηε δεκηνπξγία θηλνύκελσλ ζρεδίσλ, θαη ηελ αλάπηπμε εθαξκνγώλ Ajax. Η πξνζέγγηζε ηεο jQuery βηβιηνζήθεο επηηξέπεη ηε δεκηνπξγία ηζρπξώλ δπλακηθώλ ηζηνζειίδσλ θαη δηαδηθηπαθώλ εθαξκνγώλ. Σι είναι η MySQL Η MySQL είλαη έλα πνιύ γξήγνξν θαη δπλαηό , ζύζηεκα δηαρείξηζεο βάζεσλ δεδνκέλσλ. Μηα βάζε δεδνκέλσλ ζαο επηηξέπεη λα απνζεθεύεηε , λα αλαδεηάηε , λα ηαμηλνκείηε θαη λα αλαθαιείηε ηα δεδνκέλα απνηειεζκαηηθά . Ο MySQL δηαθνκηζηήο ειέγρεη ηελ πξόζβαζε ζηα δεδνκέλα ζαο , γηα λα κπνξνύλ λα δνπιεύνπλ πνιινί ρξήζηεο ηαπηόρξνλα , γηα λα παξέρεη γξήγνξε πξόζβαζε θαη λα δηαζθαιίδεη όηη κόλν πηζηνπνηεκέλνη ρξήζηεο κπνξνύλ λα έρνπλ πξόζβαζε. Σπλεπώο ε MySQL είλαη έλαο πνιπλεκαηηθόο δηαθνκηζηήο πνιιαπιώλ ρξεζηώλ. Φξεζηκνπνηεί ηελ SQL ( Structured Query Language ) ηελ ηππηθή γιώζζα εξσηεκάησλ γηα βάζεηο δεδνκέλσλ, παγθόζκηα . H MySQL είλαη δηαζέζηκε από ην 1996 αιιά ε ηζηνξίαο ηεο μεθηλά από ην 1979 . Σι είναι Notepad++ Τν Notepad++(16) είλαη ειεύζεξν ινγηζκηθό επεμεξγαζίαο πεγαίνπ θώδηθα θαη ππνζηεξίδεη πνιιέο γιώζζεο πξνγξακκαηηζκνύ. Λεηηνπξγεί ζε πεξηβάιινλ MS Windows ε ρξήζε ηνπ δηέπεηαη από άδεηα GPL . Δίλαη βαζηζκέλν ζην ζηνηρείν επεμεξγαζίαο Scintilla. Τν Notepad++ έρεη γξαθηεί ζηελ γιώζζα πξνγξακκαηηζκνύ C++ θαη ρξεζηκνπνηεί Win32 Api θαη STL ηα νπνία εμαζθαιίδνπλ κεγαιύηεξε ηαρύηεηα εθηέιεζεο θαη ην κηθξό κέγεζνο ηνπ σο πξόγξακκα. Με ηελ βειηηζηνπνίεζε ηνπ σο πξόγξακκα δελ έρεη ράζεη ηελ θηιηθόηεηα ηνπ σο πξνο ηνλ ρξήζηε. Τν Notepad++ πξνζπαζεί λα κεηώζεη ηηο παγθόζκηεο εθπνκπέο δηνμεηδίνπ ηνπ άλζξαθα. Όηαλ ρξεζηκνπνηείηε ιηγόηεξε επεμεξγαζηηθή ηζρύ, ηόηε ν ππνινγηζηήο κπνξεί λα κεηώζεη πνιύ ηελ θαηαλάισζε ελέξγεηαο, κε απνηέιεζκα λα έρνπκε έλα θαιύηεξν πεξηβάιινλ. Σελίδα 27 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Σι είναι ηο Eclipse; Τν Eclipse(17) είλαη έλα από ηα δεκνθηιέζηεξα IDE (Integrated Development Environment ή ζηα ειιεληθά: Οινθιεξσκέλν Πεξηβάιινλ Αλάπηπμεο) πνπ ρξεζηκνπνηείηαη από ρηιηάδεο πξνγξακκαηηζηέο παγθνζκίσο γηα ηε ζπγγξαθή θαη εθηέιεζε θώδηθα. Η επηηπρία ηνπ νθείιεηαη ζην ιηηό ηνπ πεξηβάιινλ ην νπνίν είλαη θηιηθό αθόκα θαη ζηνλ αξράξην πξνγξακκαηηζηή, επίζεο eίλαη ζρεδηαζκέλν λα ιεηηνπξγεί ζε πνιιά ιεηηνπξγηθά ζπζηήκαηα (Linux,Mac,Windows), αιιά θπξίσο επεηδή ππνζηεξίδεη πνιιέο γιώζζεο πξνγξακκαηηζκνύ, από Java κέρξη C, C++, Perl, PHP, Python δίλνληαο έηζη ζην πξνγξακκαηηζηή ην ίδην πεξηβάιινλ εξγαζίαο γηα ηειείσο δηαθνξεηηθνύο θόζκνπο. Η έθδνζε Eclispe–Juno πνπ ρξεζηκνπνηήζεθε γηα ηελ πινπνίεζε ηελ Android εθαξκνγήο, έρεη εξγαιεία ηα όπνηα βνεζάλε ζηελ θαηαζθεπή ησλ Android εθαξκνγώλ. Σελίδα 28 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Οι δςναηόηηηερ ηηρ Web Δθαπμογήρ Live data Σηελ θεληξηθή ζειίδα εκθαλίδνληαη ηα ηειεπηαία δεδνκέλα ηνπ κεηεσξνινγηθνύ ζηαζκνύ κε ηηο θαηάιιειεο ελδείμεηο αλ έρεη παξνπζηαζηεί θάπνην πξόβιεκα. Τα δεδνκέλα, γηα ηελ θαιύηεξε δηεπαθή ηνπ ρξήζηε, επαλαθνξηώλνληαη θάζε 30 δεπηεξόιεπηα ώζηε ν ρξήζηεο λα έρεη θάζε θνξά ηα ηειεπηαία δεδνκέλα πνπ έρνπλ θαηαγξαθηεί ζηελ βάζε δεδνκέλσλ. Δικόνα 21 Γεδομένα Γίλεηαη ε δπλαηόηεηα ζηνλ ρξήζηε λα απνθηήζεη πξόζβαζε ζηα δεδνκέλα πνπ έρνπλ θαηαγξαθηεί ζε δηάζηεκα κίαο ώξαο. Δθεί ζα βξεη όιεο ηηο ηειεπηαίεο κεηξήζεηο ηελ ώξα πνπ θαηαγξάθηεθαλ θαη κε ηηο αληίζηνηρεο κνλάδεο κέηξεζεο. Δικόνα 22 Σα δεδόμενα ηηρ ηελεςηαίαρ ώπαρ Σελίδα 29 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Γπαθήμαηα Γηα ηελ θαιύηεξε επνπηεία ηελ παξαηήξεζε θαη ηελ εμαγσγή ζπκπεξαζκάησλ, ππάξρεη ε επηινγή ησλ γξαθεκάησλ ησλ ηειεπηαίσλ εηθνζηηεζζέξσλ σξώλ, όιν ησλ δεδνκέλσλ πνπ καο παξέρεη ν κεηεσξνινγηθό ζηαζκόο arduino. Δικόνα 23 γπαθήμαηα Μ΢ arduino Παξέρεηε επίζεο ε δπλαηόηεηα ζύγθξηζεο ησλ δεδνκέλσλ ηνπ κεηεσξνινγηθνύ ζηαζκνύ arduino , κε ηα αληίζηνηρα δεδνκέλα θάπνηνπ άιινπ ζηαζκνύ, κε γξαθήκαηα ησλ ηειεπηαίσλ εηθνζηηεζζέξσλ σξώλ. Σηελ πηπρηαθή εξγαζία αμηνπνηήζεθαλ ηα δεδνκέλα ηνπ κεηεσξνινγηθνύ ζηαζκνύ πνπ είλαη εγθαηεζηεκέλνο ζηελ βηνθιηκαηηθή θαηνηθία πνπ έρεη θαηαζθεπαζηεί ζην ΤΔΙ Κξήηεο ζηε Σρνιή ΣΤΔΦ. Δικόνα 24 ΢ςνδςαζηικά δεδομένα Σελίδα 30 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Μενού διασείπιζηρ Υπάξρνπλ επίζεο ππεξεζίεο πνπ δίλνληαη κόλν ζε εμνπζηνδνηεκέλνπο ρξήζηεο. Η πξόζβαζε ζε απηέο, γίλεηαη κέζσ κίαο θόξκαο, ζπκπιεξώλνληαο έλα όλνκα ρξήζηε θαη έλα ζπλζεκαηηθό. Δικόνα 25 Μενού ειζόδος Λήτη δεδομένυν Έρνληαο απνθηήζεη πξόζβαζε ζηηο ππεξεζίεο, ν ρξήζηεο κπνξεί πιένλ λα θαηεβάζεη ηα δεδνκέλα ηνπ κεηεσξνινγηθνύ ζηαζκνύ arduino από κία ρξνληθή πεξίνδν πνπ επηζπκεί. Τα δεδνκέλα απηά εμάγνληαη ζε αξρείν κε θαηάιεμε .csv έηζη ώζηε λα κπνξεί λα πξαγκαηνπνηεζεί εμεξγαζία κε έλα ππνινγηζηηθό πξόγξακκα, όπσο γηα παξάδεηγκα ην Microsoft Excel. Δικόνα 26 Δπιλογήρ ημεπομηνιών Σελίδα 31 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Διδοποιήζειρ. Ο ρξήζηεο επίζεο έρεη ηελ δπλαηόηεηα λα ξπζκίζεη ηα αλώηεξα ή ηα θαηώηεξα όξηα εηδνπνηήζεσλ πνπ ζα εκθαλίδνληαη ζηελ θεληξηθή ζειίδα ηεο εθαξκνγήο. Δικόνα 27 Δπεξεπγαζία ειδοποιήζευν Σεσνικέρ λεπηομέπειερ και Πληποθοπίερ Η Web εθαξκνγή παξέρεη επίζεο ζηνλ ρξήζηε ηηο ηερληθέο ιεπηνκέξεηεο ηνπ κεηεσξνινγηθνύ ζηαζκνύ, ιεπηνκέξεηεο γηα ηελ αλάπηπμε ηεο εθαξκνγή θαη ηεο πηπρηαθήο. Δπίζεο ν ρξεζηήο κπνξεί λα βξεη πιεξνθνξίεο γηα ηελ ζέζε ηνπ κεηεσξνινγηθνύ ζηαζκνύ αιιά θαη ζηνηρεία επηθνηλσλίαο ηνπ εξγαζηεξίνπ. Σελίδα 32 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Android Δθαπμογή H Android εθαξκνγή δεκηνπξγήζεθε έηζη ώζηε λα έρνπκε ζην θηλεηό ή ζην tablet ηα δεδνκέλα πνπ ιακβάλεη ν κεηεσξνινγηθόο ζηαζκόο. Τν Eclispe–Juno καο παξείρε παξαπάλσ δπλαηόηεηεο γηα ηελ δεκηνπξγία ηεο εθαξκνγήο. Η δπλαηόηεηα πνπ καο πξνζέθεξε είλαη όηη κπνξεί λα δεκηνπξγεζεί εθαξκνγήο ε νπνία λα ρξεζηκνπνίεη FRAMES, ζηα νπνία κπνξνύλ λα θαιεζηνύλ ζύλδεζκνη ηνπ δηαδηθηύνπ. Φξεζηκνπνηώληαο ηελ παξαπάλσ δπλαηόηεηα δεκηνπξγήζεθε έλα mini site έηζη ώζηε λα εμππεξεηήζεη ηελ android εθαξκνγή καο. Δπίζεο απηή ε δπλαηόηεηα πξνζθέξεη εμέιημε ζηελ εθαξκνγή αιιά θαη ζηελ κεηέπεηηα εμέιημε ηεο εθαξκνγήο. Δπίζεο κηα αξλεηηθή ηδηαηηεξόηεηα ηεο εθαξκνγήο απηήο είλαη όηη απαηηεί ζύλδεζε ζην δηαδίθηπν. Σηελ εθαξκνγή android κπνξεί ν ρξήζηεο λα έρεη ηα ησξηλά δεδνκέλα ηνπ κεηεσξνινγηθνύ ζηαζκνύ ηα νπνία έρνπλ ηελ δπλαηόηεηα λα επαλαθνξηώλνληαη θάζε 20 δεπηεξόιεπηα έηζη ν ρξήζηεο λα κελ ράλεη ηελ δηεπαθή κε ηα ηειεπηαία δεδνκέλα. Δικόνα 28 δεδομένα andorid εθαπμογήρ. Τν δεύηεξν θαη ηειεπηαίν θνκκάηη ηεο android εθαξκνγήο είλαη ε γξαθηθή αλαπαξάζηαζε ησλ δεδνκέλσλ ησλ ηειεπηαίσλ εηθνζηηεζζέξσλ σξώλ. Δικόνα 29 Γπαθήμαηα android Σελίδα 33 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Αποηελέζμαηα Αθνύ νινθιεξώζεθε όιε ε πιαηθόξκα επηηπρώο νθείινπκε λα αλαθέξνπκε ηα απνηειέζκαηα ζηα νπνία θαηαιήμακε. Αξρηθά ε αλάπηπμε ελόο εμππεξεηεηή καο βνήζεζε ζηελ θαιύηεξε θαηαλόεζε ηεο ιεηηνπξγίαο ηνπ Internet , όπσο θαη ηεο ιεηηνπξγίαο ησλ ππεξεζηώλ πνπ κπνξεί λα καο πξνζθέξεη. Οη εθαξκνγέο πνπ δεκηνπξγήζεθαλ κπνξνύλ πνιύ εύθνια λα παξακεηξνπνηεζνύλ ώζηε λα ζπλδεζνύλ θαη ζε άιινπο server αιιά θαη κε άιιεο βάζεηο δεδνκέλσλ πνπ πεξηιακβάλνπλ δεδνκέλα νπνηαζδήπνηε κνξθήο (π.ρ κεηεσξνινγηθά δεδνκέλα ). Τέινο νη δπλαηόηεηεο πνπ καο έδσζε ην arduino, δελ κπνξνύλ καο ηηο παξέρνπλ νη dataloggers. ΢ςμπεπάζμαηα Με ηελ νινθιήξσζε ηνπ πξνγξακκαηηζκνύ ηεο κνλάδα ηνπ arduino, επηρεηξήζακε λα εληνπίζνπκε ηελ κέγηζηε απόζηαζε πνπ κπνξεί ην arduino λα κεηξήζεη ηηκέο από ηα αηζζεηήξηα. Η απόζηαζε απηή είλαη απνδείρζεθε όηη είλαη πνιύ κηθξόηεξε ηνπ αλακελόκελνπ θαη είλαη πεξίπνπ ηεο ηάμεσο ησλ 2 κέηξσλ. Απηό κπνξνύκε λα ην ζπκπεξάλνπκε θαη από ηελ έληαζε ηνπ ξεύκαηνο πνπ κπνξεί λα ηξνθνδνηήζεη ην arduino ηα αηζζεηήξηα απηά. Τν πξόβιεκα πνπ ζα κπνξνύζε λα ιύζεη ην παξαπάλσ πξόβιεκα κε ηελ έληαζε ηνπ ξεύκαηνο είλαη ε ρξήζε θάπνηαο εμσηεξηθήο πεγήο αιιά θαη ε δεκηνπξγία ελόο εληζρπηή ζήκαηόο, ή δεκηνπξγία ελόο δηθηύνπ arduino. Δπίζεο ην ηειηθό θύθισκα πνπ δεκηνπξγήζεθε, γηα ηελ εύθνιε αληηθαηάζηαζε ησλ αηζζεηεξίσλ, ζα κπνξνύκε λα εύθνια «εθηππσζεί» γηα θαιπηέξα απνηειέζκαηά. Μελλονηική Δπγαζία και Δπεκηάζειρ Η αλάπηπμε ησλ arduino κπνξεί λα επεθηείλεη ην project ζε κεγάιν επίπεδν. Τν επόκελν ζηάδην είλαη, ε αλεμαξηεηνπνίεζε ηνπ arduino από θάζε ελζύξκαηε επηθνηλσλία. Φξήζε ησλ 3g shield , ηα νπνία δίλνπλ ηελ δπλαηόηεηα ζην arduino λα ζπλδεζεί ζε δίθηπα θηλεηήο ηειεθσλίαο. Φξήζηε ησλ δπλαηνηήησλ ηνπ εύθνινπ πξνγξακκαηηζκνύ, ώζηε λα ζπλδεζεί κε αλαλεώζηκεο πεγέο ελέξγεηαο, πρ ρξήζε ειηαθώλ πάλει ή κηθξώλ αλεκνγελλεηξηώλ, νη νπνίεο ζα θάλνπλ απηόλνκα ελεξγεηαθά ην arduino ώζηε λα επηηεπρζεί ε ζπλερή ξνή ησλ δεδνκέλσλ, ζε ζπλδπαζκό πάληα ηνπ 3g shield(22). Γεκηνπξγία δηθηύνπ arduino, ρξεζηκνπνηώληαο ηα WSΝ(18,22) δίθηπα θαη ηνπ πξσηνθόιινπ ZigBEE, ππάξρνπλ δηαζέζηκα shield πνπ αμηνπνηνύλ ην ZigBEE πξσηόθνιιν. Τέινο ε βειηηζηνπνίεζε ησλ ήδε ππάξρσλ εθαξκνγώλ έηζη ώζηε λα κπνξέζνπλ λα πξνζζέηνληαη κέζα από ηελ εθαξκνγή παξαπάλσ ζηαζκνί, έηζη ώζηε λα έρνπκε θαη πεξηζζόηεξα δεδνκέλα είηε γηα ζύγθξηζε είηε γηα άκεζε εκθάληζε ζηηο εθαξκνγέο Σελίδα 34 Πτυχιακή Εργασία Τμήματος Μηχανικών Πληροφορικής Βιβλιογπαθία 1. http://en.wikipedia.org/wiki/Data_logger 2. http://el.wikipedia.org/wiki/%CE%9C%CE%B5%CF%84%CE%B5%CF%89%CF%81% CE%BF%CE%BB%CE%BF%CE%B3%CE%AF%CE%B1 3. http://el.wikipedia.org/wiki/%CE%9C%CE%B5%CF%84%CE%B5%CF%89%CF%81% CE%BF%CE%BB%CE%BF%CE%B3%CE%B9%CE%BA%CF%8C%CF%82_%CF% 83%CF%84%CE%B1%CE%B8%CE%BC%CF%8C%CF%82 4. http://el.wikipedia.org/wiki/Server 5. http://www.ubuntu.com/server 6. http://www.ispconfig.org/page/home.html 7. http://el.wikipedia.org/wiki/Apache_HTTP_%CE%B5%CE%BE%CF%85%CF%80%CE %B7%CF%81%CE%B5%CF%84%CE%B7%CF%84%CE%AE%CF%82 8. http://el.wikipedia.org/wiki/Arduino 9. http://www.arduino.cc/en/Guide/Introduction 10. http://arduino.cc/en/Main/ArduinoEthernetShield 11. https://www.sparkfun.com/products/8942 12. https://www.sparkfun.com/datasheets/Sensors/Pressure/MPL115A1.pdf 13. http://www.adafruit.com/products/386 14. http://en.wikipedia.org/wiki/Data_logger 15. http://www.internetnow.gr/node/70 16. http://notepad-plus-plus.org/ 17. http://openlab.teipir.gr/2012/04/install-eclipse/ 18. Πηπρηαθή εξγαζία Δπίβιεςε θαη δηαρείξηζε ρώξνπ θαιιηεξγεηώλ κε ηε ρξήζε Αζύξκαηνπ Γηθηύνπ Αηζζεηεξίσλ (WSN) Βαζηιάθεο Γεώξγηνο (ΑΜ: 1659) Φξαγθηαδάθεο Μηραήι (ΑΜ: 1599) 19. Andreas Vlissidis,Kostas Michail,Giorgos Gounaris. ― Treatment of Meteorological data and real time presentation at TEI Crete Heraklion Internet‖, ΤΔΜU 2005, TEI Cret/Heraklion, 30 June 2005 20. Andreas Vlissidis. ―« A simplified method for the prediction of the produced energy from Wind and Irradiation, and application of results in a Hybrid Energy System‖. international Conference for Sustainable Energy in Transilvania University of Brasov, 7 July 2005 21. Giorgos Gounaris, Andreas Vlissidis, Kostas Michail. ― Weather stations distributed model for data processing and on-line internet presentation‖ ΤΔΜU 2006, TEI Crete/Heraklion, 3July 2006 22. Stavros Charakopoulos, Andreas Vlissidis, Denia Kolokotsa, Giorgos Vassilakis , Manos Makrygiannakis: ―The development of a Wireless Intergrated Sensor Network for enviromentals oversight in small buildings‖, 1th International Conference on Image Processing and Communications,September 16-18,2009 Bydgoszcz,Poland, proceedings 23. www.google.com 24. en.wikipedia.org Σελίδα 35