ΔΡΔΤΝΑ ΓΙΚΣΤΑΚΩΝ ΑΙΘΗΣΗΡΩΝ

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

Download "ΔΡΔΤΝΑ ΓΙΚΣΤΑΚΩΝ ΑΙΘΗΣΗΡΩΝ"

Transcript

1 ΠΑΝΔΠΙΣΗΜΙΟ ΠΑΣΡΩΝ ΣΜΗΜΑ ΗΛΔΚΣΡΟΛΟΓΩΝ ΜΗΥΑΝΙΚΩΝ ΚΑΙ ΣΔΥΝΟΛΟΓΙΑ ΤΠΟΛΟΓΙΣΩΝ ΣΟΜΔΑ ΗΛΔΚΣΡΟΝΙΚΗ ΚΑΙ ΤΠΟΛΟΓΙΣΩΝ ΔΡΔΤΝΑ ΓΙΚΣΤΑΚΩΝ ΑΙΘΗΣΗΡΩΝ ΓΙΠΛΩΜΑΣΙΚΗ ΔΡΓΑΙΑ ΣΟΤ ΧΑΡΑΛΑΜΠΟΤ ΑΝΔΡΕΟΤ (ΑΜ: 6462) Δπηβιέπσλ: Κ. Δπζηαζίνπ Αξ. Γηπι. Δξγ.:. ΠΑΣΡΑ 2011

2

3 ΠΙΣΟΠΟΙΗΗ Πηζηνπνηείηαη φηη ε δηπισκαηηθή εξγαζία κε ζέκα: «ΔΡΔΤΝΑ ΓΙΚΣΤΑΚΩΝ ΑΙΘΗΣΗΡΩΝ» Σνπ θνηηεηή ηνπ ηκήκαηνο Ηλεκηπολόγυν Μησανικών και Σεσνολογίαρ Τπολογιζηών Υαπάλαμπος Ανδπέος ηος Γημήηπιος (ΑΜ: 6462) Παξνπζηάζζεθε δεκφζηα ζην ηκήκα Ηιεθηξνιφγσλ Μεραληθψλ θαη Σερλνινγίαο Τπνινγηζηψλ ζηηο. Ο Δπηβιέπσλ Ο Γηεπζπληήο ηνπ Σνκέα Καζεγεηήο Κσλζηαληίλνο Δπζηαζίνπ Καζεγεηήο Δπζχκηνο Υνχζνο

4

5 Απ. Γιπλ. Δπγ.:. Θέμα: «ΔΡΔΤΝΑ ΓΙΚΣΤΑΚΩΝ ΑΙΘΗΣΗΡΩΝ» Φοιηηηήρ: ΑΝΓΡΔΟΤ ΥΑΡΑΛΑΜΠΟ (Α.Μ: 6462) Δπιβλέπυν: Κ. ΔΤΣΑΘΙΟΤ Πεπίλητη ηελ δηπισκαηηθή εξγαζία γίλεηαη κηα γεληθή κειέηε ζρεηηθά κε ηα αζχξκαηα δίθηπα αηζζεηήξσλ ηηο εθαξκνγέο ηνπο, ηεο δνκήο ησλ θφκβσλ, αλαθνξά ζηα δίθηπα, ηηο ηνπνινγίεο θαη ηα πξσηφθνιια πνπ ρξεζηκνπνηνχληαη ζηα ζπγθεθξηκέλα δίθηπα. ηελ ζπλέρεηα γίλεηαη κηα αλαθνξά ζην ιεηηνπξγηθφ ζχζηεκα tinyos θαη ζηε γιψζζα πξνγξακκαηηζκνχ ηνπ nesc. Σέινο, ζηα πιαίζηα ηεο δηπισκαηηθήο εξγαζίαο πινπνηήζακε κηα εθαξκνγή πνπ παξαθνινπζεί ηελ πγξαζία ζε κηα ζπγθεθξηκέλε πεξηνρή, ρξεζηκνπνηψληαο ηα αζχξκαηα δίθηπα αηζζεηήξσλ θαη παξνπζηάδεη ζηνλ ρξήζηε ηα απνηειέζκαηα κε έλα γξαθηθφ ηξφπν. Abstract Πάηξα 2011, Υαξάιακπνο Αλδξένπ The present thesis studies wireless sensor networks (WSN), on their applications, their structure, and reports on networks, topologies and their protocols used in WSN. Additionally a study on the tinyos operating system using the programming language nesc is reported. In order to demonstrate the efficiency of WSN an application that monitors the humidity in a given area using wireless sensor network technology and the results are presented to the user in a graphic way. Patra 2011, Charalampos Andreou

6

7 Θα ήθελα να αφιερώςω ζνα μικρό μζροσ τησ διπλωματικήσ μου εργαςίασ και να ευχαριςτήςω τον κ. Ευςταθίου που μου εμπιςτεφθηκε το ςυγκεκριμζνο θζμα και τον κ. Γιάννη Κωνςταντινίδη που με τισ υποδείξεισ του και την βοήθεια του κατάφερα να φζρω εισ πζρασ την διπλωματική μου εργαςία

8

9 Περιεχόμενα 1 Γενικά Εισαγωγή Χαρακτηριστικά ασφρματων δικτφων αισθητήρων Εφαρμογζς 6 2 Αρχιτεκτονική Τλικό - (Hardware/software) Κόμβοι Αιςθητήρεσ Αρχιτεκτονική Δομή δικτφου Ειςαγωγή Πρωτόκολλα ςτο κάθε επίπεδο 31 3 Εργαλεία Λειτουργικό φστημα Tiny OS nesc Σχηματική απεικόνιςη tinyos εφαρμογών 52 4 Εφαρμογή Εισαγωγή Αισθητήρες - Τγρασία Υγραςία Αιςθητήρασ Προγραμματισμός Κόμβοι Server Client Phidget SBC φνοψη 76 5 Παράρτημα Περιεχόμενα Εικόνων Βιβλιογραφία Ηλεκτρονικό Τλικό Client: Server TinyOS - nesc 82

10

11 Ασύρματα Δίκτυα Αισθητήρων (WSN)

12 2

13 1 Γενικά 1.1 Ειςαγωγό Φαληαζηείηε λα ζέιακε λα κεηξήζνπκε ηελ ζεξκνθξαζία ζε κηα πεξηνρή αξθεηψλ ηεηξαγσληθψλ ρηιηνκέηξσλ. Μεηά απφ ψξηκε ζθέςε αξθεηψλ εκεξψλ θαηαιήμακε φηη ε ιχζε ζην πξφβιεκα ζα ήηαλ λα πξνζιάβνπκε εθαηνληάδεο (ή θαη ρηιηάδεο) αλζξψπνπο εθνδηαζκέλνπο κε ζεξκφκεηξα θαη λα ηνπο ηνπνζεηήζνπκε ζηελ πεξηνρή (ηνπνζέηεζε κπνξεί λα είλαη ηπραία ή θαη νξγαλσκέλε). Όηαλ ην πείξακα ζα μεθηλήζεη ν θάζε άλζξσπνο ζα πξέπεη κε θάπνην ηξφπν λα κεηαθέξεη ηελ κέηξεζε ηνπ ζηνλ ππεχζπλν άλζξσπν πνπ ζα θαηαγξάθεη ηηο κεηξήζεηο ηνλ νπνίν θαη νλνκάδνπκε «ΤΓΚΔΝΣΡΩΣΗ». Λνγηθφ είλαη φζνη βξίζθνληαη θνληά ζηνλ «ΤΓΚΔΝΣΡΩΣΗ» λα ηνπ θσλάδνπλ θαη λα ηνπ ιέλε: «Δγψ, ν Γηάλλεο, κέηξεζα 25 βαζκνχο Κειζίνπ», «Δγψ, ν Γηψξγνο, κέηξεζα 21 βαζκνχο Κειζίνπ» θνθ(single-hop δίθηπν 1 ). Οη ππφινηπνη φκσο πνπ βξίζθνληαη καθξηά απφ ηνλ «ΤΓΚΔΝΣΡΩΣΗ» ηνπ θσλάδνπλε αιιά δελ αθνχεη γηα λα θαηαγξάςεη ηελ κέηξεζε, γηα απηφ θαη πξέπεη είηε λα πεξπαηήζνπλ θαη λα πάλε λα βξνχλε ηνλ «ΤΓΚΔΝΣΡΩΣΗ» (πνπ βέβαηα απηφ δελ είλαη ιχζε δηφηη κπνξεί λα βξίζθεηαη καθξηά ή λα κελ μέξνπλ αθξηβψο πνπ είλαη, ή αθφκα λα κελ έρνπλ ηελ ηθαλφηεηα λα θηλεζνχλε θνθ), είηε λα ρξεζηκνπνηήζνπλ ηελ πην θάησ απιή ιχζε. Ο θαζέλαο κπνξεί λα γξάθεη ζε έλα ραξηί ην φλνκα ηνπ δίπια ηελ κέηξεζε ηνπ θαη λα ην πεηάεη ζηνπο αλζξψπνπο πνπ είλαη δίπια ηνπ, ζηελ ζπλέρεηα νη επφκελνη λα θάλνπλε ην ίδην κε ην δηθφ ηνπο ραξηί θαζψο θαη κε ην ραξηί ησλ άιισλ ψζπνπ θάπνηα ζηηγκή ν «ΤΓΚΔΝΣΡΩΣΗ» λα παξαιακβάλεη ζην γξαθείν ηνπ φια ηα ραξηάθηα κε ηα νλφκαηα θαη ηηο κεηξήζεηο ηηο νπνίεο θαηαγξάθεη ζηνλ ππνινγηζηή ηνπ, δεκηνπξγψληαο κηα βάζε δεδνκέλσλ κε ηελ ζεξκνθξαζία ηεο πεξηνρήο(multi-hop δίθηπα 2 ). Η πην πάλσ ιχζε καο εγγπάηαη φηη ην δίθηπν ησλ αλζξψπσλ καο είλαη αξθεηά ζηαζεξφ δηφηη αλ νπνηαδήπνηε ζηηγκή έλαο δπζαξεζηεκέλνο άλζξσπνο απνθαζίζεη λα παξαηηεζεί ή θαη λα εγθαηαιείςεη ηελ ζέζε ηνπ ην δίθηπν ζα ζπλερίζεη λα ιεηηνπξγεί θαη λα κεηαθέξεη ηα κελχκαηα αθνχ νη ππφινηπνη ζα θαιχςνπλ ηελ απνπζία ηνπ. 1 Single-hop δίθηπν: ζην ζπγθεθξηκέλν δίθηπν φινη θφκβνη βξίζθνληαη ζηελ εκβέιεηα ηνπ ζηαζκνχ βάζεο θαη νη επηθνηλσλία θφκβσλ θαη ζηαζκνχ βάζεο γίλεηαη άκεζα. 2 Multi-hop δίθηπα: ζε απηνχ ηνπ είδνπο ηα δίθηπα θάπνηνη θφκβνη βξίζθνληαη έμσ απφ ηελ εκβέιεηα ηνπ ζηαζκνχ βάζεο έηζη γηα λα κεηαθέξνπλ ηα δεδνκέλα ηνπο πξέπεη λα ηα πξνσζήζνπλ ζηνπο ακέζσο επφκελνπο θφκβνπο θαη απηνί κε ηελ ζεηξά ηνπο ζηνπο επφκελνπο κέρξη ηα δεδνκέλα λα θηάζνπλ ζηνλ ζηαζκφ βάζεο. 3

14 Δικόνα 1 - Αναπαπάζηαζη ηηρ απσικήρ λύζηρ Σελ πην πάλσ ηδέα ζα κπνξνχζακε λα ηελ πινπνηήζνπκε κε ηελ ρξήζε αζχξκαησλ αηζζεηήξσλ ζηελ ζέζε ησλ αλζξψπσλ θαη ησλ αηζζεηήξηψλ νξγάλσλ ηνπο (ζηελ πην πάλσ πεξίπησζε ηα αηζζεηήξηα φξγαλα είλαη ηα ζεξκφκεηξα) θαη ελφο base station ζηελ ζέζε ηνπ «ΤΓΚΔΝΣΡΩΣΗ». Ο θάζε θφκβνο είλαη ελεξγεηαθά απηφλνκνο θαη έρεη ηελ δπλαηφηεηα λα παίξλεη κεηξήζεηο απφ ηνλ αηζζεηήξα ηνπ, λα ηηο επεμεξγάδεηαη θαη λα κεηαδίδεη ή λα παξαιακβάλεη παθέηα κε κεηξήζεηο ή εληνιέο πνπ πξνέξρνληαη απφ ηελ βάζε. Δλ θαηαθιείδη ν γεληθφο νξηζκφο ηνπ αζχξκαηνπ δηθηχνπ αηζζεηήξσλ είλαη: «Έλα αζύξκαην δίθηπν αηζζεηήξσλ (wireless sensor network WSN) είλαη έλα δίθηπν ην νπνίν απνηειείηαη από ελεξγεηαθά απηόλνκνπο θόκβνπο νη νπνίνη «αηζζάλνληαη», παξαηεξνύλ θπζηθά κεγέζε (ζεξκνθξαζία, πγξαζία, πίεζε, θίλεζε, εηθόλα, ήρν θηι) θαη κεηαδίδνπλ ηελ επεμεξγαζκέλε ( ή θαη όρη) κέηξεζε ηνπο, κε ηειηθή θαηεύζπλζε έλα ζηαζκό βάζεο (base station). Οη επηθνηλσλία ησλ θόκβσλ είλαη ακθίδξνκε, δειαδή όπσο κεηαδίδνπλ πιεξνθνξίεο ζην base station θάιιηζηα κπνξνύλ λα δερζνύλ πιεξνθνξίεο θαη από απηόλ». Με βάζε ηνλ άλσζελ νξηζκφ είλαη ινγηθφ φηη ηέηνηα δίθηπα ππφθεηληαη ζε πεξηνξηζκνχο/απαίηεζεηο πνπ ζηελ νπζία ηα δηαθνξνπνηνχλ απφ άιια αζχξκαηα δίθηπα. 4

15 1.2 Χαρακτηριςτικϊ αςύρματων δικτύων αιςθητόρων 1. Φακειή Καηαλάισζε: Οη θφκβνη ηνπ δηθηχνπ, ζπλήζσο, ηξνθνδνηνχληαη κε κπαηαξίεο νη νπνίεο κεηά απφ θάπνην ρξφλν δηάζηεκα ζα αδεηάζνπλ, απηφ έρεη ζαλ απνηέιεζκα κεηά απφ απηφ ην ρξνληθφ δηάζηεκα ην δίθηπν λα είλαη πιένλ άρξεζην. Άξα φζν πην ρακειή είλαη ε θαηαλάισζε ηνπ θάζε θφκβνπ μερσξηζηά, ηφζν πην πνιχ κεγαιψλεη απηφ ην ρξνληθφ δηάζηεκα θαη ηφζν κεηψλεηαη ην θφζηνο ζπληήξεζεο. ε αξθεηά δίθηπα ρξεζηκνπνηνχληαη αλαλεψζηκεο πεγέο ελέξγεηαο (πρ. ειηαθή ελέξγεηα), κηα ηέηνηα πινπνίεζε εμαξηάηαη φκσο απφ ηελ ηνπνζεζία θαη ηηο απαηηήζεηο ηνπ θάζε δηθηχνπ μερσξηζηά. Γηα παξάδεηγκα έλα δίθηπν πνπ κειεηά ζπγθεθξηκέλα ςάξηα ζε κεγάιν βάζνο θάπνηνπ σθεαλνχ δελ κπνξεί λα βαζηζηεί ζηνλ ήιην ζαλ πεγή ελέξγεηαο. Έλα άιιν παξάδεηγκα είλαη ηα body sensor networks (δίθηπα ζρεδηαζκέλα γηα ην αλζξψπηλν ζψκα), είλαη ζαθέο φηη ν θάζε θφκβνο ππφθεηηαη ζε πεξηνξηζκνχο κεγέζνπο άξα δελ είλαη θαζφινπ εθηθηφ λα εμαξηψληαη, γηα παξάδεηγκα, απφ ειηαθέο θπςέιεο γηα ελέξγεηα. 2. Απηόλνκε θαη πξνγξακκαηηδόκελε ιεηηνπξγία: Ο θάζε θφκβνο ζα πξέπεη λα έρεη ηελ ηθαλφηεηα λα ιεηηνπξγήζεη απηφλνκα, δειαδή λα μέξεη ηη λα θάλεη (λα πάξεη κεηξήζεηο), πφηε λα ην θάλεη (ζπρλφηεηα δεηγκαηνιεςίαο), πνπ ζα ζηείιεη ηελ κέηξεζε (πρ Broadcasting ζε φινπο φζνη είλαη ζηελ εκβέιεηα ηνπ). Σαπηφρξνλα ζα έρεη ηελ δπλαηφηεηα λα πξνγξακκαηίδεηαη δπλακηθά, γηα παξάδεηγκα κπνξεί ην base station λα δηαδψζεη ζην δίθηπν θαηλνχξγηα δεδνκέλα ιεηηνπξγίαο γηα ην θάζε θφκβν κε απνηέιεζκα ηνλ δπλακηθφ επαλαπξνγξακκαηηζκφ ηνπ δηθηχνπ. 3. Φακειό θόζηνο: Σελ δεδνκέλε ζηηγκή ην θφζηνο ησλ θφκβσλ (motes) πνπ θπθινθνξνχλ ζηελ αγνξά είλαη απαγνξεπηηθφ γηα κεγάιεο θιίκαθαο δίθηπα. Γηα παξάδεηγκα εάλ ζέινπκε λα παξαθνινπζήζνπκε ηελ πγξαζία ζην ηξνπηθφ δάζνο ηνπ Ακαδνλίνπ πνπ έρεη έθηαζε 5,5 εθαηνκκχξηα ηεηξαγσληθά ρηιηφκεηξα αληηιακβάλεζηε φηη κε αζχξκαηνπο αηζζεηήξεο νη φπνηνη έρνπλ εκβέιεηα ην πνιχ γχξσ ζηα 100 κέηξα ζα ρξεηαζηνχκε εθαηνκκχξηα θφκβνπο θαη εθαηνληάδεο εθαηνκκχξηα επξψ γηα ηελ αγνξά ηνπο. 4. Γξήγνξε δεκηνπξγία δηθηύνπ: Σα πεξηζζφηεξα δίθηπα έρνπλ ηελ ηθαλφηεηα κέζα ζε κεξηθά ιεπηά λα έρνπλ ραξηνγξαθήζεη ην δίθηπν ηνπο θαη λα μεθηλήζνπλ ηελ πξνγξακκαηηδφκελε ιεηηνπξγία ηνπο. Απηφ βέβαηά είλαη ζρεηηθφ δηφηη εμαξηάηαη αξθεηά θαη απφ ην κέγεζνο ηνπ δηθηχνπ θαη ζίγνπξα απφ ην hardware/software ησλ θφκβσλ. 5. Πξνζαξκνζηηθόηεηα: Βαζηθφ ραξαθηεξηζηηθφ ηέηνηνπ είδνπο δηθηχσλ είλαη ε ηθαλφηεηα ηνπο λα 5

16 πξνζαξκφδνληαη ζηα λέα δεδνκέλα ηνπ δηθηχνπ. Γηα παξάδεηγκα ε απψιεηα θάπνησλ θφκβσλ δελ θαηαζηξέθεη ην δίθηπν νιφθιεξν δηφηη ην δίθηπν, πξνζαξκφδεηαη θαη δεκηνπξγεί λέα «κνλνπάηηα» κεηαμχ ησλ θφκβσλ γηα λα δηαηεξεζεί ε ζπλέλσζε ηνπο. 6. Απιόηεηα: Οη πεξηνξηζκέλνη ππνινγηζηηθνί θαη ελεξγεηαθνί πφξνη ηνπ θάζε θφκβνπ απαίηεζαλ ηνλ ζρεδηαζκφ απιψλ θαη απνδνηηθψλ αιγνξίζκσλ γηα ηελ δηεθπεξαίσζε ησλ πξνγξακκαηηζκέλσλ δηεξγαζηψλ πνπ εθηειεί ην δίθηπν. 7. Απόδνζε: Θπζηάδνληαο ηελ ηαρχηεηα απνζηνιήο δεδνκέλσλ, νη θφκβνη κεηψλνπλ ηηο επαλεθπνκπέο παθέησλ ιφγν ζθαικάησλ, απμάλνληαο ηελ αμηνπηζηία ζηελ κεηάδνζε ηνπ θάζε παθέηνπ. Σα πην πάλσ απνηεινχλ γεληθά ραξαθηεξηζηηθά ησλ αζχξκαησλ δηθηχσλ αηζζεηήξσλ, αιιά παξφια απηά, αλάινγα απφ ηελ εθαξκνγή πνπ θαιείηαη λα πινπνηήζεη θάζε θφξα νπνηνδήπνηε δίθηπν, ελδέρεηαη λα γίλνπλ θάπνηα trade-off κεηαμχ ησλ ραξαθηεξηζηηθψλ. Γηα παξάδεηγκα αλ κηα εηαηξεία θαηαζθεπήο ππξεληθψλ αληηδξαζηήξσλ ζρεδίαδε έλα αζχξκαην δίθηπν αηζζεηήξσλ δελ ζα είρε ηφζνπο πεξηνξηζκνχο ζηελ θαηαλάισζε ελέξγεηαο απφ ηνπο θφκβνπο φζν ζα ήηαλ νη πεξηνξηζκνί γηα ηελ αμηνπηζηία ησλ δεδνκέλσλ πνπ κεηξνχλ θαη απνζηέιινπλ. 1.3 Εφαρμογϋσ Γηα λα αληηιεθζνχκε ηελ ζεκαζία απηψλ ησλ δηθηχσλ είλαη αλαγθαίν λα παξνπζηάζνπκε θάπνηνπο απφ ηνπο ηνκείο ζηνπο νπνίνπ εθαξκφδνληαη θαη πσο. 1. Πνιηηηθνί Μεραληθνί: ε αξθεηά θηήξηα, γέθπξεο, θξάγκαηα, δξφκνπο θηι εθαξκφδνληαη ζε θνκβηθά ζεκεία αζχξκαηνη αηζζεηήξεο ηθαλνί λα παξαθνινπζνχλ ηηο θαηαζθεπέο θαη λα αλά πάζα ζηηγκή λα κπνξνχλ λα θαζνξίζνπλ εάλ ε θαηαζθεπή είλαη επηθίλδπλε ή φρη. Σαπηφρξνλα κε ηελ πξνζηαζία ησλ θαηνίθσλ νη κεραληθνί κπνξνχλ λα παξαθνινπζήζνπλ ζε πξαγκαηηθφ-ρξφλν ηελ ζπκπεξηθνξά ησλ θαηαζθεπψλ ηνπο ζε θπζηθέο θαηαπνλήζεηο (ζεηζκνχο, αλέκνπο, ππξθαγηέο θηι) κε απψηεξν ζθνπφ ηελ κειινληηθή βειηίσζε ηνπο. 2. Βηνκεραλία θαη εκπόξην: Ο ηνκέαο ηεο βηνκεραλίαο αληηιήθζεθε ηηο ηεξάζηηεο δπλαηφηεηεο απηψλ ησλ δηθηχσλ θαη ε εθαξκνγή δελ άξγεζε λα έξζεη. Κάπνηα παξαδείγκαηα είλαη: παξαθνινχζεζε θαηάζηαζεο κεραλψλ, ξνκπνηηθψλ νρεκάησλ, νρήκαηα κεηαθνξάο πξντφλησλ, ζπλζεθψλ εξγαζίαο ζε εξγνζηάζηα παξαγσγήο πξντφλησλ επαίζζεησλ 6

17 ζε ζπγθεθξηκέλεο ζπλζήθεο (πρ παξαγσγή θαξκάθσλ), εληνπηζκφο πξντφλησλ θηι. 3. Σηξαηησηηθέο εθαξκνγέο: Η αλάπηπμε ησλ αζχξκαησλ δηθηχσλ αηζζεηήξσλ αξρηθά απνηέιεζε ζηξαηησηηθφ ζρέδην θαη ζηελ ζπλέρεηα κεηαθέξζεθε ζηνπο ππφινηπνπο ηνκείο. Ο ζηξαηφο ρξεζηκνπνηεί απηή ηελ ηερλνινγία γηα ηνλ εληνπηζκφ ερζξηθψλ δπλάκεσλ ζε άγλσζηεο πεξηνρέο, θαηεχζπλζε πνιεκηθψλ κεραλψλ θηι. 4. Πεξηβαιινληηθή Παξαθνινύζεζε: Η παξαθνινχζεζε πεξηβαιινληηθψλ πεξηνρψλ ίζσο θαη λα είλαη ε πην θνηλή εθαξκνγή ζηα αζχξκαηα δίθηπα αηζζεηήξσλ. Άιιεο ρξήζεηο είλαη: a. Παξαθνινχζεζε άγξησλ δψσλ ζην θπζηθφ ηνπο πεξηβάιινλ (ζα επέθεξε ζεκαληηθά απνηειέζκαηα ζηνπο εξεπλεηέο). b. Ο ηνκέαο ηεο γεσξγίαο κπνξεί λα έρεη κεγάια νθέιε εάλ εθκεηαιιεπζνχκε πιήξσο ηηο ηθαλφηεηαο ηνπ δηθηχνπ. Έλα νηθνλνκηθφ δίθηπν ζα είλαη ηθαλφ λα παξαθνινπζεί θάζε θπηφ μερσξηζηά δεκηνπξγψληαο έλα δηάγξακκα θαηάζηαζεο γηα ην θάζε θπηφ μερσξηζηά. Η εθαξκνγή πνπ πινπνηήζακε, θαη ζα εμεγήζνπκε παξαθάησ, ζηελ ζπγθεθξηκέλε δηπισκαηηθή παξαηεξεί ηελ πγξαζία ηνπ ρψκαηνο κηαο θαιιηέξγεηαο θαη εάλ πέζεη θάησ απφ έλα φξην ελεξγνπνηεί απηφκαην πφηηζκα. Η δηαηήξεζε ησλ θαηάιιεισλ ζπλζεθψλ (ζεξκνθξαζία, πγξαζία θηι) ζηα ζεξκνθήπηα, νκνηφκνξθα, επηηπγράλεηαη κε ηελ εγθαηάζηαζε αζχξκαησλ θφκβσλ πνπ παξέρνπλ πιεξνθνξίεο γηα ηηο ζπλζήθεο πνπ πξνζπαζνχκε λα δηαηεξήζνπκε. 5. Υγείαο: Ο ηνκέαο ηεο πγείαο δελ ζα κπνξνχζε λα κελ εθκεηαιιεπηεί απηή ηελ θαηλνηνκία, έλα παξάδεηγκα είλαη ηα πξναλαθεξζείζα BSN (body sensor networks) ηθαλά λα παξαθνινπζνχλ ηηο δσηηθέο ιεηηνπξγίαο ησλ αζζελψλ ζηνπο νπνίνπο εθαξκφδνληαη. Σα πην πάλσ παξαδείγκαηα απνηεινχλ έλα κηθξφ δείγκα γηα ην πνπ κπνξεί λα εθαξκνζζεί απηή ε ηερλνινγία. Δάλ αληηιεθζνχκε ηελ γεληθή ηδέα ησλ WSN ηφηε ν κφλνο πεξηνξηζκφο ζα είλαη ηα φξηα ηεο θαληαζίαο. 7

18 8

19 2 Αρχιτεκτονική 2.1 Υλικό - (Hardware/software) Κόμβοι Αλάινγα κε ηελ εθαξκνγή πνπ θαιείηαη λα πινπνηήζεη ην θάζε WSN ε αξρηηεθηνληθή ησλ αζχξκαησλ θφκβσλ ελδέρεηαη λα δηαθέξεη, παξφια απηά, ηα βαζηθά δνκηθά ζηνηρεία ηνπ θάζε θφκβνπ είλαη ζηαζεξά (φπσο θαίλεηαη θαη ζηελ πην θάησ εηθφλα). Κάζε θφκβνο ρξεηάδεηαη: Δικόνα 2 - Βαζικά Γομικά ζηοισεία ενορ αζύπμαηος κόμβος 1. Μηθξνειεγθηή (micro-controller): Ο κηθξνειεγθηήο απνηειεί ην θεληξηθφ δνκηθφ ζηνηρείν θάζε «έμππλεο» ζπζθεπήο, είλαη ππεχζπλνο γηα ην ζπγρξνληζκφ θαη ηελ εθηέιεζε φισλ ησλ ιεηηνπξγηψλ ηνπ ζπζηήκαηνο. Μέζν απηνχ νη ζπζθεπέο επεμεξγάδνληαη, ζηέιλνπλ ή παξαιακβάλνπλ πιεξνθνξία. ε θάπνηεο άιιεο ζπζθεπέο κπνξεί λα ζπλαληήζνπκε ζηελ ζέζε ηνπ κηθξνειεγθηή, κηθξνεπεμεξγαζηέο γεληθνχ ζθνπνχ, FPGA 3, DSP 4, ASIC 5 αιιά ζπλήζσο δελ απνηεινχλ βέιηηζηε ιχζε ζε ζέκαηα θαηαλάισζεο ελέξγεηαο, θφζηνπο, επθνιίαο πξνγξακκαηηζκνχ θαη ζπλεξγαζίαο κε ην ππφινηπν ζχζηεκα. 2. Μλήκε ( external memory): πλήζσο ρξεζηκνπνηείηαη FLASH memory ζε ζπλδπαζκφ κε ηελ κλήκε πνπ είλαη ζην chip ηνπ κηθξνειεγθηή ιφγν ρακειήο θαηαλάισζεο (ζε αληίζεζε κε ηελ 3 FPGA (field programmable gate array): «Δπηηφπηα ζπζηνηρία πξνγξακκαηηδφκελσλ ππιψλ» είλαη έλαο ηχπνο πξνγξακκαηηδφκελνπ νινθιεξσκέλνπ θπθιψκαηνο γεληθήο ρξήζεο 4 DSP (digital signal processor): Δπεμεξγαζηέο ςεθηαθνχ ζήκαηνο. 5 ASIC (application specific integrated circuits): Οινθιεξσκέλα ζρεδηαζκέλα γηα εηδηθέο εθαξκνγέο. 9

20 RAM 6 ). Δπίζεο ζε αξθεηά modes παξαηεξνχκε λα γίλεηαη δηαρσξηζκφο ηεο πεξηνρήο ηεο κλήκεο ζε πεξηνρή φπνπ απνζεθεχνληαη δεδνκέλα θαη εθαξκνγέο ηνπ ρξήζηε θαη ζηελ άιιε δεδνκέλα γηα ηελ νκαιή ιεηηνπξγία ηνπ θφκβνπ (πρ ην ιεηηνπξγηθφ). 3. Πνκπόο Γέθηεο Κεξαία (transceiver): Η ηθαλφηεηα ησλ θφκβσλ λα επηθνηλσλνχλ κεηαμχ ηνπο ή κε άιιεο, παξφκνηεο, ζπζθεπέο αζχξκαηα, νθείιεηαη ζε απηφ ην δνκηθφ ζηνηρείν. Η επηθνηλσλία κπνξεί λα επηηεπρζεί κε radio frequency (RF), optical communication (laser) θαη infrared (IR). Η ζπλεζέζηεξε επηινγή είλαη ε ρξήζε RF δηφηη νη δχν άιιεο ιχζεηο έρνπλ ζνβαξά κεηνλεθηήκαηα πνπ δελ κπνξνχλ λα μεπεξαζηνχλ ζε ηέηνηνπ είδνπο δίθηπα (απαηηνχλ νπηηθή επαθή, θαηάιιειεο πεξηβαιινληηθέο ζπλζήθεο θαη δελ έρνπλ ηελ ηθαλφηεηα γηα broadcast 7 ). 4. Πεγή Δλέξγεηαο (power source): Σν απνιχησο απαξαίηεην ζηνηρείν ζε φιεο ηηο ειεθηξνληθέο ζπζθεπέο είλαη ε πεγή ελέξγεηαο. Σν θάζε δνκηθφ ζηνηρείν ηνπ θφκβνπ ρξεηάδεηαη ελέξγεηα ε νπνία παξέρεηαη απφ κπαηαξίεο θαη ππθλσηέο. ε θάπνηεο εθαξκνγέο είλαη δπλαηφ λα παξέρνπκε ελέξγεηα ζηελ ζπζθεπή κε δηαθνξεηηθέο κεζφδνπο απφ ηηο ζπκβαηηθέο (κπαηαξηέο) φπσο κε εθκεηάιιεπζε ηεο ειηαθήο ελέξγεηαο, ηελ δηαθνξά ζεξκνθξαζίαο, δνλήζεσο ηεο ζπζθεπήο θαη γεληθά κε νπνηνδήπνηε ηξφπν κπνξνχκε λα κεηαηξέςνπκε ελέξγεηα απφ ην πεξηβάιινλ ζε ειεθηξηθή κνξθή. Η κεγαιχηεξε θαηαλάισζε ηνπ θφκβνπ έρνπκε θαηά ηελ απνζηνιή δεδνκέλσλ γηα παξάδεηγκα ε απνζηνιή 1kb ζε απφζηαζε 100 m ηζνδπλακεί, ελεξγεηαθά, κε ηελ εθηέιεζε 300 εθαηνκκπξίσλ εληνιψλ ζε έλα επεμεξγαζηή 100 εθαηνκκπξίσλ εληνιψλ αλά δεπηεξφιεπην κε θαηαλάισζε 1 Watt ζην ίδην ρξφλν ( 1 s). 5. Αλαινγηθέο/Χεθηαθέο είζνδνη Αηζζεηήξεο: Η ηθαλφηεηα ησλ θφκβσλ λα κπνξνχλ λα ζπιιέγνπλ πιεξνθνξίεο απφ ην πεξηβάιινλ νθείιεηαη ζην ηειεπηαίν δνκηθφ ηνπο ζηνηρείν. Αξθεηέο ζπζθεπέο έρνπλ ελζσκαησκέλνπο ζπγθεθξηκέλνπο αηζζεηήξεο. Άιιεο ζπζθεπέο, πην γεληθνχ ζθνπνχ, έρνπλ αλαινγηθέο (ή θαη ςεθηαθέο εηζφδνπο) ζηηο νπνίεο ν ζρεδηαζηήο κπνξεί λα εθαξκφζεη αλαινγηθνχο ( ή θαη ςεθηαθνχο) αηζζεηήξεο θαη κε θαηάιιειεο ηξνπνπνηήζεηο ζην software λα κπνξεί λα ζπιιέμεη πιεξνθνξίεο απφ ην πεξηβάιινλ. ηελ εθαξκνγή καο, ρξεζηκνπνηήζακε ηα telosb θαη tmote ηεο Crossbow θαη έηζη ζεσξήζακε αλαγθαίν ζην ζπγθεθξηκέλν ζεκείν ηεο δηπισκαηηθήο εξγαζίαο λα αλαθέξνπκε ηελ αξρηηεθηνληθή απηψλ ησλ θφκβσλ. 6 RAM (random access memory): Μλήκε ηπραίαο πξνζπέιαζεο. 7 Broadcast, είλαη γεληθή ε κεηάδνζε κελπκάησλ ρσξίο θαζνξηζκέλν παξαιήπηε. 10

21 Δικόνα 3 - ηοισεία μιαρ ζςζκεςήρ tmote Σo telos είλαη κηα ζπζθεπή πνιχ ρακειήο θαηαλάισζεο (βαζηθφ ραξαθηεξηζηηθφ ησλ WSNs). Η ζπζθεπή ρξεζηκνπνηεί βηνκεραληθά standards φπσο USB θαη ΙΔΔΔ θάλνληαο ηελ επηθνηλσλία κε άιιεο ζπζθεπέο ζρεηηθά εχθνιε δηαδηθαζία Χαρακτηριςτικϊ ςυςκευόσ: kbps 2.4GHz IEEE Chipcon Αζχξκαην πνκπνδέθηε. 2. πκβαηφηεηα κε άιιεο ζπζθεπέο πνπ ππνζηεξίδνπλ Μηθξνειεγθηήο 8MHz Texas Instrument MSP430 κε 10k RAM θαη 48k Flash. 4. Δλζσκαησκέλν ADC, DAC, ειεγθηή ηάζεο, DMA controller. 5. Δλζσκαησκέλε αληέλα κε εζσηεξηθή εκβέιεηα 50m θαη εμσηεξηθή 125m. 6. Δλζσκαησκέλνη αηζζεηήξεο πγξαζίαο, ζεξκνθξαζίαο θαη θσηφο. 7. Πνιχ ρακειή θαηαλάισζε ξεχκαηνο. 8. Υξεηάδνληαη ιηγφηεξν απφ 6κs γηα λα ηεζεί ζε ιεηηνπξγία ν επεμεξγαζηήο πνπ βξίζθεηαη ζε sleep mode. 9. Πξνγξακκαηηζκφο θαη ζπγθέληξσζε δεδνκέλσλ κέζσ USB. 10. Δπηπιένλ pins γηα input/output θαη control 11. SMA αληέλα connector. 12. Πιήξσο ζπκβαηφ κε ην TinyOS (ππνζηεξίδεη mesh networking) Ενϋργεια Γηα ελέξγεηα νη θφκβνη ρξεζηκνπνηνχλ δχν κπαηαξίεο AA. Η ηάζε ιεηηνπξγίαο ηνπ telos κπνξεί λα θπκαίλεηαη απφ 2.1 έσο 3.6 V DC (θαηά ηνλ πξνγξακκαηηζκφ ηεο flash κλήκεο ηνπ microcontroller ε ηάζε ζα πξέπεη λα είλαη ηνπιάρηζην 2.7 Volts, ζπλήζσο φκσο ν πξνγξακκαηηζκφο γίλεηαη κέζσ USB θαη ε ηξνθνδνζία παξέρεηαη απφ ην USB θαη είλαη ζηαζεξή ζηα 3Volts. Παξφια απηά απηφ ηζρχεη γηα OTAP, over the air programming, φπνπ ην base station πξνγξακκαηίδεη ηνπο θφκβνπο αζχξκαηα. Γηα θάπνηεο εθαξκνγέο κπνξεί λα πάξνπκε ηξνθνδνζία απφ ην 16-pin expansion controller (ζπγθεθξηκέλα απφ ην pin Analog Vcc, ζέζε 1 ζην U2, θαη ground απφ ην pin 9, 11

22 analog Gnd). Δίλαη ζεκαληηθφ λα γλσξίδνπκε φηη ζηα analog inputs ε ηάζε εηζφδνπ ΓΔΝ πξέπεη λα μεπεξάζεη ηα 3.6 Volts δηφηη ελδέρεηαη λα θαηαζηξέςνπκε ηελ ζπζθεπή Block Diagram Όπσο έρνπκε αλαθέξεη πην πάλσ θάζε θφκβνο ελφο αζχξκαηνπ δηθηχνπ αηζζεηήξσλ απνηειείηαη απφ ηα βαζηθά hardware δνκηθά ζηνηρεία, πην θάησ είλαη ην block δηάγξακκα ηνπ telos. Δικόνα 4 - Block Diagram ηος telos Τα δομικϊ χαρακτηριςτικϊ του telos εύναι: 1. Μηθξνειεγθηήο: MSP430 F1611. Ο κηθξνειεγθηήο απνηειείηαη απφ έλα επεμεξγαζηή 16-bit RISC 8 αξρηηεθηνληθήο, πνιχ ρακειήο θαηαλάισζεο. Ο επεμεξγαζηήο έρεη έλα εζσηεξηθφ ηαιαλησηή (DCO) ν νπνίνο κπνξεί λα ηαιαληεχεηαη ζε ζπρλφηεηα έσο θαη 8 MHz. Όηαλ ην ζχζηεκα βξίζθεηαη ζε sleep mode ν DCO ζα επαλέιζεη ζε θαηάζηαζε ιεηηνπξγίαο ζε 6κs (ζπλήζσο κφιηο 292ns ζε ζεξκνθξαζία δσκαηίνπ). Όηαλ ν DCO είλαη αλελεξγφο ν MSP430 ιεηηνπξγεί κε έλα εζσηεξηθφ θξχζηαιιν ζηα 32768Hz. Παξφιν πνπ ε ζπρλφηεηα ηνπ DCO κπνξεί λα αιιάμεη κε δηαθνξά ηάζεο θαη ζεξκνθξαζίαο, κπνξνχκε λα ηνλ βαζκνλνκήζνπκε ρξεζηκνπνηψληαο έλα 32KHz oscillator. Δπίζεο ν MSP430 έρεη 8 εμσηεξηθά θαη 8 εζσηεξηθά ADC ports. Οη εζσηεξηθνί ADC ρξεζηκνπνηνχληαη γηα λα δηαβάζνπκε ηελ ηηκή ηνπ εζσηεξηθνχ ζεξκίζηνξ ή λαη παξαθνινπζήζνπκε ηελ θαηάζηαζε ηεο πεγήο(κπαηαξία). Πνιιά πεξηθεξεηαθά είλαη 8 RISC Reduce Instructions Set Computer: είλαη ζπγθεθξηκέλε αξρηηεθηνληθή κηθξνεπεμεξγαζηψλ κε κεησκέλεο εληνιέο. 12

23 δηαζέζηκα φπσο SPI, UART, digital I/O ports, watchdog timer, Timers κε ηθαλφηεηα ζχγθξηζεο θαη απνζήθεπζεο ηεο ηηκήο. ηνλ MSP430 είλαη δηαζέζηκνη DACs, supply voltage supervisor θαη 3-port DMA controller. 2. Μλήκε: ST FLASH (1024k) 3. Πνκπνδέθηεο: CC2420 Radio 2.4GHz, IEEE Πεγή Δλέξγεηαο: 2 AA κπαηαξίεο, USB. 5. Αλαινγηθέο/Χεθηαθέο είζνδνη Αηζζεηήξεο: Δλζσκαησκέλνη Αηζζεηήξεο(πγξαζίαο, PAR sensor, TSR sensor), 10-pin + 6- pin inputs/outputs ςεθηαθέο θαη αλαινγηθέο Επικοινωνύα με υπολογιςτό Η επηθνηλσλία ησλ telos κε ηνλ ππνινγηζηή επηηπγράλεηε κέζσ ηνπ USB θαη ζπγθεθξηκέλα κέζσ ελφο FTDI 9 chip. Η εηαηξεία παξέρεη θαη ηα θαηάιιεια drivers (γηα Linux, Windows, Macintosh, BSD, Windows ce) ζηελ ηζηνζειίδα ηνπο ( ε πεξηβάιινλ windows, κεηά ηελ εγθαηάζηαζε ησλ drivers κηα ζπζθεπή telos ζα εκθαλίδεηαη ζηα Windows σο κηα COM port ( ή σο ζπζθεπή /dev ζε Linux, OSX, BSD). Άξα γηα λα επηθνηλσλήζεη ν ππνινγηζηήο κε ηελ ζπζθεπή αξθεί λα ρξεζηκνπνηήζεη ηελ port πνπ αλάζεζε ην ιεηηνπξγηθφ ζηελ ζπγθεθξηκέλε USB ζχξα. Η ζπζθεπή επηθνηλσλεί κε ηνλ ππνινγηζηή κέζν ηεο USART1 ηνπ MSP430.(ζε πεξηβάιινλ Linux κε ηελ εληνιή motelist ην ζχζηεκα παξνπζηάδεη πνηεο ζπζθεπέο telos είλαη ζπλδεδεκέλεο θαη πνπ). Δικόνα 5 - Η ενηολή motelist Προγραμματιςμόσ ςυςκευόσ Ο πξνγξακκαηηζκφο γίλεηαη κέζσ ηεο ζχξαο USB πνπ βξίζθεηαη ελζσκαησκέλε ζηελ ζπζθεπή. Απηφ γίλεηαη κε κηα παξαιιαγκέλε έθδνζε ηνπ MSP430 Bootstrap Loader, ην msp430-bsl, ην νπνίν πξνγξακκαηίδεη ηελ flash ηνπ κηθξνειεγθηή. Σν telos είλαη εθνδηαζκέλν κε πξνζηαζία απφ ςεπδή resets πνπ κπνξεί λα πξνθχςνπλ θαηά ηελ δηαδηθαζία πξνγξακκαηηζκνχ. Δπίζεο ην hardware πεξηκέλεη ζπγθεθξηκέλε ζεηξά ραξαθηήξσλ γηα λα μεθηλήζεη ηελ δηαδηθαζία πξνγξακκαηηζκνχ. Ο πξνγξακκαηηζκφο ηνπ θφκβνπ ρξεζηκνπνηψληαο ην πξφγξακκα msp430-bsl γίλεηαη σο εμήο: Έζησ πσο ην πξφγξακκα είλαη 9 FTDI Future Technology Devices International: Δίλαη κηα εηαηξεία πνπ θαηαζθεπάδεη chips πνπ κεηαηξέπνπλ δεδνκέλα απφ USB ζε RS233 ζήκαηα (θαη ην αληίζηξνθν). 13

24 ζην αξρείν app.ihex θαη ζηελ COM3(ή /dev/ttyusb2 ζε linux) ρξεζηκνπνηψληαο ηεο πην θάησ εληνιή κε ηα ζπγθεθξηκέλα flags μεθηλάεη ε δηαδηθαζία: >msp430-bsl telosb c 2 -r e I p app.ihex MSP430 Bootstrap Loader Version: 1.39-telos-6 Mass Erase Transmit default password Invoking BSL Transmit default password Current bootstrap loader version: 1.61 (Device ID: f16c) Changing baudrate to Program 2742 bytes programmed Reset device Υξεζηκνπνηψληαο tinyos ε δηαδηθαζία εγθαηάζηαζεο θάπνηνπ πξνγξάκκαηνο ζε έλα θφκβνο γίλεηαη πην απιή ρξεζηκνπνηψληαο ηελ εληνιή make telosb install, n (φπνπ n είλαη ν 16-bit αξηζκφο, ηαπηφηεηα ηνπ θφκβνπ). Δικόνα 6 - Δκηέλεζη ενηολήρ make telosb install,n Πομποδϋκτησ ην telos ππάξρεη ν CC2420 ηεο Chipcon. Ο CC2420 είλαη ζπκβαηφο κε ην πξφηππν IEEE θαη παξέρεη PHY 10 θαη θάπνηεο MAC 11 ιεηηνπξγίεο. Ο CC2420 είλαη ηδηαίηεξα δηακνξθψζηκνο γηα αξθεηέο εθαξκνγέο κε ηηο πξνθαζνξηζκέλεο ξπζκίζεηο. Πεξαηηέξσ 10 PHY Physical layer ζπληνκνγξαθία γηα ην θπζηθφ ζηξψκα ηνπ OSI κνληέινπ 11 MAC media access control- είλαη ην sub layer ηνπ data link layer ηνπ OSI κνληέινπ. 14

25 πιεξνθνξίεο γηα ηνλ CC2420 κπνξεί λα βξεη θαλείο ζηελ ηζηνζειίδα ηνπ θαηαζθεπαζηή Ο CC2420 ειέγρεηαη απφ ηνλ κηθξνειεγθηή MSP430 κέζν ηεο SPI port θαη κηα ζεηξά απφ ςεθηαθέο εηζφδνπο/εμφδνπο θαη ηα interrupts. Ο κηθξνειεγθηήο έρεη ηελ δπλαηφηεηα λα απελεξγνπνηήζεη ηνλ CC2420 γηα λα κεηψζεη ηελ ζπλνιηθή θαηαλάισζε ελέξγεηαο. Μηα επηπιένλ δπλαηφηεηα ηνπ CC2420 είλαη ν θαζνξηζκφο θαηαλάισζεο ελέξγεηαο πνπ είλαη αληηζηξφθσο αλάινγε ηνπ θέξδνπο ηεο θεξαίαο ε θαηαλάισζε θαζνξίδεηαη απφ ηνλ register TXCTRL φπσο θαίλεηαη ζηνλ πην θάησ πίλαθα: PA_LEVEL TXCTRL register Output Power [dbm] Current Consumption [ma] 31 0xA0FF xA0FB xA0F xA0F xA0EF xA0EB xA0E xA0E Ο CC2420 παξέρεη έλα ςεθηαθφ ζήκα (RSSI) πνπ θαζνξίδεη ηελ ηζρχ ηνπ ζήκαηνο, πνιχ ζεκαληηθφ γηα ζπγθεθξηκέλεο εθαξκνγέο φπνπ είλαη αλαγθαίν λα γλσξίδνπκε εάλ ν θφκβνο βξίζθεηαη κέζα ζηελ εκβέιεηα. Δπηπιένλ παξέρεηαη ην link quality indication (LQI) πνπ ππνινγίδεηαη απφ ην error rate πνπ πξνθχπηεη απφ ηελ παξαιαβή παθέησλ, ζε θάζε παξαιαβή παθέηνπ ν πνκπνδέθηεο δεηγκαηνιεπηεί ηα 8 πξψηα chips γηα λα ππνινγίζεη ην error rate Κεραύα Οη ζπζθεπέο telos έρνπλ δχν επηινγέο φζν αθνξά ηελ θεξαία. Η πξψηε επηινγή είλαη ε πξνεγθαηεζηεκέλε θαη είλαη ε εζσηεξηθή θεξαία θαη ε δεχηεξε είλαη ε ρξήζε εμσηεξηθήο θεξαίαο κέζν ηνπ SMA connector 12. Η εξγνζηαζηαθή ξχζκηζε ζέηεη ηελ εζσηεξηθή θεξαία θχξηα θαη απηή ζα ρξεζηκνπνηεί ν CC2420. Παξφια απηά νη θαηαζθεπαζηέο δίλνπλ ηελ δπλαηφηεηα λα εληζρχζνπλ ην ζήκα ηνπ telos ρξεζηκνπνηψληαο εμσηεξηθή θεξαία ζην SMA connector, απηφ φκσο απαηηεί θάπνηα κεηαηξνπή ζην ζχζηεκα ε νπνία είλαη ε κεηαθίλεζε ηνπ ππθλσηή C73 ιίγν πην πέξα απφ ην εξγνζηαζηαθφ ηνπ ζεκείν, φπσο θαίλεηαη ζην πην θάησ ζρήκα: 12 SMA SubMiniature version A - connectors: είλαη νκναμνληθνί ζχλδεζκνη θεξαηψλ 15

26 Δικόνα 7 - Δναλλαγή εζυηεπικήρ και εξυηεπικήρ κεπαίαρ Εξωτερικό FLASH ην telosb ρξεζηκνπνηείηαη ε ST M25P80 40MHz ζεηξηαθνχ θψδηθα flash memory γηα απνζήθεπζε δεδνκέλσλ θαη θψδηθα. Η ζπλνιηθή ρσξεηηθφηεηα ηεο είλαη 1024kB θαη απνηειείηαη απφ 16 ηκήκαηα(segments) ησλ 64kB. Η επηθνηλσλία γίλεηαη κέζσ ηνπ SPI γηα απηφ θαη πξέπεη λα γίλεηαη πξνζερηηθή ρξήζε ηνπ ηεο κλήκεο αθνχ ρξεζηκνπνηεί ηνλ ίδην δίαπιν πνπ ρξεζηκνπνηεί θαη ν πνκπνδέθηεο CC2420. Δίλαη ζεκαληηθφ λα αλαθέξνπκε φηη απηή ηε ζεηξά flash memory πάληα μεθηλάεη ζε θαηάζηαζε standby, γηα λα ηελ βάινπκε ζε θαηάζηαζε ρακειήο θαηαλάισζεο ζα πξέπεη λα ζηείινπκε ζπγθεθξηκέλε εληνιή θαηά ηελ δηάξθεηα ηνπ booting. Γηα απηή ηελ δηαδηθαζία δελ πξέπεη λα αλεζπρεί έλαο πξνγξακκαηηζηήο πνπ ρξεζηκνπνηεί tinyos αθνχ ην ιεηηνπξγηθφ αλαιακβάλεη λα ην θάλεη. Η ζπγθεθξηκέλε flash παξέρεη κηα ιεηηνπξγία πνπ νλνκάδεηαη hardware write protection έηζη ψζηε λα κελ κπνξεί λα δηαγξαθεί φζν ην 7 bit ηνπ status register είλαη set. Ο κφλνο ηξφπνο γηα λα θάλνπκε ην bit unset γίλεηαη φζν ε ζπζθεπή είλαη ελεξγνπνηεκέλε κέζν USB port. Όηαλ ε ζπζθεπή ελσζεί δηακέζνπ ηεο USB ν status register αλαλεψλεηαη θάλνληαο unset ηα write protect θαη block protect bits ηνπ. Δικόνα 8 - Status Register (telosb) Με απηή ηελ ιεηηνπξγία ε ζπζθεπή πξνζηαηεχεη ζπγθεθξηκέλα segments ηα νπνία νλνκάδνληαη write protected segments. Δξγνζηαζηαθά ην 15 ν segment είλαη write protected θαη ην SRWD bit είλαη set. ην 15 ν segment βξίζθεηαη ην golden image θαη factor metadata. ηελ νπζία ην golden image είλαη ην αξρηθφ, πξνεγθαηεζηεκέλν πξφγξακκα ηεο ζπζθεπήο θαη δίλεη ηελ δπλαηφηεηα ζηελ ζπζθεπή λα επηζηξέςεη ζε απηή ηελ θαηάζηαζε (factory settings) αθφκα θαη ζε πεξίπησζε πνπ ν ρξήζηεο εγθαηαζηήζεη έλα άιιν image, ίζσο θαη 16

27 ειαηησκαηηθφ. Αθνχ ην bit 7 κπνξεί λα γίλεη unset φηαλ ε ζπζθεπή ηξνθνδνηείηαη απφ ην USB ηφηε θαη ην golden image κπνξεί λα ηξνπνπνηεζεί ζε απηή ηελ πεξίπησζε (φπσο θαη ζε φιεο ηηο ζπζθεπέο ην flashing είλαη κηα «επηθίλδπλε» δηαδηθαζία αλ δελ αθνινπζήζνπκε πηζηά ηηο νδεγίεο ηνπ θαηαζθεπαζηή) Εςωτερικού αιςθητόρεσ 1. Υγξαζίαο/Θεξκνθξαζίαο: Οη ζπγθεθξηκέλνη αηζζεηήξεο είλαη πξναηξεηηθνί θαη θαηαζθεπάδνληαη απφ ηελ Sensirion AG ( ηα ζπγθεθξηκέλα κνληέια SHT11 θαη SHT15 κπνξνχλ λα ηνπνζεηεζνχλ απεπζείαο ζηελ ζέζε U3 ηνπ telos. Οη SHT11/SHT15 βαζκνλνκνχληαη θαη παξάγνπλ ςεθηαθή έμνδν. Οη ζπληειεζηέο βαζκνλφκεζεο απνζεθεχνληαη ζηελ EEPROM 13 ηνπ sensor. ην εζσηεξηθφ ηνλ αηζζεηήξσλ βξίζθνπκε έλα 14-bit ADC πνπ κεηαηξέπεη ηελ αλαινγηθή κέηξεζε ηνπ αηζζεηήξα ζε ςεθηαθή. Βαζηθά κεγέζε ησλ αηζζεηήξσλ δίλνληαη πην θάησ: πγξαζία ζεξκνθξαζία Parameter Min Typ Max Units Resolution %RH Bit Repeatability %RH Range %RH Resolution o F Bit Repeatability o F o F Range o C o F o C 2. Φσηόο: Μηα κεγάιε πνηθηιία αηζζεηήξσλ θσηφο κπνξνχλ λα ρξεζηκνπνηεζνχλ, ζην version moteiv ηνπ telos ρξεζηκνπνηνχληαη θσηνδίνδνη ηεο Hamamatsu Corporation ( Οη εξγνζηαζηαθέο θσηνδίνδνη είλαη νη S1087 πνπ αληρλεχνπλ θσηνζπλζεηηθή αθηηλνβνιία θαη S πνπ αληρλεχνπλ φιν ην νξαηφ θάζκα θσηφο θαη ην ππέξπζξν. Πην θάησ είλαη πεξηνρή ιεηηνπξγίαο ησλ αηζζεηήξσλ: 13 EEPROM Electrical Erasable Programmable Read Only Memory είδνο κλήκεο 17

28 Δικόνα 9 - Πεπιοσή λειηοςπγίαρ ηυν θυηοδιόδυν Expansion Connector (υποδοχό επϋκταςησ) ην ζχζηεκα ηνπ telos ππάξρνπλ δχν ππνδνρέο επέθηαζεο (U2 θαη U28) θαη δχν δεπγάξηα jumpers πνπ θαζνξίδνπλ ηελ ιεηηνπξγία ησλ pins. Οη ππνδνρέο επεθηάζεηο ρξεζηκνπνηνχληαη γηα λα κπνξνχκε λα πξνζζέηνπκε επηπιένλ πεξηθεξεηαθέο ζπζθεπέο, φπσο αλαινγηθνχο αηζζεηήξεο, νζφλεο, ςεθηαθά πεξηθεξεηαθά θηι. Η U2 είλαη κηα 10-pin IDC header θαη ε U28 είλαη 6-pin header. Η U2 δελ δηαθέξεη κεηαμχ telosa θαη telosb, παξέρεη ςεθηαθέο/αλαινγηθέο εηζφδνπο/εμφδνπο. Η U28 ππάξρεη ζηελ δεχηεξε έθδνζε ηνπ telos (telosb) θαη παξέρεη πξφζβαζε ζηηο ζπγθεθξηκέλεο ιεηηνπξγίεο ηεο δεχηεξεο έθδνζεο. Πην θάησ αλαθέξνπκε ηα pins θαη ηελ ιεηηνπξγία ηνπο: Δικόνα 10 - Τποδοσείρ επέκηαζηρ (U2, U28) U2 Pin Ονομαζία Λειηοςπγία 1 Analog Vcc (AVcc) Σάζε ηξνθνδνζίαο πνπ παξέρεη ην telos ζε κηα εμσηεξηθή ζπζθεπή (3V) 2 UART 14 Receive(UART0RX) Δίζνδνο ηεο UART 3 Analog Input 0 (ADC0) Η πξψηε (0) αλαινγηθή είζνδνο 4 UART Transmit(UART0TX) Έμνδνο ηεο UART 5 Analog Input 1 (ADC1) Η δεχηεξε (1) αλαινγηθή είζνδνο 14 UART universal asynchronous receiver/transmitter είλαη Hardware ην νπνίν κεηαηξέπεη παξάιιεια δεδνκέλα ζε ζεηξηαθή κνξθή. 18

29 6 I2C 15 Clock (I2C_SCL) Σν ξφινη πνπ ρξεηάδεηαη ν δίαπινο I2C γηα λα ζπγρξνλίζεη ηελ κεηαθνξά δεδνκέλσλ. 6 Shared Digital I/O 4 (GIO4) Κοινή τηθιακή (4) είζοδορ/έξοδορ 7 Analog Input 2 (ADC2) Η ηξίηε (2) αλαινγηθή είζνδνο 7 Exclusive Digital I/O 1 (GIO1) Αποκλειζηική Ψηθιακή (1) είζοδορ/εξοδορ 8 I2C Data (I2C_SDA) Γεδνκέλα ηνπ δηαχινπ I2C 8 Shared Digital I/O 5 (GIO5) Κοινή τηθιακή (5) είζοδορ/εξοδορ 9 Analog Ground (Gnd) Γείσζε ηνπ ζπζηήκαηνο 10 Analog Input 3 (ADC3) Η ηέηαξηε (3) αλαινγηθή είζνδνο 10 Exclusive Digital I/O 0 (GIO0) Αποκλειζηική τηθιακή (0) είζοδορ/εξοδορ Σα pins 6, 7, 8 θαη 10 έρνπλ δηπιή ζεκαζία (φπσο θαίλεηαη θαη ζηνλ πίλαθα), δειαδή γηα παξάδεηγκα αλάινγα κε ηελ εθαξκνγή πνπ θαιείηε λα πινπνηήζεη ην ζπγθεθξηκέλν telos κπνξεί ην pin 10* λα είλαη είηε αλαινγηθή είζνδνο είηε ςεθηαθή I/O *(Σν ζπγθεθξηκέλν pin εάλ ζα ρξεζηκνπνηεζεί γηα ςεθηαθφ I/O ηφηε ζα πξέπεη λα αληηθαηαζηαζεί ε αληίζηαζε R14 κε κηα άιιε κεδεληθή αληίζηαζε γηα λα ελεξγνπνηεζεί ε είζνδνο ζηνλ κηθξνειεγθηή. Δπίζεο ε R16 ζα πξέπεη λα αληηθαηαζηαζεί κε κεδεληθή αληίζηαζε γηα λα ελεξγνπνηεζεί θαη ε GIO1. ε πεξίπησζε πνπ ελεξγνπνηήζεθαλ ηα ςεθηαθά GIO0 θαη GIO1 ηφηε εάλ ν ρξήζηεο αιιάμεη Mode θαη πξνζπαζήζεη λα δηαβάζεη αλαινγηθέο εηζφδνπο ηα απνηειέζκαηα δελ ζα είλαη ζσζηά.) U28 Pin Ονομαζία Λειηοςπγία 1 Analog Input 6 (ADC0) Η πέκπηε (6) αλαινγηθή είζνδνο 1 DAC0 Αλαινγηθή έμνδνο 2 Analog Input 7 (ADC7) Η έθηε (5) αλαινγηθή είζνδνο 2 DAC 1 / SVS in Αναλογική έξοδορ / supply voltage supervisor 3 Exclusive Digital I/O 2 (GIO2) Απνθιεηζηηθή ςεθηαθε είζνδνο/έμνδνο 3 Timer A Capture (TA1) Ρολόι Α 4 Exclusive Digital I/O 3 (GIO3) Απνθιεηζηηθή ςεθηαθή είζνδνο/εμνδνο 4 External DMA trigger (DMAE0) Δμσηεξηθφο έιεγρνο ηνπ direct memory access 5 User Interrupt (UserInt) Δμσηεξηθφ interrupt 6 Reset Δμσηεξηθφ reset Δπηπιένλ παξέρεηαη έλαο μερσξηζηφο supply voltage supervisor ζηελ ζέζε U7 θαη απνηειείηαη απφ 2-pins: Δικόνα 11 - supply voltage supervisor U7 Pin Ονομαζία Λειηοςπγία 1 Analog Input 7 (ADC7) Αλαινγηθή είζνδνο 15 I2C inter integrated Circuit είλαη έλαο δίαπινο επηθνηλσλίαο κεηαμχ ειεθηξνληθψλ ζπζθεπψλ 19

30 1 DAC 1 /SVS In Αλαινγηθή έμνδνο / supply voltage supervisor είζνδνο 2 SVS out Supply voltage supervisor έμνδνο Παρατόρηςη εςωτερικόσ θερμοκραςύα και τϊςησ Ο MSP430 έρεη εζσηεξηθφ αηζζεηήξα ζεξκνθξαζίαο θαη ηάζεο ν νπνίνο κπνξεί λα ρξεζηκνπνηεζεί κέζν ηνπ ADC interface(βιέπε εμήγεζε interface ζην ππνθεθάιαην tinyos). ηελ είζνδν 11 ηνπ 12-bit ADC είλαη ε έμνδνο ελφο δηαηξέηε ηάζεο θαη ππνινγίδεηαη απφ ην πην θάησ ηχπν: Η εζσηεξηθή ζεξκνθξαζία είλαη ζηελ ζέζε 10 ηνπ ADC Αιςθητόρεσ Με ηνλ φξν αηζζεηήξαο ελλννχκε έλα ζχζηεκα ην νπνίν ιακβάλεη σο είζνδν έλα θπζηθφ κέγεζνο θαη ην κεηαηξέπεη, αλάινγα, ζε έλα άιιν θπζηθφ κέγεζνο πνπ είλαη αλαγλσξίζηκν ζηνλ παξαηεξεηή ή ζηελ ειεθηξηθή/κεραληθή ζπζθεπή. Τπάξρνπλ παξά πνιιά παξαδείγκαηα απφ ηελ θαζεκεξηλφηεηα πνπ ρξεζηκνπνηνχκε αηζζεηήξεο. Γηα παξάδεηγκα έλα ζεξκφκεηξν κεηαηξέπεη ηελ δηαζηνιή ηνπ πιηθνχ ζε κεηξήζηκε πνζφηεηα αθνχ ην πιηθφ (παιηά ρξεζηκνπνηήζνπκε πδξάξγπξν, αιιά πιένλ ιφγν ηεο ηνμηθφηεηαο ηνπ ηνλ αληηθαηαζηήζακε κε αιιά πιηθά παξφκνηαο δηαζηνιήο) δηαζηέιιεηαη κέζα ζε έλα ηξηρνεηδή ζσιήλα θαη κεγαιψλεη ην «κήθνο» ηνπ ην νπνίν θαη παξαηεξείηαη ζην βαζκνλνκεκέλν ζσιήλα. Έηζη γηα ζπγθεθξηκέλε ζεξκνθξαζία ζα έρεη ζπγθεθξηκέλν κέγεζνο πνπ αληηζηνηρεί ζε ζπγθεθξηκέλνπο βαζκνχο θειζίνπ. πλήζσο ε αηζζεηήξεο εθκεηαιιεχνληαη θπζηθέο αληηδξάζεηο θάπνηνλ πιηθψλ ζε ζπγθεθξηκέλεο αιιαγέο πεξηβάιινληνο γηα λα κεηαηξέςνπλ ηελ αιιαγή ζε κεηξήζηκε πνζφηεηα. Γηα παξάδεηγκα κε βάζε ην θσηνειεθηξηθφ θαηλφκελν 16 κπνξνχκε λα αληρλεχζνπκε ηελ χπαξμε θσηφο (ή άιιεο ειεθηξνκαγλεηηθήο αθηηλνβνιίαο) ρξεζηκνπνηψληαο ηελ εθπνκπή ειεθηξφλησλ πνπ πξνθχπηεη απφ ην θαηλφκελν γηα λα κεηξήζνπκε ην ειεθηξηθφ ξεχκα ην νπνίν ζα είλαη θαη αλάινγν ηεο έληαζεο ηεο αθηηλνβνιίαο. 16 Φσηνειεθηξηθφ θαηλφκελν: είλαη κηα θβαληηθή δηεξγαζία θαηά ηελ νπνία απειεπζεξψλνληαη ειεθηξφληα απφ κηα επηθάλεηα αγσγνχ φηαλ πξνζπέζεη ζε απηή ειεθηξνκαγλεηηθή αθηηλνβνιία ζπρλφηεηα ηέηνηαο ψζηε ηα ειεθηξφληα λα θαηνξζψζνπλ λα ππεξπεδήζνπλ ην θξάγκα δπλακηθήο ελέξγεηαο πνπ ηα «εγθισβίδεη» ζηελ επηθάλεηα απηή. 20

31 Δικόνα 12 - Γιάθοπερ μοπθέρ αιζθηηήπυν ρεδφλ ζε θάζε ζπζθεπή ππάξρνπλ αηζζεηήξεο, θαζεκεξηλά νη ζπζθεπέο παίξλνπλ «κηθξέο» απνθάζεηο κε βάζε ηελ θαηάζηαζε ηνπ πεξηβάιινληνο ηνπο. Δίλαη, κάιινλ, ακέηξεηεο νη εθαξκνγέο πνπ ρξεζηκνπνηνχλ αηζζεηήξεο. ε πνιιέο είλαη εκθαλήο ε ρξήζε ηνπο θαη ζε άιιεο, πάιη, δελ ζα ην θαληαδφκαζηαλ. Δθαξκνγέο πνπ έρνπλ λα θάλνπλ κε ηελ απηνθηλεηνβηνκεραλία, θαζεκεξηλή δσή, αεξνδηαζηεκηθή, ηαηξηθή, αγξνθαιιηέξγεηα θηι. Οη αηζζεηήξεο κπνξεί λα είλαη: κεραληθνί, ειεθηξνληθνί ή θαη βηνινγηθνί. Υαξαθηεξηζηηθά κεγέζε πνπ θαζνξίδνπλ ηελ πνηφηεηα θαη ηα φξηα ηνπ θάζε αηζζεηήξα δίλνληαη πην θάησ: 1. Δύξνο ιεηηνπξγίαο: Δίλαη ην θπζηθφ φξην πνπ έρεη ν αηζζεηήξαο, γηα παξάδεηγκα έλα απιφ ζεξκφκεηξν ζην ζπίηη δελ κπνξεί λα κεηξήζεη αθξαίεο ζεξκνθξαζίεο ( πρ 5000 ν C ή ν C). 2. Αθξίβεηα: Καηά πφζν ε ηηκή εμφδνπ αληηθαηνπηξίδεη πιήξσο ηελ ηηκή εηζφδνπ. 3. Σθάικα: Η δηαθνξά πνπ πξνθχπηεη απφ ηελ πξαγκαηηθή ηηκή εμφδνπ θαη ηελ ζεσξεηηθή ηηκή εμφδνπ γηα ηελ ίδηα είζνδν. 4. Αλνρή: Μέγηζην ζθάικα ηνπ αηζζεηήξα. 5. Δπαηζζεζία: Καζνξίδεη πφζν αιιάδεη ε έμνδνο ηνπ αηζζεηήξα φηαλ αιιάδεη ε είζνδνο ηνπ. Γηα παξάδεηγκα, ζε έλα ζεξκφκεηξν πδξάξγπξνπ εάλ ν πδξάξγπξνο θηλεζεί θαηά έλα εθαηνζηφκεηξν φηαλ ε ζεξκνθξαζία αιιάμεη θαηά έλα βαζκφ θειζίνπ ηφηε ε επαηζζεζία ηνπ ζεξκνκέηξνπ είλαη 1 cm/ o C (ζηελ νπζία είλαη ε θιίζε ηεο επζείαο dy/dx, αλ είλαη βέβαηα γξακκηθφο αηζζεηήξαο). Απφ ηνλ νξηζκφ ηεο επαηζζεζίαο θαηαιήγνπκε ζην ινγηθφ ζπκπέξαζκα φηη εάλ ζέινπκε ν αηζζεηήξαο λα κεηξάεη πνιχ κηθξέο αιιαγέο ζηελ είζνδν ηνπ, ηφηε πξέπεη λα έρεη κεγάιε επαηζζεζία. 6. Νεθξή Εώλε: Η κέγηζηε κεηαβνιή ζηελ είζνδν πνπ δελ αληρλεχεηαη απφ ηνλ αηζζεηήξα (δελ αιιάδεη ε έμνδνο). 21

32 7. Γξακκηθόηεηα: Καηά πφζν ε έμνδνο κεηαβάιιεηαη γξακκηθά ζε κηα γξακκηθή είζνδν. Απφ ηνπο ηδαληθνχο αηζζεηήξεο απαηηνχκε λα είλαη γξακκηθνί. 8. Απόθξηζε: Σν ρξνληθφ δηάζηεκα απφ ηελ ζηηγκή πνπ ε είζνδνο κεηαβάιιεηαη κέρξη λα κεηαβιεζεί ε έμνδνο. 9. Δπαλάιεςε: Η ηθαλφηεηα ηνπ αηζζεηήξα γηα ηελ ίδηα είζνδν λα παξάγεη ηελ ίδηα έμνδν νπνηαδήπνηε ζηηγκή ζπκβεί. Αλάινγα κε ηελ επηξξνή ησλ αηζζεηήξσλ ζην πεξηβάιινλ ηνπο κπνξνχκε λα θάλνπκε κηα θαηεγνξηνπνίεζε, σο εμήο: 1. Παζεηηθνί: Γελ επεκβαίλνπλ ζην πεξηβάιινλ. πλήζσο γηα λα πεηχρνπκε απηή ηελ ηδηφηεηα ζρεδηάδνπκε ηνπο αηζζεηήξεο πνιχ κηθξνχο. Ο ζρεδηαζκφο ζε κηθξνζθνπηθή θιίκαθα επηηπγράλεηαη κε ηελ ρξήζε MEMS 17 ηερλνινγίαο. ηηο πεξηζζφηεξεο πεξηπηψζεηο ην κηθξφηεξν κέγεζνο ηνπ αηζζεηήξα απμάλεη ηελ ηαρχηεηα απφθξηζεο ηνπ αηζζεηήξα θαη ηελ επαηζζεζία ηνπ. a. Γενικήρ καηεύθςνζηρ: Απηνί νη αηζζεηήξεο ζπιιέγνπλ ζπγθεθξηκέλεο πιεξνθνξίεο γηα ην πεξηβάιινλ γχξσ ηνπο απφ φιεο ηηο θαηεπζχλζεηο, πρ έλαο απιφο αηζζεηήξαο ζεξκνθξαζίαο. b. ςγκεκπιμένηρ Καηεύθςνζηρ: πιιέγνπλ πιεξνθνξίεο απφ κηα ζπγθεθξηκέλε θαηεχζπλζε, γηα παξάδεηγκα κηα camera παίξλεη εηθφλεο κφλν απφ κηα ζπγθεθξηκέλε θαηεχζπλζε. 2. Δλεξγεηηθνί: Δπεκβαίλνπλ ζην πεξηβάιινλ γηα λα κεηξήζνπλ θάπνην θπζηθφ κέγεζνο. Γειαδή γηα παξάδεηγκα εάλ ζέινπκε λα κεηξήζνπκε ηελ ζεξκνθξαζία ελφο δεζηνχ πγξνχ, βάδνληαο ην ζεξκφκεηξν κέζα ζην δνρείν ην ζεξκφκεηξν κεηξάεη ηελ ζεξκνθξαζία αιιά δελ είλαη αθξηβήο αθνχ ηαπηφρξνλα γίλεηαη αληαιιαγή ζεξκφηεηαο κεηαμχ πγξνχ θαη ζεξκφκεηξνπ ε νπνία αιιάδεη ηελ πξαγκαηηθή έλδεημε. ε κηα ειεθηξνληθή εθαξκνγή ε αλαινγηθή κέηξεζε απφ ην πεξηβάιινλ ζα πξέπεη λα κεηαηξαπεί ζε ςεθηαθή, απηφ επηηπγράλεηαη κε ADC 18. Άξα ε παξνπζία ελφο, ηνπιάρηζην, ADC ζηνλ θφκβν ή ζην ζχζηεκα ηνπ αηζζεηήξα είλαη απαξαίηεηε. Με βάζε ηα πην πάλσ ζα κπνξνχζακε λα πνχκε φηη έλαο θαιφο αηζζεηήξαο ζα πξέπεη: 1. Να είλαη επαίζζεηνο ζηελ πνζφηεηα πνπ κεηξάεη. 2. Να είλαη «αλαίζζεηνο» ζε νπνηαδήπνηε άιιε θπζηθή πνζφηεηα πνπ βξίζθεηαη ζην γχξσ πεξηβάιινλ ηνπ. Γηα παξάδεηγκα έλαο αηζζεηήξαο θσηφο δελ εμαξηάηαη κφλν 17 MEMS Micro Electro Mechanical Systems είλαη ε ηερλνινγία πνπ αζρνιείηαη κε κηθξνζθνπηθέο κεραληθέο ζπζθεπέο πνπ ειέγρνληαη απφ ειεθηξηθά ζηνηρεία. 18 ADC (Analog to Digital Converter): Ηιεθηξνληθφ θχθισκα πνπ δέρεηαη αλαινγηθά ζήκαηα θαη ηα κεηαηξέπεη ζε κηα αθνινπζία απφ bits (ςεθηαθή κνξθή). 22

33 απφ ηελ ειεθηξνκαγλεηηθή αθηηλνβνιία αιιά θαη απφ ηελ ζεξκνθξαζία. Σν ηδαληθφ ζα ήηαλ λα παξάγεη ην ίδην απνηέιεζκα ζε νπνηαδήπνηε ζεξκνθξαζία. 3. Να κελ είλαη ελεξγεηηθφο, λα κελ επεξεάδεη δειαδή ηελ κεηξήζηκε πνζφηεηα. Αποκλίζειρ αιζθηηήπυν: 1. θάικα επαηζζεζίαο, ζα έρνπκε φηαλ ε επαηζζεζία πξαθηηθά δηαθέξεη απφ ηελ ζεσξεηηθή θαη αλακελφκελε. 2. Σα κέγηζην θαη ειάρηζην φξην ηεο εμφδνπ ηνπ αηζζεηήξα κπνξεί λα μεπεξαζηεί ζε έλα κε ηδαληθφ αηζζεηήξα πξνθαιψληαο ζθάικαηα ζηηο εθαξκνγέο. 3. Έλαο αηζζεηήξαο έρεη φθζεη εάλ γηα κεδεληθή είζνδν δελ παξάγεη κεδεληθή έμνδν. 4. Δάλ ε επαηζζεζία δελ είλαη ζηαζεξή ζην δηάζηεκα πνπ κεηξάεη ν αηζζεηήξαο ηφηε ν αηζζεηήξαο είλαη κε-γξακκηθφο. πλήζσο δίλεηαη σο πνζνζηφ ζην ζπλνιηθφ δηάζηεκα κέηξεζεο. 5. Τπάξρεη δπλακηθφ ζθάικα εάλ ε απφθιηζε πξνθαιείηαη απφ κηα πνιχ γξήγνξε αιιαγή ηεο εηζφδνπ. 6. Οιίζζεζε, ζα έρεη ν αηζζεηήξαο εάλ ε έμνδνο αιιάδεη αξγά αλεμάξηεηα, φκσο, απφ ηελ είζνδν. 7. Θφξπβνο, ππάξρεη φηαλ έρνπκε ηπραία απφθιηζε ηεο εμφδνπ ζπλαξηήζεη ηνπ ρξφλνπ(αληηκεησπίδεηαη απφ ηελ ζεσξία ζεκάησλ θηηάρλνληαο θίιηξα πνπ κεηψλνπλ ηνλ ζφξπβν). 8. Τζηέξεζε, είλαη έλα ζθάικα πνπ πξνθχπηεη φηαλ ε είζνδνο αιιάδεη θαηεχζπλζε θαη ε έμνδνο ρξεηάδεηαη θάπνην πεπεξαζκέλν ρξφλν γηα λα αληηδξάζεη. 9. θάικα ςεθηαθνπνίεζεο, εκθαλίδεηαη φηαλ γίλεηαη ε κεηαηξνπή ηνπ αλαινγηθνχ ζήκαηνο ζε ςεθηαθφ, αθνχ ην ςεθηαθφ δελ κπνξεί απφ ηα λα είλαη, πάληα, κηα πξνζέγγηζε (θαθή είηε πνιχ θαιή, εμαξηάηαη απφ ηνλ ADC) ηνπ αλαινγηθνχ ζήκαηνο. 10. Πνιινί αηζζεηήξεο είλαη επαίζζεηνη θαη ζε άιιεο θπζηθέο αιιαγέο εθηφο ηεο κεηξήζηκεο(πρ ζεξκνθξαζίαο). Όπσο αλαθέξακε θαη πην πάλσ ε ρξήζε αηζζεηήξσλ πνιιέο θφξεο δελ είλαη αληηιεπηή. Γηα παξάδεηγκα, ίζσο, λα ην έρνπκε παξαηεξήζεη φηη ηα δψα, ηα έληνκα, ηα θπηά θηι κπνξνχλ λα αληηιεθζνχλ αιιαγέο ζηελ ζεξκνθξαζία, ζην θσο, ζηνλ ήρν θηι. Άξα θαη νη δσληαλνί νξγαληζκνί ρξεζηκνπνηνχλ αηζζεηήξεο ηνπο νπνίνπο νλνκάδνπκε βηνινγηθνχο αηζζεηήξεο. Οη πεξηζζφηεξνη βηνινγηθνί αηζζεηήξεο είλαη εηδηθά θχηηαξα πνπ έρνπλ ηελ ηθαλφηεηα λα αληηιακβάλνληαη θαη λα κεηξνχλ (κε δηάθνξεο αθξίβεηεο) αιιαγέο ζην πεξηβάιινλ θαη ηα θπζηθά ηνπ κεγέζε. Κάπνηα παξαδείγκαηα είλαη: 1. Όξαζε: Οη αηζζεηήξεο πνπ ρξεζηκνπνηνχληαη είλαη ηα κάηηα. Σα κάηηα κεηαηξέπνπλ νπηηθά εξεζίζκαηα (νξαηή αθηηλνβνιία) ζε ειεθηξηθά κελχκαηα κε θαηεχζπλζε ηνλ εγθέθαιν. 2. Αθνή: Οη αηζζεηήξεο βξίζθνληαη ζην εζσηεξηθφ ηνπ απηηνχ θαη κεηαηξέπνπλ δνλήζεηο ησλ κηθξψλ νζηψλ ζε ειεθηξηθά εξεζίζκαηα. 23

34 3. Γεύζε: Η γιψζζα κέζν κηαο ρεκηθήο δηεξγαζίαο αληηιακβάλεηαη ηελ γεχζε θαη ζηελ ζπλέρεηα ελεκεξψλεη ηνλ εγθέθαιν. 4. Όζθξεζε: ην εζσηεξηθφ ηεο κχηεο ρεκηθέο δηεξγαζίεο αληηιακβάλνληαη ηελ κπξσδηά θαη ελεκεξψλνπλ ηνλ εγθέθαιν. 5. Αθήο: πλήζσο νη αηζζεηήξεο βξίζθνληαη ζην δέξκα, θαη κεηαηξέπνπλ ηελ πίεζε ζε ειεθηξηθά εξεζίζκαηα. 6. Ηζνξξνπία θαη Δπηηάρπλζε: Οη αηζζεηήξεο βξίζθνληαη ζην εζσηεξηθφ ησλ απηηψλ θαη επηηξέπνπλ ζηνλ νξγαληζκφ λα αληηιακβάλεηαη αιιαγέο ζηελ ζέζε ηνπ. 7. Θεξκνθξαζίαο: Οη αηζζεηήξεο βξίζθνληαη ζην δέξκα θαη δίλνπλ ηελ δπλαηφηεηα ζε έλα νξγαληζκφ λα αληηιακβάλεηαη θαηά πξνζέγγηζε ηελ εμσηεξηθή ζεξκνθξαζία. 8. Ζιεθηξνκαγλεηηθνί αηζζεηήξεο: Κάπνηα δψα έρνπλ ηελ ηθαλφηεηα λα εληνπίδνπλ ειεθηξηθά πεδία. 9. Καηεύζπλζε κε ηελ αθνή: Κάπνηα δψα (πρ λπρηεξίδεο) ρξεζηκνπνηνχλ ηελ ηερληθή ζφλαξ γηα λα εληνπίδνπλ αληηθείκελα κέζν ηνπ ήρνπ. 2.2 Αρχιτεκτονικό Δομό δικτύου Ειςαγωγό Έλα WSN απνηειείηαη, βαζηθά, απφ δχν δνκηθά ζηνηρεία. Απηά πνπ παξάγνπλ πιεξνθνξία, φπσο είλαη ν θάζε θφκβνο ζην δίθηπν, θαη νλνκάδνληαη πεγέο (sources) θαη απφ ηα ζηνηρεία πνπ ζπιιέγνπλ ηελ πιεξνθνξία απφ ηηο πεγέο θαη νλνκάδνληαη απνδέθηεο (sinks), ζε θάπνηα ζπγγξάκκαηα ζπλαληψληαη θαη σο θαηαβφζξεο. Η δηαζχλδεζε θαη ν ηξφπνο πνπ επηθνηλσλνχλ κεηαμχ ηνπο νη πεγέο θαη νη απνδέθηεο θαζνξίδνπλ ηελ ηνπνινγία ηνπ δηθηπνχ. Τπάξρνπλ ηέζζεξεηο δεκνθηιήο ηνπνινγίεο: 1. Peer-to-Peer (Ίζν πξνο ίζν): Έλα peer to peer δίθηπν είλαη έλα δίθηπν πνπ επηηξέπεη ζηνπο θφκβνπο ηνπ λα κνηξάδνληαη ηζνδχλακα ηνπο πφξνπο ηνπο θαη ηαπηφρξνλα κπνξεί λα ρξεζηκνπνηήζεη ηελ ζπλνιηθή επεμεξγαζηηθή ηζρχ, ηνλ απνζεθεπηηθφ ρψξν θαη ην bandwidth γηα πινπνίεζε κηαο εθαξκνγήο. Οη θφκβνη κεηαμχ ηνπο είλαη ίζνο πξνο ίζν έρνπλ δειαδή ηα ίδηα δηθαηψκαηα ζην δίθηπν θαη ν θάζε θφκβνο έρεη πξφζβαζε ζηνπο ππνινίπνπο θφκβνπο. 24

35 Δικόνα 13 - Σοπολογίερ [Peer to Peer] Σα δίθηπα p2p ρσξίδνληαη ζε ηξεηο θαηεγνξίεο: a. ςγκενηπυηικά p2p δίκηςα: ηα ζπγθεληξσηηθά p2p δίθηπα (ζπρλά 1 εο γεληάο p2p δίθηπα) ππάξρεη έλα θεληξηθφο θφκβνο, νλνκαδφκελνο index server ν νπνίνο θξαηάεη θαηάζηαζε πνηνο θφκβνο έρεη θαη ηη. Άξα αλ θάπνηνο θφκβνο επηζπκεί θάηη απφ έλα άιιν θφκβν ζα πξέπεη λα αηηεζεί ζηνλ index server ν νπνίνο αθνχ βξεη πνηνο ην έρεη κεηά δεκηνπξγεί κηα ζχλδεζε κεηαμχ ηνπ αηηεηή θαη απηνχ πνπ έρεη ην δεδνκέλν. b. Αποκενηπικά p2p δίκηςα: Με απηή ηελ ινγηθή θάζε θφκβνο είλαη servent 19 έηζη ηαπηφρξνλα κπνξεί λα εμππεξεηήζεη ή λα εμππεξεηεζεί. ε απηή ηελ πεξίπησζε κφιηο έλα θφκβνο εηζέιζεη ζην δίθηπν ζα πξέπεη λα δειψζεη ηελ παξνπζία ηνπ ζηνπο ππφινηπνπο θφκβνπο πνπ είλαη θνληά ηνπ θαη απηνί κε ηελ ζεηξά ηνπο ζην ζπλνιηθφ δίθηπν. c. p2p δίκηςα 3 ηρ γενιάρ: Σν βαζηθφ ραξαθηεξηζηηθφ ηνπο είλαη ε αλσλπκία, έρνπλ απνθεληξηθφ ραξαθηήξα ε θηινζνθία απηψλ ησλ δηθηχσλ είλαη, φπσο είπακε, ε αλσλπκία, πςειή βησζηκφηεηα, ζην ζπλερή δηακνηξαζκφ πιεξνθνξίαο θαη ζηελ θσδηθνπνίεζε ηεο έηζη ψζηε λα κελ κπνξεί ν θφκβνο λα απνθηήζεη έιεγρν ζε απηήλ αλ δελ παξαρσξεζνχλ δηθαηψκαηα. 2. Star (αζηέξα): Δίλαη κηα απφ ηηο πην δηαδεδνκέλεο ηνπνινγίεο δηαζχλδεζεο ππνινγηζηψλ. ε θάζε ηέηνηα ηνπνινγία ππάξρεη ν θεληξηθφο θφκβνο ν νπνίνο ιεηηνπξγεί ζαλ κεζνιαβεηήο θαη κεηαθέξεη κελχκαηα κεηαμχ ησλ θφκβσλ πνπ βξίζθνληαη γχξσ ηνπ κέζν απηνχ. 19 Servent θφκβνη πνπ ηαπηφρξνλα είλαη θαη client θαη servers (ε ιέμε πξνθχπηεη απφ ηελ ζπλέλσζε ησλ client θαη server) 25

36 Δικόνα 14 - Σοπολογίερ [Star] Η ζπγθεθξηκέλε ηνπνινγία κεηψλεη ηελ πηζαλφηεηα ζθάικαηνο δηθηχνπ ελψλνληαο φινπο ηνπο θφκβνπο κε ηνλ θεληξηθφ θφκβν. Ο θεληξηθφο θφκβνο θάλεη broadcast φηη ιακβάλεη έηζη φινη νη θφκβνη ιακβάλνπλ ην κήλπκα πνπ ζηέιλεη έλαο θφκβνο(ζε θάπνηεο πεξηπηψζεηο θαη ν ίδηνο) θαη είλαη επζχλε ηνπ ιακβάλνληα θφκβνπ λα απνθαζίζεη εάλ είλαη δηθφ ηνπ παθέην θαη πσο ζα ην αμηνπνηήζεη. ε πεξίπησζε πνπ ν έλαο θφκβνο (πιελ ηνπ θεληξηθνχ) θαηαξξεχζεη ην δίθηπν δελ θαηαζηξέθεηαη παξά κφλν απνκνλψλεηαη ν ζπγθεθξηκέλνο θφκβνο. Σα ζεηηθά απηήο ηεο ηνπνινγίαο είλαη φηη έρνπκε θαιχηεξε απφδνζε αθνχ ε κεηαθνξά ελφο κελχκαηνο κεηαμχ δχν θφκβσλ ζα παξεκβάιινληαη πάληα 3 ζπζθεπέο (απνζηνιέαο - -> θεληξηθφο --> παξαιήπηεο) θαη δχν κέζα κεηαθνξάο (θαιψδην, αζχξκαην θηι). Σν δίθηπν επηηξέπεη ηελ απνκφλσζε νπνηνπδήπνηε θφκβνπ (πιελ ηνπ θεληξηθνχ) ρσξίο λα θαηαζηξέθεηαη ην δίθηπν. Η θεληξηθνπνηήζε πνπ πξνζθέξεη ε ηνπνινγία αζηέξα θάλεη εχθνιε ηελ δηαδηθαζία επέθηαζεο ηνπ δηθηχνπ αθνχ κφλν ν θεληξηθφο θφκβνο ζα πξέπεη λα ελεκεξσζεί θαηά θάπνην ηξφπν. Δπίζεο αθνχ φιε ε πιεξνθνξία πεξλάεη απφ ηνλ θεληξηθφ θφκβν κπνξνχκε εχθνια λα ειέγμνπκε ηη είδνπο πιεξνθνξία δηαθηλείηαη ζην δίθηπν. εκαληηθφ πιενλέθηεκα είλαη ε απιφηεηα ηνπ, πνπ θάλεη εχθνιε ηελ δεκηνπξγία star networks, ζπληήξεζε θηι. Έλα ηέηνην δίθηπν, φκσο, έρεη θαη αξθεηά κεηνλεθηήκαηα φπσο: ην δίθηπν λα εμαξηάηαη εμ νινθιήξνπ απφ ην θεληξηθφ θφκβν. Απφ απηή ηελ εμάξηεζε πεγάδνπλ πνιιά πξνβιήκαηα, γηα παξάδεηγκα ε επέθηαζε ηνπ δηθηχνπ κπνξεί λα γίλεη κέρξη ην ζεκείν πνπ κπνξεί λα εμππεξεηεί ν θεληξηθφο θφκβνο. 3. Tree (Γέληξνπ): ε απηή ηελ κνξθή πξψην ζηελ ηεξαξρία βξίζθνπκε ην root note κεηά πην θάησ απφ απηφ είλαη ηα central hub ηα νπνία ην θαζέλα μερσξηζηά δεκηνπξγεί κηα δηθή ηνπ ηνπνινγία ηχπνπ αζηέξα, άξα απηή ε ηνπνινγία είλαη έλαο ζπλδπαζκφο ησλ δχν πην πάλσ θαη γηα απηφ νλνκάδεηαη θαη hybrid (πβξηδηθφ). 26

37 Δικόνα 15 - Σοπολογίερ [Tree] Σα πιενλεθηήκαηα απηήο ηεο ηνπνινγίαο είλαη: είλαη κηα πνιχ δηαδεδνκέλε ηνπνινγία ππνζηεξίδεηαη απφ πνιινχο θαηαζθεπαζηέο, ε δηαζχλδεζε δπν ζεκείσλ είλαη εθηθηή, φινη νη θφκβνη έρνπλ πξφζβαζε ζην δηθφ ηνπο κηθξφ δίθηπν αιιά θαη ζην κεγαιχηεξν δίθηπν πνπ πινπνηείηαη απφ ηνπο «γνλείο» ηνπο. Σα κεηνλεθηήκαηα είλαη: νιφθιεξν ην δίθηπν βαζίδεηαη ζηνλ main θφκβν αλ απηφο θαηαξξεχζεη ηφηε φιν ην δίθηπν θαηαξξέεη, ε πνιππινθφηεηα ηνπ θάλεη ηελ εγθαηάζηαζε ηνπ θαη ηελ πινπνίεζε ηνπ δχζθνιε δηαδηθαζία. 4. Mesh (Πιέγκα): ε απηή ηελ ηνπνινγία ν θάζε θφκβνο δελ πξέπεη λα παξαιάβεη θαη λα δηαδψζεη ηα δηθά ηνπ δεδνκέλα κφλν αιιά πξέπεη λα ζπλεξγαζηεί κε ηνπο ππφινηπνπο θφκβνπο θαη λα ιεηηνπξγήζεη ζαλ ζπλδεηηθφο θξίθνο γηα λα ππάξμεη ζπλνιηθή κεηαθνξά δεδνκέλσλ ζην δίθηπν. Ο ζρεδηαζκφο ηέηνηνπ είδνπο δηθηχνπ κπνξεί λα επηηεπρζεί κε δχν ηξφπνπο, κε θαζνξηζκέλε δξνκνιφγεζε ή κε «πιεκκχξηζκα» ηνπ δηθηχνπ. Με ηελ ηερληθή δξνκνιφγεζεο ηα δεδνκέλα μέξνπλ εθ ησλ πξνηέξσλ φηη ζα αθνινπζήζνπλ ζπγθεθξηκέλν κνλνπάηη θαη γηα λα θηάζνπλ ζην ηειηθφ πξννξηζκφ ίζσο ρξεηαζηεί λα πεξάζνπλ κέζα απφ άιινπο θφκβνπο θάλνληαο θάζε θνξά κηθξά άικαηα (hops), γηα λα είλαη πινπνηήζηκε απηή ε ηερληθή ζα πξέπεη λα ιεηηνπξγνχλ ζπλερψο αιγφξηζκνη πνπ ζα απνθαζηζηνχλ θαηλνχξγηα κνλνπάηηα θαη λα «ζεξαπεχνπλ» ην δίθηπν ζε πεξίπησζε πνπ έρνπκε θαηαζηξνθή θφκβσλ. ηελ δεχηεξε πεξίπησζε φπνπ γίλεηαη πιεκκχξηζκα ηνπ δηθηχνπ, ν θάζε θφκβνο θάλεη broadcast ηελ πξνο κεηαθνξά πιεξνθνξία θαη ζηελ ζπλέρεηα νη παξαιήπηεο αλακεηαδίδνπλ ηα δεδνκέλα, έηζη γεκίδεη ην δίθηπν κε ηελ πιεξνθνξία θαη ζίγνπξα θάπνηα ζηηγκή ζα θαηαιήμεη ζηνλ επηζπκεηφ θφκβν (αλ βέβαηα ππάξρεη επηθνηλσλία απηνχ ην θφκβνπ κε ην ππφινηπν δίθηπν). 27

38 Δικόνα 16 - Σοπολογίερ [Mesh] Ολνκάδνπκε fully connected network έλα δίθηπν ζην νπνίν φινη νη θφκβνη ηνπ είλαη δηαζπλδεδεκέλνη κεηαμχ ηνπο. Γεληθά ηα mesh δίθηπα κπνξνχλ λα ζεσξεζνχλ σο έλα είδνο ad hoc network OSI model Γελ ζα κπνξνχζακε λα αλαθεξζνχκε ζε αξρηηεθηνληθή δηθηχνπ ρσξίο λα θάλνπκε κηα κηθξή αλαθνξά ζην κνληέιν OSI. Σν κνληέιν OSI (Open Systems Interconnection) είλαη έλα πξφηππν κνληέιν επηά επηπέδσλ θαη θαζνξίδεη ηελ δηαζχλδεζε κεηαμχ ησλ δηθηχσλ. Δικόνα 17 - Μονηέλο OSI Σν κνληέιν OSI ππνδηαηξεί ηηο ιεηηνπξγίεο έλα ηειεπηθνηλσληαθνχ δηθηχνπ ζε κηα θαηαθφξπθε ζηνίβα 7 επηπέδσλ (φπσο θαίλεηαη θαη ζην ζρήκα). ην θάζε ζηξψκα έλα 20 Ad hoc network: είλαη έλα απνθεληξσκέλν είδνο αζχξκαηνπ δηθηχνπ. 28

39 ζπγθεθξηκέλν πξσηφθνιιν είλαη ππεχζπλν λα παξέρεη ζην πξνεγνχκελν θαη ζην επφκελν ζηξψκα ηελ αλακελφκελε κνξθή δεδνκέλσλ. 1. Physical Layer (θπζηθό επίπεδν): ην ρακειφηεξν επίπεδν ηνπ κνληέινπ βξίζθεηαη ην hardware, φπνπ γίλεηαη ε δπαδηθή κεηάδνζε ησλ δεδνκέλσλ (ελζχξκαηε, αζχξκαηε ). ε απηφ ην επίπεδν ζπλαληάκε ζπζθεπέο φπσο δηαλεκεηέο (Hub), επαλαιήπηεο(repeaters), θάξηεο δηθηχνπ, πξνζαξκνζηείο δίαπινπ. Βαζηθέο ιεηηνπξγίεο πνπ εθηεινχληαη ζε απηφ ην ζηξψκα είλαη: a. Η έλαξμε ή ν ηεξκαηηζκφο ηεο ειεθηξηθήο δηαζχλδεζεο κεηαμχ δχν επηθνηλσληαθψλ ζπζθεπψλ. b. Γηακφξθσζε θαη απνδηακφξθσζε ησλ ςεθηαθψλ δεδνκέλσλ έηζη ψζηε λα είλαη εθηθηή ε κεηάδνζε ηνπο αιιά θαη θαηαλνεηά απφ ηηο επηθνηλσληαθέο ζπζθεπέο. c. Τινπνίεζε πνιχπιεμεο, νη επηθνηλσληαθέο ζπζθεπέο εμππεξεηνχλ πεξηζζφηεξνπο απφ έλα clients. 2. Data Link Layer (Δπίπεδν Εεύμεο Γεδνκέλσλ): Δίλαη θαη γλσζηφ σο MAC layer θαη είλαη ππεχζπλν γηα ηελ αμηφπηζηε κεηαθνξά δεδνκέλσλ κεηαμχ ηεο ζχλδεζεο πνπ ην θπζηθφ επίπεδν θαζφξηζε. (παξάδεηγκα πξσηνθφιινπ ζε απηφ ην επίπεδν είλαη ην Ethernet 21 ). ε απηφ ην επίπεδν νη δηεπζχλζεηο ησλ ζπζθεπψλ είλαη πξνθαζνξηζκέλεο εξγνζηαζηαθά θαη είλαη θπζηθέο δηεπζχλζεηο (MAC address). Κάπνηα παξαδείγκαηα εθηφο απφ ην Ethernet, πνπ έρεη αλαθεξζεί, είλαη ηα HDLC θαη ADCCP γηα ζπλδέζεηο απφ ζεκείν-ζε-ζεκείν θαη γηα αζχξκαηα ηνπηθά δίθηπα ην Απηφ ην επίπεδν ζε θάπνηα πξσηφθνιια φπσο ην κπνξεί λα ππνδηαηξεζεί ζε κηθξφηεξα ππνεπίδα φπσο: a. Τπνεπίδεν MAC: ζην νπνίν γίλεηαη έιεγρνο πξφζβαζεο ζην θνηλφ κέζν. b. Τπνεπίπεδν LLC (logical link control): ζην νπνίν γίλεηαη έιεγρνο ινγηθψλ ζπλδέζεσλ, ζε απηφ ην ζηξψκα επηθξαηέζηεξν πξσηφθνιιν είλαη ην Κάπνηεο ζπζθεπέο πνπ ιεηηνπξγνχλ ζε απηφ ην επίπεδν είλαη δηθηπαθέο γέθπξεο θαη δηθηπαθνί δηαθφπηεο. 3. Network Layer (Δπίπεδν δηθηύνπ): Δίλαη ππεχζπλν γηα ηελ δηαθίλεζε ησλ δεδνκέλσλ ζην δίθηπν εθηειψληαο ιεηηνπξγίεο φπσο κεηαγσγήο ζηνπο θφκβνπο, δξνκνιφγεζεο, ειέγρνπ ξνήο θαη απνθαηάζηαζεο ζθαικάησλ δηαηεξψληαο, πάληα, ηελ πνηφηεηα εμππεξέηεζεο πνπ απαηηεί ην επφκελν επίπεδν (Δπίπεδν Μεηαθνξάο).(παξάδεηγκα πξσηνθφιινπ ζε απηφ ην επίπεδν είλαη ην IP 22 ). ε απηφ ην επίπεδν ιεηηνπξγνχλ νη δξνκνινγεηέο ( routers). 4. Transport Layer (Δπίπεδν Μεηαθνξάο): Δίλαη ην αλψηεξν επίπεδν πνπ έρεη ζρέζε κε ηελ παξνρή ηειεπηθνηλσληαθψλ ππεξεζηψλ πξνζθέξνληαο ηεο έμεο ππεξεζίεο: Γηαρείξηζε ζπλδέζεσλ, Μεηαβίβαζε 21 Ethernet: είλαη ην ζπλεζέζηεξα ρξεζηκνπνηνχκελν πξσηφθνιιν ελζχξκαηεο ηνπηθήο δηθηχσζεο ππνινγηζηψλ. 22 IP (internet protocol): πξσηφθνιιν πνπ ρξεζηκνπνηείηαη θαηά θφξν απφ ην δηαδίθηπν. 29

40 δεδνκέλσλ, έιεγρνο ξνήο. (παξάδεηγκα πξσηνθφιινπ ζε απηφ ην επίπεδν είλαη ην TCP 23 ). ηελ νπζία απηφ ην επίπεδν δηεθπεξαηψλεη ηελ κεηαθνξά ησλ δεδνκέλσλ απφ ρξήζηε ζε ρξήζηε, απηφ έρεη ζαλ απνηέιεζκα ηα αλψηεξα επίπεδα (πάλσ απφ απηφ) λα κελ ελδηαθέξνληαη γηα ηελ αμηνπηζηία ηεο κεηαθνξάο ησλ δεδνκέλσλ αθνχ είλαη δνπιεηά ηνπ επηπέδνπ κεηαθνξάο. Γηα λα παξέρεη αμηνπηζηία ρξεζηκνπνηεί ηηο εμήο ηαθηηθέο: έιεγρν ξνήο, θαηάηκεζε θαη απνηκεκαηνπνηήζε θαη έιεγρν ζθαικάησλ. Δπίζεο είλαη δπλαηφ λα κπνξεί λα γλσξίδεη πνηα παθέηα δελ παξαδφζεθαλ θαη έηζη λα ηα μαλαζηέιλεη. 5. Session Layer (Δπίπεδν Σπλόδνπ): Σν 5 ν επίπεδν δίλεη ηελ δπλαηφηεηα ζηνπο ρξήζηεο λα πξαγκαηνπνηνχλ ζπλφδνπο, νξγαλψλνληαο θαη ζπγρξνλίδνληαο ηελ αληαιιαγή κελπκάησλ. Οη ιεηηνπξγίεο πνπ αληηκεησπίδεη είλαη: FDX (full duplex, νη δχν πνπ ζπλνκηινχλ, κηινχλ ηαπηφρξνλα δεζκεχνληαο δχν θαλάιηα), HDX (half duplex, ππάξρεη έλα δηαζέζηκν θαλάιη ην νπνίν πξέπεη λα κνηξαζηνχλ έηζη κηιάεη ν θαζέλαο κε ηελ ζεηξά ηνπ). ε απηφ ην ζηξψκα ππνζηεξίδνληαη δηαδηθαζίεο φπσο: απνζήθεπζεο θαηάζηαζεο (checkpoint), αλαβνιήο (adjournment), ηεξκαηηζκνχ (termination), επαλεθθίλεζεο (restart). 6. Presentation Layer (Δπίπεδν παξνπζίαζεο): Δίλαη ππεχζπλν γηα ηνλ κεηαζρεκαηηζκφ ησλ δεδνκέλσλ ζηελ αλακελφκελε, απφ ην επφκελν επίπεδν, ηππηθή κνξθή. ε απηφ ην επίπεδν ηα δεδνκέλα θξππηνγξαθνχληαη, ζπκπηέδνληαη, θσδηθνπνηνχληαη θαη γεληθά επεμεξγάδνληαη αλάινγα κε ηηο απαηηήζεηο ηνπ ζπγθεθξηκέλνπ πξσηφθνιινπ ηεο θάζε εθαξκνγήο. Γηα παξάδεηγκα ζε αξθεηέο εθαξκνγέο ηα δεδνκέλα έξρνληαη ζε κνξθή XML 24 θαη κεηαηξέπνληαη ζε αξρεία αλαγλσξίζηκα απφ ηελ εθαξκνγή πνπ ππάξρεη ζην πην πάλσ ζηξψκα. 7. Application Layer (Δπίπεδν κεηαθνξώλ): Δίλαη ην αλψηαην επίπεδν ηνπ κνληέινπ θαη είλαη ζην επίπεδν φπνπ ν ρξήζηεο αιιειεπηδξά κε ηα δεδνκέλα θαη γεληθφηεξα κε ην δίθηπν. Κάζε εθαξκνγή πνπ επεμεξγάδεηαη δεδνκέλα ηνπ δηθηχνπ θαη επηθνηλσλεί κε ηνλ ρξήζηε ζα βξίζθεηαη ζε απηφ ην επίπεδν. Μεξηθά παξαδείγκαηα πξσηνθφιισλ ζην επίπεδν απηφ είλαη: Telnet 25, FTP 26, SMTP 27, HTTP TCP (Transmission Control Protocol πξσηφθνιιν ειέγρνπ κεηαθνξάο): είλαη έλα απφ ηα θπξηφηεξα πξσηφθνιια ηεο ζνπίηαο Πξσηνθφιισλ ηνπ δηαδηθηχνπ. 24 XML extensible Markup Language είλαη κηα γιψζζα ζήκαλζεο πνπ πεξηέρεη έλα ζχλνιν θαλφλσλ γηα ηελ ειεθηξνληθή θσδηθνπνίεζε θεηκέλσλ θαη γεληθά δεδνκέλσλ. 25 Telnet TELecommunication NETwork είλαη έλα πξσηφθνιιν επηθνηλσλίαο δηαζπλδεδεκέλσλ ππνινγηζηψλ. 26 FTP File Transfer Protocol είλαη έλα επξέσο ρξεζηκνπνηνχκελν πξσηφθνιιν κεηαθνξάο αξρείσλ. 27 SMTP Simple Mail Transfer Protocol είλαη πξσηφθνιιν ην νπνίν έρεη θαζηεξσζεί γηα ηελ κεηάδνζε κελπκάησλ ειεθηξηθνχ ηαρπδξνκείνπ ζην internet. 28 HTTP HyperText Transfer Protocol ην πην δηαδεδνκέλν πξσηφθνιιν κεηαθνξάο ππεξθεηκέλνπ ζην δηαδίθηπν. 30

41 Η αξρηηεθηνληθή ελφο WSN απαηηεί ηελ χπαξμε ησλ ηειεπηαίσλ ηξηψλ θαησηέξσλ επηπέδσλ (θπζηθνχ, δεχμεο δεδνκέλσλ, δηθηχνπ) γηα απηφ θαη ζα θάλνπκε κηα πην εθηελή αλαθνξά ζηα πξσηφθνιια πνπ έρνπλ, θαηά θαηξνχο, πξνηαζεί γηα ηα ηξία επίπεδα: Πρωτόκολλα ςτο κϊθε επύπεδο Φυςικό Επύπεδο Όπσο έρνπκε αλαθέξεη πην πάλσ απηφ είλαη ην ρακειφηεξν επίπεδν ζην νπνίν βξίζθεηαη ην hardware ηνπ δηθηχνπ. Η πνηφηεηα ηνπ θπζηθνχ επηπέδνπ ζε έλα θφκβν εμαξηάηαη άκεζα απφ ην θφζηνο θαη ηελ θαηαλάισζε ελέξγεηαο, γηα απηφ θαη ηα πξσηφθνιια ζε απηφ ην επίπεδν πξνζπαζνχλ λα κεηψζνπλ ηελ θαηαλάισζε ελέξγεηαο θαη λα κεηψζνπλ ηαπηφρξνλα ην θφζηνο ησλ ειεθηξνληθψλ/αλαινγηθψλ κεξψλ (ζπλήζσο φκσο ε βέιηηζηε ιχζε κπνξεί λα επηηεπρζεί κε δηάθνξα trade-offs πνπ θαιείηαη ν αξρηηέθηνλαο ηνπ πιηθνχ λα θάλεη). Σα πην δηαδεδνκέλα πξσηφθνιια είλαη ηεο θαηεγφξηαο ΙΕΕΕ Όηαλ αλαθεξφκαζηε ζην IEEE αλαθεξφκαζηε ζε κηα νηθνγέλεηα πξνηχπσλ πνπ έρνπλ λα θάλνπλ κε ηα αζχξκαηα ηνπηθά δίθηπα. Σα πξφηππα δνπιεχνπλ ζηηο ζπρλφηεηεο ησλ 2.4, 3.6 θαη 5 GHz. Δικόνα 18 - Λογόηςπο Wi-Fi Αξρηθφ ζηφρνο ηεο IEEE ήηαλ λα επεθηείλεη ην ζηελ αζχξκαηε πεξηνρή. Σν είλαη γλσζηφ θαη σο Wi-Fi πνπ είλαη ηα αξρηθά ησλ ιέμεσλ Wireless Fidelity ζηα ειιεληθά «αζχξκαηε πηζηφηεηα» θαη πιένλ απνηειεί ην θαζηεξσκέλν πξφηππν ηεο βηνκεραλίαο ζην ρψξν ησλ αζχξκαησλ ηνπηθψλ δηθηχσλ. Δθαξκνγέο ηνπ πξφηππνπ είλαη παξνρή πξφζβαζεο ζην δηαδίθηπν, VoIP (voice over ip, ηειεθσλία κέζν internet), αζχξκαηε δηαζχλδεζε ειεθηξνληθψλ ζπζθεπψλ κεηαμχ ηνπο. Η πξψηε έθδνζε ηνπ Wi-Fi εκθαλίζηεθε ην Ινχλην ηνπ 1997 θαη ιεηηνπξγνχζε ζηελ ζπρλφηεηα ησλ 2.4GHz, ζηελ αξρή ιεηηνπξγνχζε κε FHSS (frequency hopping) θαη έθηαλε ηαρχηεηεο κέρξη 1Mbps ζηελ ζπλέρεηα απμήζεθε ν ξπζκφο κεηάδνζεο ζηα 2 Mbps αθνχ πιένλ ρξεζηκνπνηνχζε DSSS (direct sequence). Η εκβέιεηα ηνπ έθηαλε ηα 20 κέηξα ζε εζσηεξηθνχο ρψξνπο θαη ηα 100 κέηξα ζε εμσηεξηθνχο ρψξνπο. Σν επηέκβξην ηνπ 1999 παξνπζηάζηεθε ε έθδνζε a ε νπνία ιεηηνπξγνχζε ζε ζπρλφηεηεο 5 θαη 3.7GHz θαη ρξεζηκνπνηψληαο OFDM (orthogonal frequency division multiplexing) ε ζπγθεθξηκέλε έθδνζε πέηπρε ηαρχηεηεο 6, 9, 12, 18, 24, 36, 48, 54 Mbps θαη 29 ΙΔΔΔ Institute of Electrical and Electronics Engineers : είλαη ην πξσηφθνιιν Ethernet, ην πην γλσζηφ πξσηφθνιιν ελζχξκαηεο επηθνηλσλίαο. 31

42 εμσηεξηθή εκβέιεηα εσο θαη 5km. Σνλ ίδην κήλα παξνπζηάδεηαη θαη ε έθδνζε b πνπ δνχιεπε ζηα 2.4GHz ρξεζηκνπνηψληαο DSSS είρε ξπζκφ κεηάδνζεο δεδνκέλσλ 5.5 θαη 11Mbps. Η εκβέιεηα ηνπ ζε εζσηεξηθνχο ρψξνπο ήηαλ 38m θαη ζε εμσηεξηθνχο εσο θαη 140m. Σνλ Ινχλην ηνπ 2003 ε έθδνζε g πνπ δνχιεπε ζε ζπρλφηεηα 2.4GHz θαη OFDM θαη DSSS κε ξπζκνχο κεηάδνζεο φπσο θαη ηεο έθδνζεο a είρε εκβέιεηα φπσο ε έθδνζε b. Η πην πξφζθαηε έθδνζε εκθαλίζηεθε ηνλ Οθηψβξην ηνπ 2009 θαη είλαη ε n. Γνπιεχεη ζηα 2.4/5GHz κε OFDM θαη κπνξεί λα έρεη ξπζκφ κεηάδνζεο έσο θαη 150Mbps θαη εκβέιεηα 70m εζσηεξηθά θαη 250m εμσηεξηθά Επύπεδο Ζεύξησ Δεδομϋνων ην δεχηεξν επίπεδν ηνπ OSI κνληέινπ γλσζηφ θαη σο MAC επίπεδν ζα αλαθέξνπκε ηα πξσηφθνιια πνπ είλαη βαζηζκέλα ζε CSMA 31 θαη TDMA 32 ινγηθή θαη ζα παξνπζηάζνπκε ην πην γλσζηφ Mac πξσηφθνιιν ΙΔΔΔ CSMA a. S-MAC (sense mac, ππνζηεξίδεηαη απφ ην tinyos 33 ) b. T-MAC (timeout mac) c. B-MAC ( Berkley mac, ππνζηεξίδεηαη απφ ην tinyos) d. P-MAC ( pattern-mac) 2. TDMA a. E-MAC b. L-MAC c. RI-MAC 3. IEEE Σν ζπγθεθξηκέλν πξσηφθνιιν ρξεζηκνπνηείηαη θαη απφ ηελ ζπζθεπή telos γηα απηφ θαη ζα θάλνπκε κηα πην εθηελή αλαθνξά ζε απηφ. Σν IEEE είλαη έλα πξφηππν πνπ θαζνξίδεη ηηο πξνδηαγξαθέο πνπ ζα πξέπεη λα έρεη ην θπζηθφ θαη ην MAC επίπεδν ησλ θφκβσλ γηα ηελ πινπνίεζε αζχξκαησλ δηθηχσλ ρακεινχ ξπζκνχ κεηάδνζεο (LR-WPAN, low rate wireless personal area network). Βαζηθά ραξαθηεξηζηηθά είλαη ε ηθαλφηεηα λα ειαρηζηνπνηεί ηελ θαηαλάισζε ελέξγεηαο, λα παξέρεη αμηνπηζηία, λα κελ είλαη πνιχπινθν θαη λα έρεη ηελ ηθαλφηεηα λα πινπνηεί αζχξκαηα δίθηπα γξήγνξα, εχθνια θαη επέιηθηα. Σν πξφηππν θαζνξίδεη ηξείο κπάληεο ζπρλνηήησλ ζηηο νπνίεο κπνξεί λα ιεηηνπξγήζεη: a. Εςπώπη: ,6 MHz, κε 1 θαλάιη θαη κε ξπζκφ κεηάδνζεο 20kbps. b. Αμεπική: MHz, κε 10 θαλάιηα θαη κε ξπζκφ κεηάδνζεο 40kbps. 31 CSMA (carrier sense multiple access): είλαη έλα MAC πξσηφθνιιν ζην νπνίν έλαο θφκβνο ζα πξέπεη λα ζηγνπξεπηεί φηη δελ ππάξρεη κεηάδνζε άιινπ ζήκαηνο ζην κέζν (πρ bus) ζην νπνίν κεηαδίδεη ηα δεδνκέλα γηα λα ζηείιεη ην παθέην ηνπ. 32 TDMA (time division multiple access): είλαη κηα κέζνδνο ε φπνηα επηηξέπεη ηελ παξαρψξεζε θάπνηνπ θαλαιηνχ (ζπγθεθξηκέλεο ζπρλφηεηαο) ζε πεξηζζφηεξνπο απφ έλα clients δηακειίδνληαο ην ζήκα ζε δηάθνξα ρξνληθά θνκκάηηα. 33 TinyOS: είλαη ιεηηνπξγηθφ ζχζηεκα ζρεδηαζκέλν εηδηθά γηα αζχξκαηα δίθηπα αηζζεηήξσλ. 32

43 c. Παγκοζμίυρ: 2,4-2,485 GHz, κε 16 θαλάιηα ησλ 5MHz θαη κε ξπζκφ κεηάδνζεο 250kbps. Έλα δίθηπν βαζηζκέλν ζε απηφ ην πξφηππν νξίδεη δχν είδε θφκβσλ ζην επίπεδν MAC θαη είλαη: a. FFD (full function Device): Έλα θφκβνο πνπ είλαη FFD ζε έλα PAN 34 δίθηπν κπνξεί λα είλαη θεληξηθφο ζπληνληζηήο ηνπ δηθηχνπ, ηνπηθφο ζπληνληζηήο νπνπδήπνηε ζην δίθηπν ή θαη κηα απιή ζπζθεπή ηνπ δηθηχνπ. Οη FFD έρνπλ ηελ δπλαηφηεηα λα επηθνηλσλνχλ κε νπνηνδήπνηε θφκβν εληφο ηεο εκβέιεηαο ηνπο. Οη FFD είλαη ν βαζηθφο θνξκφο ηνπ δηθηχνπ b. RFD (reduce function device): απιέο ζπζθεπέο ζην δίθηπν πνπ πξννξίδνληαη γηα κηθξέο εξγαζίεο θαη επηθνηλσλνχλε κφλν κε ηνλ πιεζηέζηεξν FFD θφκβν. Έλα ηέηνην δίθηπν ζρεκαηίδεηαη απφ FFD θαη RFD θφκβνπο ζρεκαηίδνληαο δίθηπα κε ηνπνινγίεο peer to peer, star, mesh (βι. Δηζαγσγή Κεθαιαίνπ). Δικόνα 19 - Σοπολογίερ Αρχιτεκτονική Σν απνηειείηαη απφ έλα ζχλνιν επηπέδσλ (φπσο θαη ην OSI). Σν θάζε επίπεδν εθηειεί έλα κέξνο ηεο ζπλνιηθνχ έξγνπ πνπ επηηειεί ην πξσηφθνιιν. Μηα ζπζθεπή πνπ είλαη ζπκβαηή κε ην έρεη δχν επίπεδα, ην θπζηθφ επίπεδν πνπ είλαη ν πνκπνδέθηεο καδί κε θάπνηνπο κεραληζκνχο ειέγρνπ, θαη ην επίπεδν ηνπ MAC ην φπνην είλαη ππεχζπλν λα παξέρεη πξφζβαζε ζην θπζηθφ θαλάιη γηα φινπο ηνπο ηχπνπο κεηάδνζεο, ηα δχν επίπεδα θαίλνληαη ζηελ πην θάησ εηθφλα θαη είλαη ην MAC θαη ην PHY. 34 PAN Personal Area Network πξνζσπηθφ ηνπηθφ δίθηπν. 33

44 Δικόνα 20 - Απσιηεκηονική μιαρ ζςζκεςήρ LR - WPAN Πην θάησ ζα αλαιχζνπκε ηα δχν επίπεδα: 1 Φπζηθό επίπεδν (PHY) ην θπζηθφ επίπεδν ε ηερληθή κεηάδνζεο πνπ ρξεζηκνπνηείηαη είλαη ε DSSS κε δηακφξθσζε BPSK 35 ή QPSK 36. ην θπζηθφ επίπεδν εθηεινχληαη νη πην θάησ δηεξγαζίεο: a. Αλίρλεπζε ελέξγεηαο ζηνλ δέθηε (ED, receive Energy Detection), ζηελ ζπγθεθξηκέλε δηεξγαζία γίλεηαη κηα εθηίκεζε ηεο ηζρχνο ηνπο ζήκαηνο πνπ ιακβάλεηαη ρσξίο λα επηρεηξεί λα απνθσδηθνπνηήζεη ή λα αλαγλσξίζεη νηηδήπνηε άιιν απφ ην ζήκα. Η εθηίκεζε θπιάζζεηαη θαη κπνξεί λα ρξεζηκνπνηεζεί θαη απφ άιια επίπεδα. b. Έλδεημε πνηφηεηαο ζπλδέζκνπ (LQI, link quality Indicator), φηαλ παξαιακβάλεηαη έλα παθέην ζε απηφ ην επίπεδν γίλεηαη πξψηα κηα εθηίκεζε γηα ηελ πνηφηεηα ηνπ κε βάζε ηελ ηηκή ηνπ ED, θαη απηή ε εθηίκεζε απνζεθεχεηαη θαη κπνξεί λα ρξεζηκνπνηεζεί θαη απφ άιια επίπεδα. c. Έιεγρνο αδξάλεηαο θαλαιηνχ (CCA, Clear Channel Assessment), φπσο ιέεη θαη ην φλνκα ηεο, ειέγρεη θαηά πφζν ππάξρεη θίλεζε ζην θαλάιη. Απηφ κπνξεί λα επηηεπρζεί είηε ειέγρνληαο αλ ε ED έρεη μεπεξάζεη θάπνην ζπγθεθξηκέλν φξην, είηε κε αλίρλεπζε θέξνληνο ή αλ αληρλεπηεί ζήκα ζην θαλάιη κε ηελ αλακελφκελε δηακφξθσζε. ην θπζηθφ επίπεδν γίλεηαη ε επηινγή ηεο ζπρλφηεηαο ηνπ θαλαιηνχ πνπ ζα ρξεζηκνπνηεζεί θαη απνζηνιή/ιήςε ησλ παθέησλ. Σα παθέηα ζην θπζηθφ επίπεδν έρνπλ ηελ πην θάησ δνκή: Preamble SFD Frame length (7 bits) Octets 1 Variable Reserved PSDU (1 bit) 35 BPSK Binary Phase-Shift Keying είλαη ε πην απιή κνξθή δηακφξθσζε κεηαηφπηζεο θάζεο. 36 QPSK Quadrature Phase Shift Keying είλαη έλαο αιγφξηζκνο δηακφξθσζεο θάζεο. 34

45 SHR PHR PHY payload Σν preamble ζήκα πνπ ρξεζηκεχεη γηα ηνλ ζπγρξνληζκφ θαη ην πεδίν SFD (Start of Frame Delimiter) πνπ θαζνξίδεη ηελ αξρή ηνπ ππφινηπνπ παθέηνπ, καδί απνηεινχλ ηελ θεθαιίδα SHR (SyncH Header). ηελ ζπλέρεηα ε θεθαιίδα PHR δειψλεη ην κέγεζνο ηνπ πιαηζίνπ PSDU (PHY Service Data Unit) ην νπνίν κεηαβάιιεηαη θαη είλαη ε ρξήζηκε πιεξνθνξία. 2 Δπίπεδν MAC Σν επίπεδν MAC ρξεζηκνπνηεί ηνλ αιγφξηζκν CSMA - CA (Carrier Sense Multiple Access with Collision Avoidance) θαη κε βάζε απηφλ επηιέγεηαη πνηα ζπζθεπή ζα μεθηλήζεη λα εθπέκπεη ή ζα ζηακαηήζεη θαη ζα κπεη ζε αλακνλή. Τπάξρνπλ δχν εθδνρέο ηνπ CSMA: 1. Slotted CSMA: ε απηή ηελ πεξίπησζε ε ζπζθεπή πνπ ζα εθηειέζεη ηελ απνζηνιή παξαθνινπζεί ην θαλάιη αλ είλαη αδξαλέο ζηέιλεη ην παθέην ζε slots κηθξά θνκκάηηα ηνπ. Σν slotted CSMA είλαη ηδαληθφ γηα ηνπνινγίεο πνπ ππάξρεη δηαθνξνπνίεζε ησλ θφκβσλ κεηαμχ ηνπο ζε ζέκαηα ηεξαξρίαο (master, slave). 2. Unslotted CSMA CA: Ο αιγφξηζκνο, φπσο θαη πην πάλσ, αληρλεχεη ηελ θίλεζε ζην θαλάιη. Αλ είλαη αδξαλέο αξρίδεη ηελ κεηάδνζε ζηέιλνληαο νιφθιεξν ην παθέην. Αλ ζην θαλάιη ππάξρνπλ ζπγθξνχζεηο ηφηε ν αιγφξηζκνο νπηζζνρψξεζεο ηνπ Ethernet θαζπζηέξεη ηηο ζπζθεπέο γηα έλα ηπραίν ρξνληθφ δηάζηεκα θαη κεηά μαλαδνθηκάδνπλ. Σα παθέηα ζην MAC επίπεδν έρνπλ ηελ πην θάησ κνξθή: Octets: 2 Frame control 1 0/2 0/2/8 0/2 0/2/8 0/5/6/10/14 Variable 2 Sequence Number Destination PAN identifier Destination address Addressing fields MHR Source PAN Identifier Source Address Auxiliary Security Header Frame Payload MAC payload FCS MFR Έλα παθέην ζην επίπεδν MAC απνηειείηαη απφ ην MHR ην MAC payload θαη ην MFR. Η θεθαιίδα MHR πεξηέρεη πιεξνθνξίεο ζρεηηθά κε ηελ δηεπζπλζηνδφηεζε ηνπ παθέηνπ, ηνλ ηχπν ηνπ ππφινηπνπ παθέηνπ (ην είδνο ηνπ payload) θαη ηελ αξίζκεζε ηνπ παθέηνπ Επύπεδο Δικτύου ην επίπεδν δηθηχνπ ζα αλαθέξνπκε θάπνηα πξσηφθνιια πνπ αλαιακβάλνπλ ηελ δξνκνιφγεζε ησλ δεδνκέλσλ. 1. Network structure based protocols: 35

46 a. Flat routing: Ο θάζε θφκβνο είλαη ίζνο κε ηνλ δίπια ηνπ (p2p) θαη ζα πξέπεη λα ζπλεξγαζηνχλ γηα λα κεηαθέξνπλ δεδνκέλα. Η ινγηθή απηψλ ησλ πξσηνθφιισλ ζέηεη σο θέληξν ηα δεδνκέλα (data centric) θαη φρη ηνπο θφκβνπο αθνχ έηζη θαη αιιηψο ν θάζε θφκβνο δελ κπνξεί λα μερσξίζεη απφ ηνλ άιινλ. Πην θάησ παξαζέηνπκε θάπνηα παξαδείγκαηα: i. SPIN (Sensor protocols for in formations via negotiation) ii. Directed diffusion iii. Energy aware routing b. Hierarchical Routing: ε απηή ηελ νηθνγέλεηα πξσηνθφιισλ δεκηνπξγείηαη κηα ηεξαξρία κεηαμχ ησλ θφκβσλ. Οη θφκβνη κε πεξηζζφηεξε ελέξγεηα θαινχληαη λα εθηειέζνπλ ηελ επεμεξγαζία θαη ηελ απνζηνιή ησλ δεδνκέλσλ ζε αληίζεζε κε ηνπο ππφινηπνπο θφκβνπο. i. LEACH (low energy adaptive clustering) ii. PEGASIS (power efficient gathering in sensor information systems) iii. TEEN (threshold sensitive energy efficient protocol) iv. SMECN (small minimum energy communication network) v. SOP (self organized protocol) vi. Virtual grid architecture vii. TTDD (two tier data dissemination) c. Location based routing: ε απηή ηελ νηθνγέλεηα νη θφκβνη θαζνξίδνληαη απφ ηελ γεσγξαθηθή ηνπο ζέζε ε νπνία κπνξεί λα θαζνξηζηεί είηε απφ GPS είηε απφ ηελ ηζρχ ηνπ ζήκαηνο ησλ γεηηνληθψλ θφκβσλ. i. GAF (geographic adaptive fidelity) ii. GEAR (geographic energy aware routing) iii. SPAN 2. Protocol operation based protocols: a. Multipath: ε απηή ηελ νηθνγέλεηα ε πεγή θαη ν πξννξηζκφο ζπλδένληαη κε πεξηζζφηεξν απφ έλα κνλνπάηη, κε απνηέιεζκα λα απμάλεηαη ε αμηνπηζηία αιιά λα κεγαιψλεη ε ζπλνιηθή θαηαλάισζε. b. Query based: Ο πξννξηζκφο δηαδίδεη ζην δίθηπν ηη ζέιεη (query) θαη νη ζπγθεθξηκέλνη θφκβνη ηνπ απαληνχλε πίζσ. c. Negotiation based: Πξνζπαζνχλ λα εμαιείςνπλ ηηο επηπιένλ κεηαδφζεηο ησλ θφκβσλ γηα δηαπξαγκάηεπζε. d. Quality of Service (QoS): Σν παθέην πξέπεη λα παξαδίδεηαη ζην ζηαζκφ βάζεο έγθαηξα, κε ρακειή ζπλνιηθή θαηαλάισζε. Γεληθά ζα κπνξνχζακε λα θαηεγνξηνπνηήζνπκε ηα πξσηφθνιια δξνκνιφγεζεο σο εμήο: 1. Proactive. Ολνκάδνληαη ηα πξσηφθνιια ζηα νπνία νη δηαδξνκέο πνπ ζα αθνινπζήζνπλ ηα κελχκαηα είλαη πξνθαζνξηζκέλεο. 2. Reactive. Ολνκάδνληαη ηα πξσηφθνιια κε δπλακηθέο δηαδξνκέο δξνκνιφγεζεο νη νπνίεο πινπνηνχληαη φηαλ ην δίθηπν ρξεηαζηεί λα κεηαθέξεη δεδνκέλα. 36

47 3. Hybrid. Δίλαη πξσηφθνιια πνπ απνηεινχλ ζπλδπαζκφ ησλ δχν πην πάλσ. 37

48 38

49 3 Εργαλεία 3.1 Λειτουργικό Σύςτημα Σν ιεηηνπξγηθφ ζχζηεκα είλαη ε δηεπαθή ηνπ ρξήζηε κε ην πιηθφ. Έλα ιεηηνπξγηθφ ζχζηεκα πνπ απεπζχλεηαη ζε WSN είλαη πνιχ πην απιφ απφ ηα ζπλεζηζκέλα ιεηηνπξγηθά (Windows, Linux, Solaris θηι), απηφ νθείιεηαη ζην γεγνλφο φηη ην ίδην ην hardware δελ κπνξεί λα ππνζηεξίμεη πνιχπινθεο εθαξκνγέο, δηφηη φπσο έρεη αλαθεξζεί θαη πξνεγνχκελνο νη θφκβνη είλαη ζρεδηαζκέλνη γηα ζπγθεθξηκέλεο εθαξκνγέο θαη έρνπλ σο ζηφρν ηελ ρακειή θαηαλάισζε ( πεξηνξηζκνί πνπ δελ ππάξρνπλ ζηελ αξρηηεθηνληθή ελφο επεμεξγαζηή ηηο νηθνγέλεηαο, γηα παξάδεηγκα, x86 ηεο Intel). Πην θάησ αλαθέξνληαη κεξηθά απφ ηα πην γλσζηά ιεηηνπξγηθά πνπ έρνπλ ζρεδηαζζεί γηα WSNs: 1. MANTIS OS (multimodal of in-situ sensors): Δίλαη έλα multithreading 37 ιεηηνπξγηθφ ζχζηεκα ζρεδηαζκέλν αζχξκαηνπο αηζζεηήξεο κε πεξηνξηζκέλνπο πφξνπο. 2. BTnut OS 3. Nano RK OS: Δίλαη έλα πξαγκαηηθνχ ρξφλνπ ιεηηνπξγηθφ ζχζηεκα θαηαζθεπαζκέλν γηα κηθξνειεγθηέο πνπ ρξεζηκνπνηνχλ δηάθνξνη θφκβνη ησλ WSNs. 4. LiteOS: Δίλαη έλα πξαγκαηηθνχ ρξφλνπ ιεηηνπξγηθφ ζρεδηαζκέλν γηα WSNs. 5. Contiki OS: Πξφθεηηαη γηα αλνηρηνχ θψδηθα, πνιπδηεξγαζηαθφ (multitasking 38 ) ιεηηνπξγηθφ ζχζηεκα κε πςειή κεηαθεξζηκφηεηα, ζρεδηαζκέλν γηα δηθηπσκέλα ελζσκαησκέλα ζπζηήκαηα θαη αζχξκαηα δίθηπα αηζζεηήξσλ κε πεξηνξηζκνχο κλήκεο. Παξέρεη ηαπηφρξνλα κεραληζκνχο πιήξνπο IP δηθηχσζεο (θαη γηα ηηο δχν εθδφζεηο IPv4 θαη IPv6) θαη ρακειήο θαηαλάισζεο ελέξγεηαο ξαδηνεπηθνηλσλία. 6. TinyOS: Έλα απφ ηα πην γλσζηά ιεηηνπξγηθά γηα WSN. Σν tinyos ρξεζηκνπνηήζεθε ζηελ πινπνίεζε ηεο εθαξκνγήο γηα απηφ θαη ζα θάλνπκε εθηελή παξνπζίαζε ηνπ ζε απηφ ην θεθάιαην Tiny OS Σν tinyos είλαη έλα αλνηθηνχ θψδηθα Λ θαη είλαη ίζσο ην πην δηαδεδνκέλν γηα αζχξκαηα δίθηπα αηζζεηήξσλ. Η πξψηε έθδνζε παξνπζηάζηεθε ην 2000 απφ ην παλεπηζηήκην ηνπ Berkeley. ηελ αξρή μεθίλεζε ζαλ κέξνο ηνπ DARPA Nest project 39 αιιά 37 Multithreading: Σερληθή ιεηηνπξγηθψλ ζπζηεκάησλ θαηά ηελ νπνία θάπνηεο δηεξγαζίεο κπνξνχλ λα ηξέρνπλ ζε δηάθνξα λήκαηα, δίλνληαο ηελ αίζζεζε ηεο παξάιιειεο επεμεξγαζίαο απμάλνληαο ηελ απνδνηηθφηεηα ησλ εθαξκνγψλ. 38 Multitasking: (ζηα ειιεληθά πνιπεπεμεξγαζία) είλαη ε ρξήζε δχν ή πεξηζζφηεξσλ θεληξηθψλ κνλάδσλ επεμεξγαζίαο (CPU) ζε έλα εληαίν ζχζηεκα ππνινγηζηή. 39 DARPA Nest project (Defense Advanced Research Projects Agency): Δίλαη κηα εξεπλεηηθή νξγάλσζε πνπ κειεηά ακπληηθά ζρέδηα θαη ππφθεηηαη ζηηο ΗΠΑ. 39

50 ζε πνιχ κηθξφ ρξνληθφ δηάζηεκα δηαδφζεθε ζε φιε ηελ επηζηεκνληθή θνηλφηεηα. Απηή ηελ ζηηγκή ε ηειεπηαία έθδνζε είλαη ε ε νπνία παξνπζηάζζεθε ηνλ Απξίιην ηνπ Η εγθαηάζηαζε ηνπ ιεηηνπξγηθνχ ζε θφκβνπο κε πεξηνξηζκέλνπο πφξνπο θαη κε απαίηεζε βέιηηζηεο θαηαλάισζεο ελέξγεηαο πξνυπνζέηεη φηη ην ιεηηνπξγηθφ ζα πξέπεη: 1. Να έρεη αξθεηά κηθξφ κέγεζνο. 2. Να είλαη ηθαλφ λα ειαρηζηνπνηεί ηελ θαηαλάισζε ελέξγεηαο. 3. Να είλαη αμηφπηζην ( κεηαθνξά παθέησλ, επεμεξγαζία θηι) 4. Να ππνζηεξίδεη ηελ δπλαηφηεηα επαλαπξνγξακκαηηζκνχ. 5. Να ππνζηεξίδεη πνηθίιεο εθαξκνγέο. 6. Να κπνξεί λα εθαξκφζεη κηαο κνξθήο παξαιιειηζκνχ (πνιιέο θνξέο ρξεηάδεηαη λα επεμεξγάδεηαη έλα παθέην θαη ηαπηφρξνλα λα «αθνχκε» γηα άιιν). Οη ζρεδηαζηέο ηνπ tinyos θαζνδεγνχκελνη απφ ηνπο πην πάλσ πεξηνξηζκνχο πνπ ζέηνπλ νη αζχξκαηνη θφκβνη θαη νη κεραληθνί δηθηχσλ δεκηνχξγεζαλ έλα ιεηηνπξγηθφ αληάμην ζηηο απαηηήζεηο ησλ δχν. Υαξαθηεξηζηηθφ ηνπ tinyos είλαη ε απνπζία ηνπ multithreading θαη αληί απηνχ γίλεηαη ρξήζε ηνπ event-driven κνληέινπ. Σν event-driven κνληέιν εμαζθαιίδεη παξάιιειε εθηέιεζε δηεξγαζηψλ ρξεζηκνπνηψληαο ειάρηζηε ελέξγεηα θαη κλήκε ( βαζηθέο απαηηήζεηο). ε αληίζεζε κε άιια ζπζηήκαηα ε έλλνηα ηνπ polling απνπζηάδεη, ην ζχζηεκα βξίζθεηαη ζπλέρεηα ζε Sleep mode έσο φηνπ λα παξνπζηαζζεί δηεξγαζία πξνο εθηέιεζε ε νπνία πξνθχπηεη, ζπλήζσο, απφ events. Άξα έλα event ζα «μππλήζεη» ηνλ επεμεξγαζηή ν νπνίνο ζα εξγαζηεί φζν ρξεηάδεηαη θαη κεηά πάιη ζα πέζεη ζε Sleep mode, αληίζεηα ζε έλα polling πεξηβάιινλ ν επεμεξγαζηήο είλαη ζπλέρεηα «awake» θαη ζπαηαιά ελέξγεηα λα ξσηάεη «Τπάξρεη θάηη λα θάλσ;». ην tinyos δελ νξίδνληαη βαζηθέο έλλνηεο φπσο ηα γεληθνχ ζθνπνχ ιεηηνπξγηθά (ππξήλαο, εηθνληθή κλήκε θηι), ε θαηαλνκή κλήκεο γίλεηαη ζηαηηθά θαηά ηελ δηαδηθαζία κεηαγιψηηηζεο απηφ έρεη ζαλ πιενλέθηεκα ηελ απνθπγή ζπγθξνχζεσλ (overheads) θαη ε δηαρείξηζε ηνπ hardware γίλεηαη άκεζα αθνχ δελ ππάξρεη ν ππξήλαο (kernel). Η δνκή ηνπο tinyos απαξηίδεηαη απφ έλα ρξνλνπξνγξακκαηηζηή (scheduler) θαη κηα ζηνίβα απφ components. (ηα βαζηθά δνκηθά ζηνηρεία ηνπ ιεηηνπξγηθνχ, αλαιχνληαη πην θάησ) Βαςικϊ ςτοιχεύα του tinyos 1. Components: Σα components κνηάδνπλ θάπσο κε ηηο δηεξγαζίεο πνπ ρξεζηκνπνηνχλ ηα γεληθνχ ζθνπνχ Λ. Κάζε component έρεη έλα πλαίζιο μνήμηρ ζηαζεξνχ κεγέζνπο πνπ ηνπ αλαηέζεθε ζηαηηθά θαηά ηελ δηαδηθαζία κεηαγιψηηηζεο κε ζθνπφ λα θπιάεη ηελ θαηάζηαζε ηνπ θαη ηα δεδνκέλα ηνπ. Σα components κπνξνχλ λα πεξηέρνπλ ζπλαξηήζεηο (command handlers, event handler, tasks). Με ζθνπφ λα θάλνπκε ηελ δηαδηθαζία αλάπηπμεο εθαξκνγψλ απιή πξέπεη θαηά θάπνην ηξφπν λα «θξχςνπκε» ην hardware απφ ην ρξήζηε/πξνγξακκαηηζηή ρξεζηκνπνηψληαο κηα κνξθή πξνγξακκαηηζηηθήο αθαίξεζεο. Γειαδή φηαλ ν πξνγξακκαηηζηήο ζέιεη λα ζηείιεη έλα παθέην δελ ηνλ ελδηαθέξεη πνην hardware ην θάλεη θαη πσο, ηαπηφρξνλα ν ίδηνο θψδηθάο πξέπεη λα είλαη αλεμάξηεηνο ηεο πιαηθφξκαο (telosb, iris, micaz etc).σν tinyos δεκηνπξγεί απηή ηελ αθαίξεζε κε 3 δηαθξηηά ζηξψκαηα: 40

51 a. HPL hardware presentation layer: Δίλαη ην ρακειφηεξν ζηξψκα ζηελ δνκή ηνπ Λ, ζηφρνο ηνπ είλαη λα παξνπζηάδεη ζην επφκελν ζηξψκα ηηο «ηθαλφηεηεο» ηνπ hardware. Αθνχ επηθνηλσλεί απεπζείαο κε ην HW είλαη ινγηθφ φηη ην θάζε component ζα είλαη άκεζα εμαξηψκελν απφ ην HW θαη ζα δηαθέξεη απφ πιαηθφξκα ζε πιαηθφξκα. Παξφια απηά φια ηα components απηνχ ηνπ ζηξψκαηνο έρνπλ κηα ζπγθεθξηκέλε δνκή θαη ζα πξέπεη λα έρνπλ: 1. Δληνιέο γηα αξρηθνπνίεζε, έλαξμε, απελεξγνπνίεζε ηνπ HW (ρακειφηεξε θαηαλάισζε). 2. Δληνιέο get θαη set θαηεπζείαλ ζηνπο registers Ξερσξηζηέο εληνιέο γηα ηηο δηαδηθαζίεο πνπ ρξεζηκνπνηνχληαη πην ζπρλά. 4. Δληνιέο γηα ελεξγνπνίεζε/απελεξγνπνίεζε ησλ interrupts. 5. Ρνπηίλεο πνπ ζα θαινχληαη αλάινγα κε θάπνην interrupt πνπ πξνθχπηεη. b. HAL hardware adaption layer: Δίλαη ην ελδηάκεζν ζηξψκα ηνπ HAA (hardware abstraction architecture), θαη ρξεζηκνπνηεί raw interfaces απφ ην HPL γηα λα δεκηνπξγήζεη ρξήζηκεο αθαηξέζεηο. Απηφ ην ζηξψκα δηαζέηεη ζπγθεθξηκέλεο αθαηξέζεηο γηα θάζε πιαηθφξκα(κέζν ησλ interface), επηηπγράλνληαο έηζη ηελ απαηηνχκε ελεξγεηαθή απφδνζε. c. HIL hardware interface layer: Σν ηειεπηαίν ζηξψκα ρξεζηκνπνηψληαο platform-specific abstractions (αθαηξέζεηο γηα ζπγθεθξηκέλεο πιαηθφξκεο) απφ ην HAL ηηο κεηαηξέπεη ζε hardware independent abstraction (αθαηξέζεηο αλεμαξηήηνπ πιαηθφξκαο). Έρνπκε δχν είδε HIL components: 1. Strong/Real HILs: ε απηή ηελ πεξίπησζε κε ηνλ ίδην θψδηθά αλακέλνπκε φιεο νη πιαηθφξκεο λα ζπκπεξηθέξνληαη ην ίδην (πρ Timer, Leds, active message θηι) 2. Weak HILs: Υξεζηκνπνηψληαο αθαηξέζεηο απφ weak HILs κπνξνχκε λα γξάςνπκε «θνξεηέο» εθαξκνγέο αιιά ε ζπκπεξηθνξά ηεο θάζε πιαηθφξκαο ελδέρεηαη λα δηαθέξεη. Με απηνχ ηνπ είδνπο ηελ αθαίξεζε ην ιεηηνπξγηθφ παξέρεη κηα ζπλεθηηθή άπνςε ηνπ ζπζηήκαηνο αλεμάξηεηα ηεο πιαηθφξκαο. Η επειημία ηνπ tinyos είλαη φηη αλ κηα εθαξκνγή δελ ρξεηάδεηαη πεξαηηέξσ βειηηψζεηο πεξί θαηαλάισζεο ή νηηδήπνηε άιιν κπνξεί λα ρξεζηκνπνηήζεη components απφ ην αλψηεξν επίπεδν παξφια απηά ν πξνγξακκαηηζηήο έρεη πξφζβαζε θαη ζηα θαηψηεξα components δίλνληαο ηελ δπλαηφηεηα αλάπηπμεο πνιχ ζπγθεθξηκέλσλ εθαξκνγψλ κε απφιπην έιεγρν ζην πιηθφ. 40 Registers (θαηαρσξεηέο): είλαη κηθξέο αιιά πνιχ γξήγνξεο κλήκεο ζπγθεθξηκέλεο αξρηηεθηνληθήο πνπ βξίζθνληαη κέζα ζηνλ επεμεξγαζηή. 41

52 Δικόνα 21 - Γομή ηος TinyOS 2. Commands (εληνιέο): Δίλαη ζπλαξηήζεηο πνπ πινπνηνχληαη ζηα components θαη ρξεζηκνπνηνχληαη γηα λα δηελεξγνχλ αηηήζεηο ζε ρακειφηεξνπ επηπέδνπ components. Σα commands εθηεινχληαη άκεζα ( θαη δελ κπνξνχλε λα δηαθνπνχλε παξά κφλν απφ αζχγρξνλα events. Μέζα απφ ηα commands κπνξνχλ λα θιεζνχλε άιια commands ή tasks αιιά δελ κπνξνχλ λα ζεκαηνδνηεζνχλ events. 3. Events (γεγνλόηα): πλήζσο ζεκαηνδνηνχλ ηελ ιήμε κηαο ιεηηνπξγίαο θαη απηά είλαη ηα ζχγρξνλα events, ηα αζχγρξνλα events πξνθχπηνπλ απφ hardware interrupts γηα παξάδεηγκα έλα event ζα κπνξνχζε λα είλαη ην ηέινο ηεο ιεηηνπξγίαο boot ηνπ θφκβνπ (booted event). Tα events δελ κπνξνχλ λα δηαθνπνχλε (παξά κφλν απφ αλψηεξεο ζεκαζίαο αζχγρξνλν event). Μέζν ησλ events κπνξνχκε λα θαιέζνπκε ρακειφηεξνπ επηπέδνπ commands θαη tasks θαη λα ζεκαηνδνηήζνπλ events κεγαιχηεξνπ επηπέδνπ. Σα events και ηα commands είναι ηα επγαλεία πος σπηζιμοποιούν ηα components για να επικοινυνήζοςν μεηαξύ ηοςρ. Η ρξήζε ησλ commands θαη event πινπνηεί ηελ splitphase operation 41 πνπ αθνινπζεί ην tinyos. Γηα παξάδεηγκα εάλ ζέινπκε λα δηαβάζνπκε ηελ ηηκή απφ έλα αηζζεηήξα ζα πξέπεη λα γίλεη ζε δχν θάζεηο: a. Καιείηαη ην command πνπ δηαβάδεη πρ call read();. Η δηαδηθαζία δηαβάζκαηνο μεθηλάεη θαη ην ζχζηεκα κπνξεί λα αζρνιεζεί κε άιια. Όηαλ ε ηηκή δηαβαζηεί ζα έρνπκε ηελ δεχηεξε θάζε. b. Δγείξεηε ην event «ηέινο δηαβάζκαηνο» πρ event read.readdone(); Καη ηφηε παίξλνπκε ην απνηέιεζκα. Αλ ην Λ δελ ρξεζηκνπνηνχζε split-phase ε πινπνίεζε ζε C θψδηθα γηα λα δηαβάζνπκε ηελ ηηκή ηνπ αηζζεηήξα ζα ήηαλ θάπσο έηζη: result = Read(); 41 Σν tinyos γηα λα ζπκβαδίδεη κε ηνπο πεξηζζφηεξνπο αηζζεηήξεο νη νπνίνη έρνπλ split-phase hardware πινπνηήζεθε έηζη ψζηε θαη ην software λα είλαη split-phase. Θα κπνξνχζαλ λα θάλαλε ην sampling ελφο ADC synchronous αιιά απηφ ζα ρξεηαδφηαλ multithreading πεξηβάιινλ ην φπνην απαηηεί αξθεηή RAM πξάγκα αζχκθνξν ζε embedded ζπζηήκαηα. 42

53 int read() { while(!get_number()) { //looping until read done } return read_number(); } Σν ζχζηεκα ζα θνιινχζε ζην while loop κέρξη get_number() λα πάξεη ηνλ αξηζκφ θαη λα επηζηξέςεη true («λαη, πήξα ηνλ αξηζκφ»). Γηα απηφ θαη νη ζρεδηαζηέο ηνπ tinyos εθάξκνζαλ ηελ ηερληθή ηνπ split-phase operations ζε φιν ην ζχζηεκα. 4. Tasks (δηεξγαζίεο): Οη δχν πην πάλσ ζπλαξηήζεηο commands θαη events είλαη πάληα δηεξγαζίεο κε ειάρηζην ρξνληθφ θφζηνο, εθηεινχλ κηθξέο αιιά απφιπηα αλαγθαίεο δηεξγαζίεο. Σα ππφινηπα ππνινγηζηηθά θνκκάηηα κηαο εθαξκνγήο πνπ απαηηνχλ πεξηζζφηεξν ρξφλν εθηέιεζεο πινπνηνχληαη κε ηα tasks ηα νπνία είλαη ιεηηνπξγίεο ρακειφηεξεο ζεκαζίαο γηα απηφ θαη θαινχληαη απφ commands ή events αιιά δελ εθηεινχληαη άκεζα απφ ην ιεηηνπξγηθφ φζν ππάξρνπλ αιιά commands ή events λα εθηειέζεη. Όηαλ έλα task μεθηλήζεη δελ κπνξεί λα ζηακαηήζεη απφ άιιν task ή ζχγρξνλν event άξα έλα ζσζηφο πξνγξακκαηηζηήο ηνπ tinyos ζα πξέπεη λα θξαηάεη θαη ηα task κηθξά θαη λα πξνηηκάεη λα ζπάδεη κηα δηεξγαζία ζε πνιιά κηθξά tasks (γηα παξάδεηγκα αλ έλα task είλαη αξθεηά κεγάιν ππάξρεη πεξίπησζε ν θφκβνο λα ράζεη παθέηα απφ άιινπο θφκβνπο ζηελ δηαδηθαζία εθηέιεζεο ηνπ κεγάινπ task). 5. Φξνλνπξνγξακκαηηζηήο: Δίλαη ππεχζπλνο γηα ηελ νκαιή ιεηηνπξγία ησλ components έρεη κηα ζηνίβα ζηελ νπνία θαηαρσξεί tasks φηαλ θαινχληαη ζην ζχζηεκα γεληθά αθνινπζεί FIFO 42 ινγηθή θαη ζεσξείηαη non-preemptive 43, βέβαηα απηφ δελ ηζρχεη εληειψο κε βάζε ηα πην πάλσ, δειαδή ζε πεξίπησζε πνπ έξζεη αζχγρξνλν event ηφηε ην task δηαθφπηεηαη γηα λα εθηειεζηεί ην event. Ο ρξνλνπξνγξακκαηηζηήο ζα δίλεη ζην επεμεξγαζηή tasks λα εθηειέζεη φζν ππάξρνπλ ζηελ ζηνίβα φηαλ ε ζηνίβα αδεηάζεη βάδεη ηνλ επεμεξγαζηή ζε sleep mode. Ο αξρηθφο πξνγξακκαηηζκφο ηνπ tinyos έγηλε ζε C ( θαη Perl scripts), αιιά ρξεηάζηεθε κηα θαηλνχξγηα γισζζά γηα λα κπνξέζεη λα ππνζηεξίμεη ηελ component based ινγηθή ηνπ tinyos θαη έηζη δεκηνπξγήζεθε ε nesc. 42 FIFO first in first out: ε ζεηξά εμππεξέηεζεο δηαδηθαζηψλ, ν πξψηνο πνπ κπαίλεη ζα είλαη θαη πξψηνο πνπ ζα εμππεξεηεζεί. 43 Νon-preemptive : Αλαθέξεηαη ζε πνιπδηεξγαζηαθά ζχζηεκα φπνπ θακία δηεξγαζία δελ δηαθφπηεηαη γηα λα εθηειεζζεί άιιε. 43

54 3.1.2 nesc H nesc (network embedded system C) είλαη component-based, event-driven γιψζζα πξνγξακκαηηζκνχ. Η nesc ζρεδηάζηεθε σο πξνέθηαζε ηεο γιψζζαο C γηα ηελ δεκηνπξγία εθαξκνγψλ, γηα ηελ πιαηθφξκα ηνπ tinyos, πνπ απνηεινχληαη απφ components ζπλελσκέλα κεηαμχ ηνπο, κε κηα δηαδηθαζία πνπ νλνκάδεηαη wiring. Πην θάησ ζα αλαιχζνπκε ηα θχξηα ζηνηρεία πνπ απαξηίδνπλ έλα πξφγξακκα γξακκέλν ζε nesc: 1. Interface: Απνηειεί έλα αθεξεκέλν νξηζκφ γηα ηελ αιιειεπίδξαζε ησλ components κεηαμχ ηνπο. Γεληθά ηα interfaces είλαη ιεηηνπξγίεο πνπ παξέρνληαη απφ θάπνηα components ζε άιια components. Κάζε component πνπ παξέρεη έλα interface νλνκάδεηαη provider (παξνρέαο) θαη θάζε component πνπ ρξεζηκνπνηεί ην interface νλνκάδεηαη user (ρξήζηεο). ε έλα interface ππάξρνπλ απιά δειψζεηο ησλ ζπλαξηήζεσλ (commands θαη events). Η πινπνίεζε ησλ commands είλαη ππνρξέσζε ησλ components πνπ παξέρνπλ (providers) ην ζπγθεθξηκέλν Interface ελψ ε πινπνίεζε ησλ events είλαη ππνρξέσζε ηνπ component πνπ ρξεζηκνπνηεί (users) ην Interface, παξφκνηα κε ηελ ρξήζε ησλ interface ζηελ java (απηή είλαη κηα θαιή ηερληθή γηα λα «αλαγθάδεηαη» πάληα ν πξνγξακκαηηζηήο λα δεκηνπξγεί ηελ splitphase ινγηθή ηνπ ιεηηνπξγηθνχ). Πην θάησ είλαη ην read interface απφ ηα interfaces ηνπ tinyos: interface Read<val_t> { command error_t read(); event void readdone(error_t result, val_t val); } - Η ιέμε interface είλαη δεζκεπκέλε ζηε nesc θαη νξίδεη ηελ έλαξμε ηνπ interface. - ηελ ζπλέρεηα αθνινπζεί ην φλνκα ηνπ interface ζηελ ζπγθεθξηκέλε πεξίπησζε νλνκάδεηαη Read. - Μεηά απφ ην φλνκα αθινπζνχλ νη παξάκεηξνη ην interface σο εμήο: <παξάκεηξνο_1, παξάκεηξνο_2, >(αλ ην interface δελ δέρεηαη παξακέηξνπο ηφηε ε ζχληαμε απφ Read<val_t>{..} ζα είλαη, απιά, Read{ }). Η παξάκεηξνο πνπ ζέηεη ν provider πξέπεη λα είλαη ε ίδηα κε ηελ παξάκεηξν πνπ εηζάγεηαη ζηνλ user, γηα παξάδεηγκα αλ ν provider έρεη Read<uint16_t> ν user ζα πξέπεη λα έρεη Read<uint16_t> θάηη δηαθνξεηηθφ φπσο Read<uint8_t> ζα αλαγλσξηζηεί σο ζθάικα θαηά ην debugging. - ηελ ζπλέρεηα δειψλνληαη ηα commands θαη ηα events. Η δεζκεπκέλε ιέμε command δειψλεη command ζηελ ζπλέρεηα αθνινπζεί φ ηχπνο πνπ επηζηξέθεη απηφ ην command πνπ είλαη error_t (ηχπνο ζθάικαηνο ηνπ tinyos, πην θάησ θάλνπκε κηα αλαθνξά γηα ηνπο ηχπνπο ηεο γιψζζαο). Μεηά είλαη ην φλνκα ηνπ command ην read ην νπνίν παξαηεξνχκε φηη δελ παίξλεη παξακέηξνπο 44

55 γηα απηφ θαη είλαη άδεην. Η δεζκεπκέλε ιέμε event δειψλεη event ζηελ ζπλέρεηα αθνινπζεί ν ηχπνο πνπ επηζηξέθεη ην event πνπ είλαη ν γλσζηφο, απφ ηελ C, void. Μεηά είλαη ην φλνκα ηνπ event ζπγθεθξηκέλα readdone θαη, ηέινο, αθινπζνχλ νη παξάκεηξνη πνπ δέρεηαη ην event: ην result θαη ην val πνπ είλαη ηχπνπ error_t θαη val_t αληίζηνηρα. 2. Module: Δίλαη ην πξψην απφ ηα δχν components πνπ ππάξρνπλ ζηελ nesc. Έλα module κπνξεί λα είλαη provider ελφο interface (άξα πξέπεη λα πινπνηεί ηα commands ηνπ interface), λα είλαη user ελφο interface( άξα πξέπεη λα πινπνηεί ηα events ηνπ interface) ή θαη ηα δχν λα είλαη provider ηνπ interface 1 θαη user ηνπ interface 2. Κάζε module απνηειείηαη απφ 2 κέξε, ζην πξψην κέξνο ην module δειψλεη πνηα interface ρξεζηκνπνηεί θαη πνηα παξέρεη, ζην δεχηεξν κέξνο είλαη ε πινπνίεζε ηνπ component module. Πην θάησ παξνπζηάδνπκε ηελ ζχληαμε ελφο Module component κε φλνκα myfirstmodulec 44 : module myfirstmodulec { uses interface Boot; provides interface StdControl; } implementation { event void Boot.booted() { call StdControl.start(); call StdControl.stop(); Ππώηο Μέπορ: Ολνκάδεηαη ε ςπογπαθή (signature) ηνπ component. Ξεθηλάεη πάληα κε ηελ δεζκεπκέλε ιέμε module ε νπνία δειψλεη ηη component είλαη ζηελ ζπλέρεηα γξάθνπκε ην φλνκα ηνπ ζπγθεθξηκέλνπ module, εδψ είλαη myfirstmodulec. Μέζα ζηηο αγθχιεο ρξεζηκνπνηψληαο ηηο δεζκεπκέλεο ιέμεηο uses, provides θαη ζηελ ζπλέρεηα interface δειψλνπκε πνηα interface ρξεζηκνπνηεί (εδψ ην Boot) θαη πνηα παξέρεη (εδψ ην StdControl). Γεύηεπο Μέπορ: Ξεθηλάεη κε ηελ δεζκεπκέλε ιέμε implementation θαη αλάκεζα ζηηο αγθχιεο γξάθνπκε ην βαζικό ππόγπαμμα μιαρ tinyos εθαπμογήρ. Παξαηεξψληαο 44 Η νλνκαζία ησλ components ζε tinyos πεξηβάιινλ αθνινπζεί κηα ζχκβαζε (δελ είλαη αλαγθαζηηθφ), φια ηα components πνπ έρνπλ φλνκα πνπ ηειεηψλεη ζε C (C είλαη γηα Component) φπσο γηα παξάδεηγκα myfirstmodulec ζεκαίλεη φηη είλαη components πνπ κπνξνχλ λα ρξεζηκνπνηεζνχλ απφ αιιά components (φπσο ζα δνχκε πην θάησ) ειεχζεξα. Σα άιια components πνπ ηειεηψλνπλ ζε P (P γηα private) φπσο γηα παξάδεηγκα LedsP, ζπζηήλεηαη λα κελ ρξεζηκνπνηνχληαη απεπζείαο δηφηη απνηεινχλ θνκκάηη ελφο πεξίπινθνπ ζπζηήκαηνο, γεληθά φια ηα privates components είλαη γξακκέλα γηα ζπγθεθξηκέλεο πιαηθφξκεο ελψ ηα ππφινηπα ζα δνπιεχνπλ ζε φιεο ηηο ζπζθεπέο πνπ ππνζηεξίδνπλ tinyos. 45

56 } ην πξψην κέξνο θαη κε βάζε ηηο πιεξνθνξίεο πεξί interface πνπ δψζακε command result_t πην πάλσ αλακέλνπκε ηελ ςλοποίηζη StdControl.start() ηυν commands ηυν interface πος { παπέσει και ηην ςλοποίηζη ηυν events //do something to start ηυν interface πος σπηζιμοποιεί. } Υξεζηκνπνηεί ην interface Boot ην νπνίν command result_t έρεη ην event booted, παξαηεξψληαο ην StdControl.stop() implementation ηνπ myfirstmodulec { ππάξρεη ε πινπνίεζε ηνπ event πνπ //do something to stop ζεκαίλεη φηαλ ε ζπζθεπή έρεη ηειεηψζεη } ην Boot ζα εθηειεζζεί απηφο ν θψδηθαο } απιά ζα εθηειέζεη ην command start() πξψηα θαη κεηά ην command stop() ηνπ interface StdControl. Παξαηεξνχκε φηη παξέρεη ην interface StdControl θαη φπσο είλαη αλακελφκελν απφ ηελ nesc ζα πξέπεη λα πινπνηήζεη ηα commands πνπ δειψλεη ην interface ην νπνίν θαη γίλεηαη (StdControl.nc) StdControl.nc interface StdControl { command error_t start(); command error_t stop(); } Boot.nc interface Boot { event void booted(); } Σν interface StdControl.nc ην νπνίν βξίζθεηαη ζηελ βηβιηνζήθε ηνπ tinyos. TinyOS-2.1.1/tos/interface/StdControl.nc Σν interface Boot.nc ην νπνίν βξίζθεηαη ζηελ βηβιηνζήθε ηνπ tinyos. TinyOS-2.1.1/tos/interface/Boot.nc θαη παξέρεηαη απφ ην component MainC.nc 3. Configuration: Σν δεχηεξν απφ ηα δχν components ηεο nesc νλνκάδεηαη configuration. Κάζε tinyos εθαξκνγή έρεη ηνπιάρηζην έλα βαζηθφ configuration component (πξέπεη λα απνζεθεχεηαη ζηνλ ίδην θάθειν κε ην module component) ην νπνίν θαιείηαη λα δηαζπλδέζεη (wiring) ην component ηεο εθαξκνγήο καο κε άιια component ηνπ ζπζηήκαηνο. Κνηηψληαο ηνλ θψδηθα ηνπ module myfirstmodulec πην πάλσ δηαθξίλνπκε ηελ εμήο γξακκή ζην θψδηθα: uses interface Boot, ε εξψηεζε πνπ εχζηνρα ζα κπνξνχζε λα θάλεη θάπνηνο είλαη: Πνπ μέξεη ην module πνπ λα θνηηάμεη γηα λα βξεη απηφ ην interface; Απηφ αλαιακβάλεη λα θάλεη ην configuration component ην νπνίν έρεη παξφκνηα ζχληαμε κε ην module (δχν κέξε, ε ηαπηνπνίεζε θαη ε πινπνίεζε) θαη ρξεζηκνπνηεί κφλν 3 ηειεζηέο: ->, <-, =. Πην θάησ δίλνπκε ην configuration module πνπ αληηζηνηρεί ζην πην πάλσ module θαη ζα εμεγήζνπκε ηνπο ηειεζηέο ζην παξάδεηγκα: 46

57 configuration myfirstmoduleappc { //nothing } implementation { components myfirstmodulec, MainC; //user.interface -> provider.interface myfirstmodulec.boot - >MainC.Boot; MainC.StdControl -> myfirstmodulec.boot; } Πξψην Μέξνο: Δίλαη ε ςπογπαθή ηνπ component. Ξεθηλάεη κε ηελ δεζκεπκέλε ιέμε configuration θαη ζηελ ζπλέρεηα αθνινπζεί ην φλνκα ηνπ component (myfirstmoduleappc 45 ) κεηαμχ ησλ αγθπιψλ δελ ππάξρεη θάηη ζηελ ζπγθεθξηκέλε εθαξκνγή. Γεχηεξν Μέξνο: Ξεθηλάεη φπσο θαη ζην module κε ηελ δεζκεπκέλε ιέμε implementation. ηελ ζπλέρεηα κεηά ηελ δεζκεπκέλε ιέμε components αθνινπζνχλ ηα components πνπ θαιείηαη ην ζπγθεθξηκέλν configuration λα δηαζπλδέζεη κεηαμχ ηνπο (είηε παξέρνπλ interfaces είηε ρξεζηκνπνηνχλ). ηελ ζπλέρεηα γίλεηαη ην wiring, δειαδή ρξεζηκνπνηψληαο ηνπο ηειεζηέο -> ή <- δείρλνπκε ζηνλ compiler πνηνο είλαη user θαη πνηνο provider. Η θνξά ηνπ βέινπο μεθηλάεη ΠΑΝΣΑ απφ ην user θαη θαηαιήγεη ζηνλ provider. Απφ ην πξψην κέξνο ηνπ module (myfirstmodulec) μέξνπκε φηη ην module ρξεζηκνπνηεί ην interface Boot ην νπνίν παξέρεηαη απφ ην component MainC ζχκθσλα κε ην wiring ηνπ configuration, απηφ γξάθεηαη σο εμήο: myfirstmodulec.boot -> MainC.Boot ή MainC.Boot <- myfirstmodulec.boot. ην πην πάλσ παξάδεηγκα είδακε ηελ ρξήζε ησλ δχν ηειεζηψλ <- θαη ->. Πην θάησ ζα δνχκε ηελ ρξήζε ηνπ = κε έλα παξάδεηγκα: configuration LedsC { provides interface Leds; } implementation { components LedsP, PlatformLedsC; LedsC.Leds = LedsP.Leds; LedsP.Init <- PlatformLedsC.Init; Πξψηε παξαηήξεζε είλαη φηη και ηα configurations μποπούν να παπέσοςν η να σπηζιμοποιούν interfaces όπυρ και ηα modules. Με βάζε ηα πην πάλσ απηφ ην configuration είλαη αλαγθαζκέλν λα πινπνηήζεη ηα commands ηνπ interface Leds. Απηφ φκσο είλαη αδχλαην αθνχ ηα configuration components δελ παξέρνπλ θψδηθα. Η ιχζε δίλεηαη κε ηνλ ηειεζηή =. Σο configuration LedsC λέει όηι παπέσει ηο interface Leds ηος οποίος η 45 Σν φλνκα ηνπ configuration ζπλεζίδεηαη, απφ ηνπο πξνγξακκαηηζηέο, λα παίξλεη ην φλνκα ηνπ module κε έλα App ζην ηέινο, απηφ δελ είλαη ππνρξεσηηθφ αιιά ζπζηήλεηαη. 47

58 LedsP.Led0 -> PlatformLedsC.Led0; LedsP.Led1 -> PlatformLedsC.Led1; LedsP.Led2 -> PlatformLedsC.Led2; } ςλοποίηζη ηος βπίζκεηαι ζηο module component με ηο όνομα LedsP αςηή η ππόηαζη ζε nesc γλώζζα γπάθεηαι: LedsC.Leds = LedsP.Leds; Σν ππφινηπν είλαη απιφ wiring φπσο εμεγήζακε θαη πνην πάλσ δειαδή ην component PlatformLedsC ρξεζηκνπνηεί ην interface Init ην νπνίν ηνπ ην παξέρεη ην component LedsP θαη πάιη απηφ ζε γιψζζα nesc είλαη: LedsP.Init <-PlatformLedsC.Init; Μέρξη ηψξα έρνπκε εμεγήζεη ηα δχν components ηεο nesc θαη ζα ζέιακε λα αλαθέξνπκε κηα αθφκε δπλαηφηεηα κηαο δεζκεπκέλεο ιέμεο πνπ κπνξεί λα ρξεζηκνπνηεζεί ζηα modules θαη ηα configurations, ε ιέμε είλαη ε as. Η δεζκεπκέλε ιέμε as ρξεζηκνπνηείηαη ζηα components δίλνληαο ηελ δπλαηφηεηα λα κπνξνχκε λα δψζνπκε έλα ελαιιαθηηθφ φλνκα ζε έλα interface, απηφ γίλεηαη γηα δχν ιφγνπο: a. Κάλνπκε ην θψδηθα πην επαλάγλσζην. b. Καη, δεχηεξν θαη πην ζεκαληηθφ, είλαη ν ηξφπνο ηεο γιψζζαο λα κπνξεί λα μερσξίζεη δηάθνξα ζηηγκηφηππα ηνπ ίδηνπ interface πνπ ρξεζηκνπνηνχληαη ζην ίδην component. Με έλα παξάδεηγκα ε ρξήζε ηεο as, ε ιέμε ζα γίλεη πην θαηαλνεηή. module BlinkC configuration BlinkAppC { { uses } { implementation interface Boot; { interface Leds; components MainC, LedsC, BlinkC, new TimerMilliC(); interface components new 46 TimerMilliC as mytimer0; Timer<TMilli> as Timer0; interface components new TimerMilliC as mytimer1; Timer<TMilli> as Timer1; } } BlinkC.Boot -> MainC.Boot; implementation BlinkC.Leds -> LedsC.Leds; { BlinkC.Timer0 -> mytimer0; event void Boot.booted() BlinkC.Timer1 -> mytimer1; { } call Timer0.startPeriodic( 250 ); call Timer1.startPeriodic( 500 ); } event void Timer0.fired() { 46 Παξαηεξνχκε λα γίλεηαη ρξήζε ηεο δεζκεπκέλεο ιέμεο new, απηφ γίλεηαη δηφηη ην TimerMilliC είλαη έλα generic component ην νπνίν θαη ζα αλαιχζνπκε πην θάησ ηη είλαη. 48

59 call Leds.led0Toggle(); } event void Timer1.fired() { call Leds.led1Toggle(); } } Βιέπνπκε ζηελ ππνγξαθή ηνπ BlinkC φηη ρξεζηκνπνηείηαη ε as, ην πξψην πνπ πεηχρακε είλαη λα θάλνπκε ησλ θψδηθα πην επαλάγλσζην (ην Timer0 θαη Timer1 ζε κηα ηφζν απιή εθαξκνγή δελ ιέεη θαη ηίπνηα άιια ζε κηα κεγαιχηεξε εθαξκνγή πνπ ίζσο λα είρε αξθεηά ξνιφγηα ζα βνεζνχζε έλα ζπγθεθξηκέλν φλνκα). Γεχηεξν, αλ δελ ππήξρε απηή ε δπλαηφηεηα ηεο γιψζζαο ηφηε δελ ζα κπνξνχζακε λα μερσξίζνπκε ηα δχν ζηηγκηφηππα ηνπ ίδηνπ interface ην Timer0 θαη ην Timer1. Παξαηεξνχκε φηη ζην configuration component ε θάζε αλαθνξά ζηα interface ηνπ module πξέπεη λα γίλεηαη κε ην λέν φλνκα. Δπίζεο ε as ρξεζηκνπνηείηαη θαη ζηα configurations γηα ηνπο ίδηνπ ιφγνπο. Σν πην πάλσ πξφγξακκα απνηειεί κηα απφ ηηο πην απιέο εθαξκνγέο ζηελ nesc θαη πην θάησ αθνινπζεί ε επεμήγεζε ηεο: Όηαλ ν θφκβνο ηειεηψζεη κε ην booting εγείξεηαη ην event booted(). ην event απηφ κέζν ησλ interface Timer0 θαη Timer1 θαινχκε ηα commands 47 startperiodic, νη νπνίεο παίξλνπλ φξηζκα θάπνηνπο αξηζκνχο νη νπνίνη εθθξάδνπλ, ζε ms, θάζε πφζν ζα εγείξεηαη ην event fired() ησλ interface Timer0 θαη Timer1. Έηζη θάζε 250 θαη 500 ms ην event fired() ηνπ Timer0 θαη Timer1, αληίζηνηρα, ζα εγείξεηαη. Όηαλ ζπκβαίλεη απηφ ζα θαιείηαη απφ ην interface Leds ε commands led0toggle() θαη led1toggle() πνπ ζηελ νπζία ζα αλάβνπλ ε ζα ζβήλνπλ ην led 0 θαη 1 αληίζηνηρα. 4. Generic Components: Όια ηα components ζεσξνχληαη κνλαδηθά (singletons) είλαη δειαδή κηα κνλαδηθή νληφηεηα ζε φιν ην namespace ηνπ πξνγξάκκαηνο, φια ηα configurations πνπ αλαθέξνληαη ζε έλα component, φια αλαθέξνληαη ζην ίδην component ζην ίδην θνκκαηί θψδηθα (παξφκνην κε κηα static Class ζε C++ ή Java). Απηφ ίζρπε ζην tinyos 1.x. ην tinyos 2.x πξνζηέζεθαλ ηα generic components απφ ηα νπνία κπνξνχκε λα δεκηνπξγήζνπκε ζηηγκηφηππα ηνπ ίδηνπ component ρξεζηκνπνηψληαο ηελ δεζκεπκέλε ιέμε new. Σα generic components δέρνληαη θαη παξακέηξνπο(strings, αξηζκνχο θαη φηη παξακέηξνπο παίξλνπλ ηα interface). Η δήισζε generic component γίλεηαη ρξεζηκνπνηψληαο ηελ ιέμε generic : generic configuraration TimerMilliC{..} ή generic module VirtualizeTimerC() Τπάξρνπλ generic modules θαη generic configurations. Σα generic modules είναι επανασπηζιμοποιούμενο κομμάηια εκηελέζιμος κώδικα, ηα generic configurations 47 Η δεζκεπκέλε ιέμε call αθνινπζείηαη πάληα απφ commands. 49

60 είναι επανασπηζιμοποιήζιμο ζύνολο ζσέζευν πος διαμοπθώνοςν μια τηλού επιπέδος αθαίπεζη (abstraction). 5. Tasks: Η έλλνηα ηνπ task έρεη ήδε εμεγεζεί ζηελ πεξηγξαθή ηνπ tinyos. ε απηφ ην ζεκείν ζα εμεγήζνπκε πσο κέζν ηεο nesc κπνξνχκε λα ρξεζηκνπνηήζνπκε tasks. Σα tasks δειψλνληαη (declare) ζην implementation ηνπ module σο εμήο: task void taskname(); Έλα task πάληα επηζηξέθεη void θαη πνηέ δελ δέρεηαη παξακέηξνπο. ηελ ζπλέρεηα ην task νξίδεηαη (define) σο εμήο: task void taskname() { //εδψ κπαίλεη ν θψδηθάο πνπ θαζνξίδεη ηελ ιεηηνπξγία ηνπ task //θαη ηέινο ην task φηαλ ηειεηψζεη εγείξεη ην γεγνλφο φηη ηειεηψζε //κε ηνλ πην θάησ θψδηθα signal tasknamedone(); } Γηα λα θαιέζεη θάπνηα command ή event έλα task ζα πξέπεη λα ρξεζηκνπνηήζεη ηελ δεζκεπκέλε ιέμε post. Η post βάδεη ζηελ ζηνίβα ηνπ ρξνλνπνγξακκαηηζηή ην task θαη εθηειείηαη φηαλ πξέπεη (βιέπε εμήγεζε task ζην tinyos). Η εληνιή είλαη σο εμήο: post taskname(); Δπηζηξέθεη SUCCESS εάλ ην ζπγθεθξηκέλν task δελ ππάξρεη ζην task queue ( ε ζηνίβα ηνπ ρξνλνπνγξακκαηηζηή) θαη FAIL εάλ ππάξρεη ζηελ ζηνίβα θαη δελ έρεη αθφκε εθηειεζζεί. Όπσο αλαθέξακε θαη πην πάλσ ηα tasks είλαη non-preemptive (είλαη αδηάθνπεο δηεξγαζίεο, κπνξνχλ λα δηαθνπνχλ κφλν απφ αζχγρξνλα events) άξα δελ πξέπεη λα μερλάκε φηη πξέπεη λα είλαη κηθξά γηα λα κελ δεζκεχνπλ ηνλ επεμεξγαζηή γηα αξθεηφ ρξφλν. 6. Async ζπλαξηήζεηο θαη atomic statement: Όπσο έρνπκε αλαθέξεη ηα tasks είλαη non-preemptive απηφ ζα κπνξνχζε λα πξνθαιέζεη πνιιά πξνβιήκαηα, γηα απηφ θαη κέζσ ηεο nesc δίλεηαη ε δπλαηφηεηα ζηνλ πξνγξακκαηηζηή λα δεκηνπξγήζεη ζπλαξηήζεηο αζχγρξνλεο ε νπνίεο αλ ρξεηαζηεί ζηακαηάλε ηα tasks γηα λα εθηειεζζνχλε. Η ζχληαμε ηνπο είλαη απιή, βάδνπκε κπξνζηά απφ ηελ ζπλάξηεζε ηελ δεζκεπκέλε ιέμε async γηα παξάδεηγκα γξάθνπκε ην AsyncStdControl interface απφ ηελ βηβιηνζήθε ηνπ tinyos: interface AsyncStdControl { async command error_t start(); async command error_t stop(); Η ρξήζε ηεο async ιέμεο δειψλεη φηη νη εληνιέο ηνπ interface AsyncStdControl, είλαη αζχγρξνλεο, άξα φηαλ θάπνηνο ηηο θαιέζεη έρνπλ πξνηεξαηφηεηα έλαληη ησλ 50

61 } tasks θαη φισλ ησλ ππφινηπσλ δηεξγαζηψλ ρακειφηεξεο πξνηεξαηφηεηαο. Σα atomic statements θηηάρηεθαλ γηα λα δίλνπλε ζην ρξήζηε ηελ δπλαηφηεηα πξνζηαζίαο κεηαβιεηψλ πνπ είλαη πξνζβάζηκεο απφ αζχγρξνλεο δηεξγαζίεο. Γηα παξάδεηγκα αλ κηα αζχγρξνλε δηαδηθαζία κεηξάεη κηα ηηκή, ηελ απνζεθεχεη ζηελ κεηαβιεηή myvalue θαη κεηά θαιεί κηα ζχγρξνλε δηαδηθαζία ( πρ tasks) ε νπνία αλαιακβάλεη λα ζηείιεη ην απνηέιεζκα ζε έλα άιιν θφκβν, αλ αθξηβψο πξηλ ηελ απνζηνιή πξνθχπηεη θαη πάιη ε αζχγρξνλε δηαδηθαζία ηφηε ε myvalue παίξλεη άιιε ηηκή θαη ε ζχγρξνλε δηαδηθαζία ζα ζηείιεη απηή ηελ ηηκή ( 2 θνξέο, κηα γηα ηελ πξψηε πνπ δηαθφπεθε θαη κηα γηα ηελ δεχηεξε θνξά, παξφκνην πξφβιεκα δεκηνπξγνχλ ηα threads ζε έλα multithreading ιεηηνπξγηθφ φπνπ ε αληηκεηψπηζε γίλεηαη, ζπλήζσο, κε ζεκαθφξνπο). Υξεζηκνπνηψληαο ην statement atomic κπξνζηά απφ ηελ/ηηο κεηαβιεηή/ηεο απνθεχγνπκε απηφ ην πξφβιεκα, ε ζχληαμε είλαη: atomic myvalue=getvalue(); ή atomic { myvalue1 = getvalue1(); myvalue2 = getvalue2(); } 7. Άιια ραξαθηεξηζηηθά: a. Σχπνη δεδνκέλσλ ηελ nesc ρξεζηκνπνηνχληαη νη ζπγθεθξηκέλνη ηχπνη δεδνκέλσλ: bits Signed int8_t int16_t int32_t int64_t unsigned uint8_t uint16_t uint32_t uint64_t Δπίζεο κπνξεί λα ρξεζηκνπνηεζεί θαη ηχπνο bool θαη φινη νη ηχπνη δεδνκέλσλ ηεο C 48. b. Internal functions Όπσο έρνπκε αλαθέξεη ε nesc είλαη δηάιεθηνο ηεο C άξα ε ζχληαμε θαη ε ρξήζε φισλ ησλ δπλαηνηήησλ ηεο C είλαη δπλαηή ζε έλα nesc πξφγξακκα. 48 Παξφιν πνπ επηηξέπεηαη ε ρξήζε ηχπσλ δεδνκέλσλ ηεο C, δελ ζπζηήλεηαη δηφηη γηα παξάδεηγκα ν ηχπνο int ζε κηα πιαηθφξκα κπνξεί λα είλαη 32 bits ζε κηα άιιε 16bits, κε απνηέιεζκα ηελ κείσζε ηεο γεληθφηεηαο ηνπ θψδηθα. 51

62 Μηα δπλαηφηεηα ζηελ C είλαη ε δήισζε θαη ε ρξήζε ζπλαξηήζεσλ. Σέηνηνπ είδνπο ζπλαξηήζεηο κπνξνχκε λα ρξεζηκνπνηήζνπκε ζην implementation ηνπ module κε ηελ ίδηα ζχληαμε. Όηαλ ζέινπκε λα θαιέζνπκε ηελ ζπλάξηεζε γίλεηαη κε ηνλ ίδην ηξφπν φπσο ζηε C, δειαδή απιά γξάθνληαο ην φλνκα ηεο ζπλάξηεζεο (κελ ζπγρχδεηαη κε ηηο commands πνπ ρξεηάδνληαη ηελ ιέμε call) θαη φηη παξακέηξνπο δέρεηαη Σύνοψη Μηα κηθξή ζχλνςε ησλ βαζηθψλ ζηνηρεηψλ ηεο nesc πηζηεχνπκε φηη είλαη αλαγθαία. Η nesc, σο γιψζζα πξνγξακκαηηζκνχ tinyos εθαξκνγψλ, απνηειείηαη απφ components ζπγθεθξηκέλα έρνπκε δχν components ηα modules θαη ηα configurations. Καη ηα δχν έρνπλ ηελ ίδηα δνκή απνηεινχληαη απφ δχν κέξε ην πξψην κέξνο απνηειεί ηελ signature (ππνγξαθή) ηνπ component θαη ην δεχηεξν κέξνο ην implementation (εθαξκνγή): MODULE CONFIGURATION 1 ο Μέπορ: module modulenamec configuration modulenameappc { } {} 2 ο Μέπορ: implementation Implementation { } { } Ο βαζηθφο κεραληζκφο επηθνηλσλίαο κεηαμχ ησλ components (modules) γίλεηαη κέζν interfaces έλα component κπνξεί λα είλαη user (ρξήζηεο) ή provider (πάξνρνο) θάπνηνπ interface. Κάζε interface απιά δειψλεη commands θαη events. Η πινπνίεζε ησλ commands ηνπ interface είλαη επζχλε ηνπ provider θαη ε πινπνίεζε ησλ events ηνπ interface είλαη επζχλε ηνπ user. Σν module component είλαη ε θαξδία ηεο θάζε εθαξκνγήο είλαη ζαλ ηελ main() ζε έλα C πξφγξακκα. Σν configuration component είλαη ππεχζπλν γηα ην wiring ησλ components, δειαδή εάλ ην module A ρξεζηκνπνηεί έλα interface πνπ παξέρεηαη απφ ην component B ηφηε ζην configuration ζα ππάξρεη θαη κηα γξακκή θψδηθα: A.interface -> B.interface; Έρνληαο πάληα ππφςε φηη ε θνξά ηνπ βέινπο είλαη απφ ηνλ user ζην provider Σχηματικό απεικόνιςη tinyos εφαρμογών Οη ζρεδηαζηέο ηεο nesc πξνζθέξνπλ κηα ζρεκαηηθή απεηθφληζε ησλ components ησλ modules θαη configurations γηα λα θάλνπλ πην επαλάγλσζηε κηα εθαξκνγή. Η απεηθφληζε έρεη θάπνηνπο βαζηθνχο θαλφλεο: Σχόματα 1. singleton Generic 52

63 module configuration 2. interface wiring Αμίδεη λα αλαθέξνπκε φηη εάλ ην component ρξεζηκνπνηεί (είλαη user) έλα interface ηφηε ε θνξά ηνπ βέινπο ζα είλαη απφ ην ρξήζηε ηνπ interface πξνο ην interface πνπ ρξεζηκνπνηεί θαη αλ ην component παξέρεη έλα interface ηφηε ε θνξά ηνπ βέινπο ζα είλαη απφ ην interface πξνο ην component πνπ παξέρεη ην interface. Πνην θάησ ζα παξνπζηάζνπκε έλα παξάδεηγκα ηνπ νπνίνπ ηνλ θψδηθα γξάςακε πην πάλσ θαη νλνκάδεηαη BlinkC: 53

64 Δικόνα 22 - Γιάγπαμμα ηηρ εθαπμογήρ BlinkC Δικόνα 23 - Γιάγπαμμα ηηρ MainC 54

65 4 Εφαρμογή 4.1 Ειςαγωγό Μηα απφ ηηο πνιιέο εθαξκνγέο ησλ αζχξκαησλ δηθηχσλ αηζζεηήξσλ έρεη λα θάλεη κε ηηο θπηηθέο θαιιηέξγεηεο. Μηα ζχγρξνλε θαιιηέξγεηα κπνξεί λα δψζεη ζηνλ αγξφηε ηελ δπλαηφηεηα φρη κφλν λα παξαθνινπζεί ζεκαληηθέο αιιαγέο ζην πεξηβάιινλ αιιά θαη λα απηνκαηνπνηήζεη ζπγθεθξηκέλεο ιεηηνπξγίεο. Η δηθή καο εθαξκνγή πνπ θηηάμακε ζα παξαθνινπζεί ηελ πγξαζία ζην ρψκα ζε θνκβηθά ζεκεία ηεο θαιιηέξγεηαο θαη κέζν ελφο αζχξκαηνπ δηθηχνπ νη πιεξνθνξίεο ζα ζπγθεληξψλνληαη ζε έλα ππνινγηζηή ν νπνίνο κε ην θαηάιιειν πξφγξακκα ζα παξνπζηάδεη ηα επίπεδα πγξαζίαο ζην ρψκα. Σν πξφγξακκα έρεη ηελ ηθαλφηεηα λα ελεξγνπνηεί ην απηφκαην πφηηζκα φηαλ ηα επίπεδα πγξαζίαο πέθηνπλ θάησ απφ έλα ζπγθεθξηκέλν φξην. Η εθαξκνγή δνπιεχεη σο εμήο: Οη θφκβνη «αηζζάλνληαη» ηα επίπεδα πγξαζίαο ζηελ πεξηνρή ηνπο θαη κεηά απφ 10 κεηξήζεηο ζηέιλνπλ έλα παθέην κε ηηο κεηξήζεηο. ηελ ζπλέρεηα έλαο ζηαζκφο βάζεο (base station) ζπγθεληξψλεη ηα παθέηα θαη ηα πεξλά ζηνλ ππνινγηζηή κε ηνλ νπνίν είλαη δηαζπλδεδεκέλνο. Ο ππνινγηζηήο δνπιεχεη σο αλακεηαδφηεο, δηαβάδεη ηα παθέηα απφ ην base station θαη ηα κεηαδίδεη ζε έλα client κέζν TCP/IP sockets. Ο client είλαη ην user interface φπνπ δηαβάδεη ηα παθέηα, ηα εξκελεχεη, παξνπζηάδεη αλαγλσξίζηκα δεδνκέλα ζηνλ ρξήζηε θαη φηαλ ρξεηαζηεί ελεξγνπνηεί ην απηφκαην πφηηζκα. 4.2 Αιςθητόρεσ - Υγραςύα Δικόνα 24 - Γπαθική αναπαπάζηαζη ηηρ εθαπμογήρ Υγραςύα Πξηλ αλαθέξνπκε νηηδήπνηε γηα ηελ εθαξκνγή ζεσξήζακε θαιφ λα αλαθεξζνχκε γεληθά γηα ηελ πγξαζία αθνχ απηφ ζα είλαη ην κέγεζνο πνπ ζα παξαθνινπζνχκε. Τγξαζία νλνκάδνπκε ηελ παξνπζία πδξαηκψλ ζηελ αηκφζθαηξα νη νπνίνη πξνθχπηνπλ απφ ηελ 55

66 εμάηκηζε πγξψλ επηθαλεηψλ. Η κέηξεζε ηεο πγξαζίαο γίλεηαη σο «ζρεηηθή πγξαζία» ή «απφιπηε πγξαζία». 1. Απόιπηε πγξαζία: Δίλαη ε πνζφηεηα πδξαηκψλ, ζε γξακκάξηα, πνπ πεξηέρνληαη ζε έλα θπβηθφ κέηξν αηκνζθαηξηθνχ αέξα. Καη ππνινγίδεηαη απφ ηνλ ηχπν: Η πγξαζία είλαη πνζφηεηα άξξεθηα ζπλδεδεκέλε κε ηελ ζεξκνθξαζία, αθνχ γηα ζπγθεθξηκέλε ζεξκνθξαζία ππάξρεη έλα ζπγθεθξηκέλν φξην απφιπηεο ζεξκνθξαζίαο ην φπνην φζν ε ζεξκνθξαζία παξακέλεη ζηαζεξή δελ κπνξεί λα μεπεξαζηεί. Απηή ε ζρέζε θαίλεηαη ζηελ εμίζσζε ησλ August Roche - Magnus: 2. Σρεηηθή πγξαζία: Δίλαη ν ιφγνο ηεο πνζφηεηαο ησλ πδξαηκψλ πνπ πεξηέρνληαη ζε κηα ζπγθεθξηκέλε πνζφηεηα αηκνζθαηξηθνχ αέξα πξνο ην ιφγν ησλ πδξαηκψλ πνπ πεξηέρνληαη ζηελ ίδηα πνζφηεηα θνξεζκέλνπ (100% πγξαζία) αηκνζθαηξηθνχ αέξα ππφ ηελ ίδηα πίεζε θαη ζεξκνθξαζία. Άξα πξνθχπηεη ν πην θάησ ηχπνο: Τγπόμεηπο Σν πγξφκεηξν είλαη έλα φξγαλν πνπ ρξεζηκνπνηείηαη γηα ηελ κέηξεζε ηεο πεξηεθηηθφηεηαο ηνπ αέξα ζην πεξηβάιινλ ζε πγξαζία. Η κέηξεζε ηεο πγξαζίαο είλαη κηα δχζθνιε δηαδηθαζία θαη δελ κπνξεί λα κεηξεζεί κε απφιπηε αθξίβεηα. Οη πεξηζζφηεξεο ζπζθεπέο γηα λα κεηξήζνπλ ηελ πγξαζία βαζίδνληαη ζε κεηξήζεηο άιισλ πνζνηήησλ πνπ είλαη απνηέιεζκα ηεο πγξαζίαο, φπσο γηα παξάδεηγκα ε ζεξκνθξαζία, ε πίεζε, ε κάδα, κεραληθή ή ειεθηξηθή αιιαγή πνπ πξνθαιείηαη ζε έλα πιηθφ φηαλ απνξξνθά πγξαζία. Η αλαθάιπςε ηνπ πγξφκεηξνπ έγηλε ην 1783 απφ ηνλ Διβεηφ γεσιφγν Saussure ν νπνίν βαζηζκέλνο ζηελ ηδηφηεηα ηεο αλζξψπηλεο ή ηεο ηξίραο αιφγνπ ε νπνία κεηαβάιιεη ην κήθνο ηεο ζπλαξηήζεη ηεο ζπγθέληξσζεο πγξαζίαο. Όηαλ κηα ηξίρα ηνπνζεηεζεί ζε έλα πεξηβάιινλ κε κεγάιε ζπγθέληξσζε πγξαζίαο απνξξφθα έλα πνζνζηφ θαη ην κήθνο ηεο απμάλεηαη, αλ κεηαθέξνπκε ηελ ηξίρα ζε έλα πην μεξφ πεξηβάιινλ ην λεξφ πνπ απνξξφθεζε ε ηξίρα εμαηκίδεηαη θαη ην κήθνο ηεο κηθξαίλεη. Με βάζε απηή ηελ ηδηφηεηα θαηαζθεπαζηήθαλ θαη ηα πξψηα πγξφκεηξα. Μεξηθά είδε πγξφκεηξσλ παξαηίζεληαη πην θάησ: 1. Σχπνπ ζπεηξψλ κεηάιινπ/ραξηηνχ 2. Τγξφκεηξν ηξίραο 56

67 3. Ζιεθηξνληθά πγξόκεηξα: 3.1. Τγπόμεηπο Αλλςαπ Δικόνα 25 - Τγπόμεηπο ηπίσαρ Σν ζεκείν δξφζνπ (ζεξκνθξαζία πνπ πγξνπνηνχληαη νη πδξαηκνί) είλαη ε ζεξκνθξαζία θαηά ηελ νπνία έλα κέξνο πδξαηκψλ ζε ζηαζεξή πίεζε θηάλεη ζην θνξεζκφ (δελ κπνξεί λα ππάξμεη κεγαιχηεξε πεξηεθηηθφηεηα χδαηνο ζηνλ αέξα). ε απηή ηελ ζεξκνθξαζία, θνξεζκνχ, ε πεξαηηέξσ ςχμε έρεη σο απνηέιεζκα ηελ ζπκπχθλσζε ηνπ λεξνχ. Με βάζε ηελ πην πάλσ κηθξή εηζαγσγή ζα αλαθεξζνχκε ζε έλα ηχπν πγξνκέηξσλ πνπ είλαη απφ ηα πην αθξηβή πνπ ππάξρνπλ θαη είλαη ηα chilled mirror dew point γλσζηά θαη σο πγξφκεηξα Αιιπαξ. Σν πγξφκεηξν Αιιπαξ απνηειείηαη απφ έλα νξζνγψλην κεηαιιηθφ δνρείν ζην νπνίν πεξηέρεηαη αηζέξαο. Όηαλ ν αηζέξαο εμαηκίδεηαη, κε πξφζθπζε ξεχκαηνο αέξνο, πξνθαιεί ηελ απφςπμε ησλ ηνηρσκάησλ ηνπ δνρείνπ κε απνηέιεζκα λα εκθαληζηνχλ ζηελ επηθάλεηα ηνπ ζηαγνλίδηα δξφζνπ. Η αλαινγία απηψλ πξνζδηνξίδεη θαη ην πνζνζηφ ηεο πγξαζίαο. Δικόνα 26 Τγπόμεηπο ηύπος Αλλςαπ Σν πξφβιεκα κε ηα πγξφκεηξα ηχπνπ Αιιπαξ είλαη φηη ρξεηάδνληαη ζπρλά λα θαζαξίδνληαη, λα βαζκνλνκνχληαη ζπρλά θαη ρξεηάδνληαη εμεηδηθεπκέλνπο ρξήζηεο. 57

68 3.2. Υγξόκεηξν ειεθηξηθήο ρσξεηηθόηεηαο: Σα πγξφκεηξα απηνχ ηνπ ηχπνπ είλαη θζελά θαη βαζίδνληαη ζηελ ηδηφηεηα θάπνησλ πιηθψλ λα κεηαβάιινπλ ηε δηειεθηξηθή ζηαζεξά ηεο. Σεο είλαη γλσζηφ ηεο ππθλσηήο απνηειείηαη απφ δχν αγψγηκα πιηθά πνπ κεηαμχ ηνπο παξεκβάιιεηαη δηειεθηξηθφ (κνλσηήο), ε ρσξεηηθφηεηα ηνπ ππθλσηή εμαξηάηαη άκεζα απφ ηελ δηειεθηξηθή ζηαζεξά ηνπ κνλσηή ηνπ ππθλσηή σο εθ ηνχηνπ θαη ε ρσξεηηθφηεηα ζα εμαξηάηαη άκεζα απφ ηελ πγξαζία ζην πεξηβάιινλ πνπ βξίζθεηαη ν ππθλσηήο. πλήζσο απηνχ ηνπ ηχπνπ ηα πγξφκεηξα έρνπλ κηα αθξίβεηα ησλ +/- 2% RH ζην δηάζηεκα 5-95%. Σέηνηνπ είδνπο πγξφκεηξα είλαη αλαίζζεηα ζε θαηλφκελα ζπκπχθλσζεο θαη πξνζσξηλά πςειέο ζεξκνθξαζίεο. Δικόνα 27 Τγπόμεηπο ηλεκηπικήρ συπηηικόηηηαρ 3.3. Υγξόκεηξν ειεθηξηθήο αληίζηαζεο: Η ειεθηξηθή αληίζηαζε ησλ πιηθψλ ηείλεη λα κεηαβάιιεηαη κε βάζε ηελ πγξαζία ζην πεξηβάιινλ ηνπο. Απηή ε κεηαβνιή είλαη αλάινγε ηνπ πνζνζηνχ πγξαζίαο ην νπνίν θαη κεηξνχκε. Οη αηζζεηήξεο πνπ αληηιακβάλνληαη απηέο ηηο κεηαβνιέο είλαη ιηγφηεξν αθξηβείο απφ ηνπο αηζζεηήξεο πνπ κεηξάλε ηελ κεηαβνιή ρσξεηηθφηεηαο. Έλα άιιν πξφβιεκα πνπ πξνθχπηεη είλαη φηη ε αληίζηαζε ελφο πιηθνχ εμαξηάηαη ζε κεγάιν πνζνζηφ θαη απφ ηελ ζεξκνθξαζία θαη είλαη δχζθνιν λα μέξνπκε αλ ε κεηαβνιή έγηλε ιφγν πγξαζίαο ή ιφγν ζεξκνθξαζίαο. πλήζσο έρνπλ κηα αθξίβεηα ηεο ηάμεο ησλ +/- 3%RH. Δικόνα 28 - Τγπόμεηπο ηλεκηπικήρ ανηίζηαζηρ 58

69 3.4. Υγξόκεηξν ζεξκηθήο αγσγηκόηεηαο: Οη αηζζεηήξεο κεηξάλε ηελ ζεξκηθή αγσγηκφηεηα ηνπ αέξα ε νπνία εμαξηάηαη απφ ην πνζνζηφ πγξαζίαο ζηνλ αέξα. Απηή ε αηζζεηήξεο κεηξάλε απφιπηε πγξαζία θαη φρη ζρεηηθή (βιέπε ππνθεθάιαην Τγξαζία). Δικόνα 29 - Τγπόμεηπο θεπμικήρ αγυγιμόηηηαρ Αιςθητόρασ Ο αηζζεηήξαο HIH3610 πνπ ζα ρξεζηκνπνηήζνπκε ζηελ πην θάησ εθαξκνγή κεηξάεη ζρεηηθή πγξαζία. Δικόνα 30 - Αιζθηηήπαρ ςγπαζίαρ (HIH3610) Ο αηζζεηήξαο πνπ ρξεζηκνπνηεί είλαη βαζίδεηαη ζηελ κεηαβνιή ηεο ειεθηξηθήο ρσξεηηθφηεηαο ηνπ εζσηεξηθνχ ππθλσηή. Απηφ έρεη σο απνηέιεζκα ν αηζζεηήξαο λα κελ επεξεάδεηαη απφ ζθφλε, βξσκηά, ιάδηα θαη γεληθά θνηλά πεξηβαιινληηθά ζηνηρεία. Πην θάησ ζα αλαθέξνπκε κεξηθά απφ ηα πην βαζηθά ηερληθά ραξαθηεξηζηηθά ηνπ: 59

70 1. Αθξίβεηα: ±2% RH Φξόλνο απόθξηζεο: Υξεηάδεηαη πεξίπνπ 15 secs (ζε «ρακειή» θίλεζε αέξα ζηνπο 25 βαζκνχο θειζίνπ). 3. Τάζε ιεηηνπξγίαο: 4Vdc 5,8Vdc (ν αηζζεηήξαο είλαη εξγνζηαζηαθά βαζκνλνκεκέλν ζηα 5Vdc). 4. Τάζε εμόδνπ: Δίλαη αλάινγε ηεο πγξαζίαο θαη κε βάζε ηνλ πην θάησ ηχπν ζα ππνινγίδνπκε ηελ πγξαζία ζην ρψξν: Ο αηζζεηήξαο επεξεάδεηαη απφ ηελ ζεξκνθξαζία ηνπ πεξηβάιινληνο έηζη εάλ ζέινπκε λα έρνπκε αθξίβεηα ζηελ κέηξεζε ζα πξέπεη λα ρξεζηκνπνηήζνπκε ηνλ πην θάησ ηχπν (T = ζεξκνθξαζία ζε βαζκνχο θειζίνπ): Γηα ζεξκνθξαζία Σ = 25 ν C (ζεξκνθξαζία πεξηβάιινληνο) ν πην πάλσ ηχπνο δίλεη πεξίπνπ 1, άξα γηα ζεξκνθξαζία πεξηβάιινληνο έρνπκε: θαη αλακέλνπκε ε έμνδνο ηνπ αηζζήηεξα λα αθνινπζεί ηελ πην θάησ γξαθηθή παξάζηαζε. 4,5 4 3,5 3 2,5 2 1,5 1 0,5 0 Σάση εξόδου συναρτήσει RH Vout 49 RH relative humidity: ζρεηηθή πγξαζία. 60

71 4.3 Προγραμματιςμόσ Κόμβοι ην πξψην κέξνο ζα πξέπεη λα γξάςνπκε ζε nesc ην πξφγξακκα πνπ ζα ηξέρνπλε νη θφκβνη. Οη θφκβνη ζα είλαη ηεο εηαηξείαο Crossbow θαη ζα είλαη ην telosb θαη tmote. Σν πξφγξακκα ζπιιέγεη απφ κηα αλαινγηθή είζνδν κεηξήζεηο 16bit θαη θάζε 10 κεηξήζεηο ζηέιλεη ην παθέην κε ηειηθή θαηεχζπλζε ην base station. Γηα ην module component πξνηηκήζακε λα ρξεζηκνπνηήζνπκε κηα stable εθαξκνγή πνπ παξέρεηαη απφ ην tinyos θαη είλαη ε εθαξκνγή Oscilloscope.nc (tinyos-2.1.1/apps/oscilloscope). Ο πην θάησ πίλαθαο δείρλεη γξαθηθά ην παθέην (γλσζηφ ζε tinyos πεξηβάιινλ σο message_t) πνπ ζηέιλεη θάζε θφκβνο φηαλ ζπκπιεξψζεη NREADINGS ( 10 κεηξήζεηο). 61

72 Δικόνα 31 - message_t 62

73 1. Module Component OscilloscopeC.nc #include Timer.h #include Oscilloscope.h module OscilloscopeC { uses { interface Boot; interface SplitControl as RadioControl; interface AMSend; interface Receive; interface Timer<TMilli>; interface Read<uint16_t>; interface Leds; } } implementation { Μεηαβιεηέο: message_t sendbuf; bool sendbusy; oscilloscope_t local; uint8_t reading; bool suppresscountchanges; 63 Βαζηθέο βηβιηνζήθεο φπνπ δίλνπλ: NREADINGS = 10 DEFAULT_INTERVAL = 256 Η signature ηνπ component καο δίλεη ην φλνκα ηνπ θαη φια ηα interface πνπ ρξεζηκνπνηεί. Interfaces: Boot -> παξέρεη ην event Booted ην νπνίνη ζεκαηνδνηεί ηελ ιήμε ηνπ booting. SplitControl ->ην ζπγθεθξηκέλν interface ρξεζηκνπνηείηαη γηα power management φηαλ νη ρξφλνη power on θαη power off κηαο ζπζθεπήο δελ είλαη ακειεηένη. Παξέρεη εληνιέο start(), stop() θαη events startdone() θαη stopdone() αληίζηνηρα. AMSend -> Δίλαη interface γηα απνζηνιή παθέησλ. Παξέρεη 4 commands ( send(), cancel(), maxpayloadlength(), getpayload()) θαη έλα event ( senddone()). Receive -> Δίλαη interface γηα λα παξαιακβάλεη παθέηα. Παξέρεη 2 commands ( getpayload(), payloadlength()) θαη έλα event (receive()) Timer<precision_tag> -> Δίλαη interface γηα ρξνληθέο ιεηηνπξγίεο. Παξέρεη 3 basic commands (startperiodic(), startoneshot(), stop()) θαη 7 advance commands. Δπίζεο παξέρεη έλα event (fired()). Read<uint16_t> ->Σν interface ρξεζηκνπνηείηαη γηα λα δηαβάζνπκε ηελ αλαινγηθή είζνδν απφ ην U2 expansion controller ηνπ telosb (γηα λα δηαβάζνπκε ηελ αλαινγηθή είζνδν θαη νρί έλα DemoSensor φπσο γίλεηαη ζηελ πξαγκαηηθή εθαξκνγή πνπ ππάξρεη ζην tinyos εμαξηάηαη πνηνο ζα είλαη o provider ηνπ Read interface ζην configuration component). Leds -> Interface πνπ ρξεζηκνπνηείηαη γηα ηνλ έιεγρν ησλ leds ηεο πιαηθφξκαο. sendbuf : δνκή ηχπνπ nx_struct message_t θαη νξίδεηαη ζην message.h (tinyos-2.1.1/tos/types) είλαη ε βαζηθή δνκή ησλ παθέησλ απνζηνιήο ηνπ tinyos sendbusy: κηα απιή bool κεηαβιεηή γηα λα θαζνξίδεη εάλ γίλεηαη απνζηνιή νπνηαδήπνηε ζηηγκή. local: κηα δνκή ηχπνπ oscilloscope_t ε νπνία νξίδεηαη ζην Oscilloscope.h. Καη πεξηέρεη ηα πεδία: version, interval, id, count, readings[nreadings](ηα πεδία ηεο local struct κπνξνχκε λα ηα δνχκε θαη ζηελ πξνεγνχκελε εηθφλα πνπ απεηθνλίδεη ην message_t θαη ζπγθεθξηκέλα ην payload ηνπ message_t είλαη ηα πεδία ηεο local) reading: κεηξάεη πφζα readings έγηλε θαη θάζε NREADINGS γίλεηαη απνζηνιή.

74 suppresscountchanges: ρξεζηκνπνίεηηαη γηα λα γίλεηαη κηα απιή κνξθή time synchronization. void report_problem() { call Leds.led0Toggle(); } void report_sent() { call Leds.led1Toggle(); } void report_received() { call Leds.led2Toggle(); } void starttimer() { call Timer.startPeriodic(local.interval); reading = 0; } event void Boot.booted() { local.interval = DEFAULT_INTERVAL; local.id = TOS_NODE_ID; if(call RadioControl.start()!= SUCCESS) { report_problem(); } } event void RadioControl.startDone(error_t error) { starttimer(); } event void RadioControl.stopDone(error_t error) { //do nothing } event void Timer.fired() { if(reading == NREADINGS) { if(!sendbusy && sizeof local Internal Functions: Απιέο ζπλαξηήζεηο ηηο C, ε θάζε ζπλάξηεζε είλαη ππεχζπλε λα «αλαθέξεη» ηελ θαηάζηαζε ηνπ θφκβνπ: report_problem() -> αλ ππάξρεη πξφβιεκα θάπνπ θαιείηαη ε ζπλάξηεζε ε νπνία είλαη ππεχζπλε λα ην δείμεη ζην ρξήζηε αιιάδνληαο ηελ θαηάζηαζε ηνπ πξψηνπ Led (αλακκέλν -> ζβήλεη, ζβεζηφ -> αλάβεη) report_send() -> ε αλαθνξά φηη έγηλε απνζηνιή παθέηνπ γίλεηαη κε ηελ αιιαγή θαηάζηαζεο ηνπ δεχηεξνπ Led. report_received() -> Η αιιαγή θαηάζηαζεο ηνπ ηξίηνπ led δειψλεη φηη παξαιήθζεθε παθέην απφ ην ζπγθεθξηκέλν θφκβν. starttimer() -> Καιεί ηελ command startperiodic απφ ην interface Timer κε φξηζκα local.interval, δειαδή μεθίλα έλα πεξηνδηθφ ξνιφη κε πεξίνδν local.interval (local.interval = DEFAULT_INTERVAL;) φπνπ ην Default interval νξίδεηαη ζην Oscilloscope.h Όηαλ ν θφκβνο ηειεηψζεη κε ην booting εγείξεηε ην event booted πνπ ζηελ νπζία εδψ μεθηλάεη ην πξφγξακκα. Πξψηα ζέηνπκε ην interval ίζν κε ην DEFAULT_INTERVAL θαη ην id ηνπ θφκβνπ κε TOS_NODE_ID ην νπνίν παίξλεη ηελ ηηκή πνπ δειψλνπκε θαηά ην setup: make telosb install,x, ηελ ηηκή x (local είλαη δνκή βιέπε πην πάλσ). ηελ ζπλέρεηα θαιείηαη ε command start() ηνπ interface RadioControl εάλ γηα θάπνην ιφγν δελ είλαη επηηπρήο απηή ε command θαιείηαη ε ζπλάξηεζε πνπ αλαθέξεη ην πξφβιεκα. Όηαλ ε command start ηειεηψζεη εγείξεηαη ην event startdone, ζην νπνίν απιά θαινχκε ηελ internal function πνπ ελεξγνπνηεί έλα πεξηνδηθφ ξνιφη κε πεξίνδν ίζε κε ηελ default θαη ζηελ ζπλέρεηα αξρηθνπνηνχκε ηελ κεηαβιεηή reading = 0. Σψξα πηα αλά DEFAUL_INTERVAL ζα εγείξεηαη ην event fired() ηνπ interface Timer. ην event fired γίλνληαη ηα εμήο: Πξψηα ειέγρνπκε εάλ reading == NREADINGS αλ δειαδή ηα «δηαβάζκαηα» πνπ έθαλε ν θφκβνο είλαη φζα θαζνξίζακε ζην header file: Πεξίπησζε 1(reading == NREADINGS): Σφηε ζα πξνζπαζήζνπκε λα ζηείινπκε ην παθέην αθνχ πξψηα ειέγμνπκε εάλ γίλεηαη απνζηνιή ήδε(!sendbusy) θαη εάλ ην κέγεζνο ηεο δνκήο local είλαη 64

75 <= call AMSend.maxPayloadLength()) κηθξφηεξν ή ηζν κε ην κέγηζην κέγεζνο ηνπ payload { ηνπ παθέηνπ πνπ κπνξεί λα παξέρεη ην ζηξψκα memcpy(call επηθνηλσλίαο. Αλ δελ ηζρχεη θαη δελ είλαη busy ν AMSend.getPayload(&sendBuf, sizeof(local)), απνζηνιέαο (sendbusy) ηφηε πξνθαλψο ην κέγεζνο &local, sizeof local); ηεο δνκήο είλαη κεγαιχηεξν θαη δελ κπνξεί λα θάλεη if(call θάηη ν θφκβνο έηζη ην αλαθέξεη ζαλ πξφβιεκα. Αλ AMSend.send(AM_BROADCAST_ADDR, &sendbuf, φκσο πέξαζεη θαη απφ ηνπο δχν ειέγρνπο ηφηε κε ηελ sizeof local) == SUCCESS) ζπλάξηεζε memcpy [void *memcpy(void *dest, void sendbusy = TRUE; *src, size_t count) ] αληηγξάθεηαη ε πξνο απνζηνιή } δνκή ζην memory block απφ ην νπνίν ζα γίλεη ε if(!sendbusy) απνζηνιή. Μεηά κε ηελ command send μεθηλάεη ε report_problem(); απνζηνιή ηνπ παθέηνπ ζε broadcast ( reading = 0; if(!suppresscountchange) AM_BROADCAST_ADDR, δειαδή παληνχ ζηελ local.count++; εκβέιεηα ηνπ) αλ ε εθηέιεζε ηεο command είλαη suppresscountchange = FALSE; επηηπρήο (SUCCESS) ηφηε ζέηνπκε ηελ sendbusy = } TRUE γηα λα δειψζνπκε φηη γίλεηαη απνζηνιή. if(call Read.read()!= SUCCESS) ηελ ζπλέρεηα ζέηνπκε ηελ reading = 0, αθνχ πιένλ report_problem(); ζα πξέπεη λα μεθηλήζνπκε άιια NREADINGS. Μεηά } πινπνηείηαη κηαο ην δεχηεξν κέξνο κηαο απιήο κνξθήο ρξνληθνχ ζπγρξνληζκνχ κε ηελ κεηαβιεηή event void AMSend.sendDone(message_t* suppresscountchange. Δπφκελν βήκα είλαη λα msg, error_t error) μεθηλήζνπκε ηελ δηαδηθαζία πνπ δηαβάδεη απφ ηνλ { αηζζεηήξα γηα λα πινπνηεζεί ην loop θαη απηφ γίλεηαη if(error == SUCCESS) κε ην ηειεπηαίν if πνπ θαιείηαη ε command read. report_sent(); Απηή ηελ ζηηγκή έρνπκε ελεξγνπνίεζε ηελ θάζε 1 else (απφ ηελ split phase ) δχν ιεηηνπξγηψλ: report_problem(); AMSend.send θαη Read.read sendbusy = FALSE; Άξα θάπνηα ζηηγκή έρνπκε ην event senddone ζην } νπνίν ζα ειέγμνπκε αλ ε απνζηνιή έγηλε κε επηηπρία ή φρη ζα ελεκεξψζνπκε ην ρξήζηε κε ηα θαηάιιεια leds event void Read.readDone(error_t result, θαη ηέινο ζα απειεπζεξψζνπκε ηελ κεηαβιεηή uint16_t data) sendbusy ζέηνληαο ηελ κε FALSE έηζη ψζηε λα { κπνξεί λα γίλεη θαη άιιε απνζηνιή. if(result!= SUCCESS) Όηαλ ην event readdone εκθαληζηεί θαη ην reading { έγηλε κε επηηπρία ηφηε βάδνπκε ζην πίλαθα readings data = 0xffff; ζηελ ζέζε reading + 1 ηελ λέα ηηκή πνπ δηάβαζε. Αλ report_problem(); απφ ηελ άιιε δελ έρνπκε επηηπρία ζην read ηφηε } ζέηνπκε ηα data κε ηελ κέγηζηε ηηκή (0xffff). local.readings[reading++] = data; } event message_t* Receive.receive(message_t* msg, void* payload, uint8_t len) { oscilloscope_t *omsg = payload; report_received(); if(omsg -> version > local.version) { local.version = omsg -> version; local.interval = omsg - 65 Σν ηειεπηαίν event ρξεζηκνπνηείηαη ζε πεξίπησζε πνπ ζέινπκε λα αιιάμνπκε δπλακηθά ην interval. Σν event παίξλεη κηα δνκή θαη ειέγρεη ην version εάλ είλαη θαηλνχξγην αληηθαζηζηά ην interval θαη ην version κε ηηο θαηλνχξγηεο ηηκέο θαη μεθηλάεη ε δηαδηθαζία απφ ηελ αξρή starttimer().

76 >interval; starttimer(); } if(omsg -> version > local.count) { local.count = omsg -> version; suppresscountchange = TRUE; } return msg; } } 2. Configuration Component OscilloscopeAppC.nc configuration OscilloscopeAppC {} implementation { components OscilloscopeC, MainC; components ActiveMessageC, LedsC; components new TimerMilliC(); components new Msp430ADC2C() as Sensor; components new AMSender(AM_OSCILLOSCOPE); components new AMReceiver(AM_OSCILLOSCOPE); OscilloscopeC.Boot -> MainC; OsciloscopeC.RadioControl -> ActiveMessageC; OscilloscopeC.AMSend -> AMSenderC; OsciloscopeC.Receive -> AMReceiver; OscilloscopeC.Timer -> TimerMilliC; OsciloscopeC.Read -> Sensor; OscilloscopeC.Leds -> LedsC; } Απηφ είλαη ην configuration component ππεχζπλν γηα ην wiring. Η κφλε δηαθφξα πνπ έρνπκε κε ην default πξφγξακκα απφ ηελ βηβιηνζήθε ηνπ tinyos είλαη ε γξακκή κε θφθθηλν (components new Msp430ADC2C() as Sensor; ). ην default πξφγξακκα έρνπκε ηελ εμήο γξακκή: components new DemoSensorC() as Sensor. ην default πξνγξακκα ην interface Read γηα λα θηάζεη ζην OscilloscopeC αθνινπζεί ηελ εμήο πνξεία: DemoSensorC.Read <- VoltageC.Read <- Msp430InternalVoltageC.Read <- AdcReadClientC.Read <- AdcP.Read[CLIENT]. Σν module AdcP είλαη private θαη είλαη platform specific κέζν απηνχ θαη ηεο πην πάλσ πεξίπινθεο πνξείο θαηαιήγεη ε εθαξκνγή OscilloscopeC λα ρξεζηκνπνηεί ην interface Read, αιιά απηφ πνπ δηαβάδεη είλαη εζσηεξηθή ηάζε, εκείο ζηελ δηθή καο εθαξκνγή αιιάμακε απηή ηελ πνξεία γηα λα δηαβάζνπκε αλαινγηθή είζνδν. Παξαηεξνχκε φηη δελ ρξεηάζηεθε λα ηξνπνπνηήζνπκε θαζφινπ ην module αιιά κηα γξακκή ζην wiring θαη ην πην πάλσ γίλεηαη: Msp430ADC2C.Read <- AdcReadClientC.Read <- AdcP.Read[CLIENT]. Καη ζηηο δχν πεξηπηψζεηο θαηαιήγνπκε ζην ίδην component, απηφ πνπ δηαθέξεη ζηελ δηθή καο εθαξκνγή είλαη ε ρξήζε ηνπ Msp430ADC2P.nc πνπ παξέρεη ην interface AdcConfigure(πην θάησ) Msp430ADC2C.nc generic configuration Msp430ADC2C() { provides interface Read<uint16_t>; provides interface ReadStream<uint16_t>; Σν interface Read πνπ ρξεζηκνπνίεη ην basic module ηνπ πξνγξακκάηνο καο παξέρεηαη απφ 66

77 } απηφ ην generic configuration implementation ρξεζηκνπνηψληαο ηνλ ηειεζηή = { κε ην generic Component components new AdcReadClientC(); AdcReadClientC πνπ είλαη Read = AdcReadClientC; component ηεο βηβιηνζήθεο ηνπ components new AdcReadStreamClientC(); tinyos. Γηα λα «δηαβάζνπκε» απφ ReadStream = AdcReadStreamClientC; ζπγθεθξηκέλν input ηεο U2 ζέηνπκε components Msp430ADC2P; ζπγθεθξηκέλν configuration ην AdcReadClientC.AdcConfigure -> Msp430ADC2P; νπνίν θαη παξέρεηαη απφ ην AdcReadStreamClientC.AdcConfigure -> Msp430ADC2P; component Msp430ADC2P θαη } επηηπγράλεηαη κέζσ ηνπ δηπιαλνχ wiring(κε θφθθηλν ρξψκα). Πνην πάλσ ζέζακε Read = AdcReadClientC. Απηφο δελ είλαη ν κνλαδηθφο ηξφπνο γηα λα δηαβάζνπκε απφ ηελ έμνδν ηνπ 12-bit ADC ηνπ telosb θαη γεληθά ησλ motes κε αξρηηεθηνληθή ηνλ Msp430. πγθεθξηκέλα ζα κπνξνχζακε λα ρξεζηκνπνηήζνπκε έλα(κφλν έλα θάζε θνξά) απφ ηα πην θάησ 7 components, ηα πξψηα 3 είλαη HIL (hardware interface layer) components θαη ηα άιια 4 είλαη HAL(hardware adaption layer). Όπσο είλαη γλσζην ηα HIL components είλαη platform independent θαη είλαη γηα γεληθνχ ζθνπνχ εθαξκνγέο κε ζρεηηθά κηθξφηεξε απφδνζε ζε αληίζεζε κε ηα HAL πνπ είλαη platform specific θαη σο εθ ηνχηνπ έρνπλ κεγαιχηεξε απφδνζε. AdcReadClientC: δηαβάδεη κνλαδηθέο ηηκέο απφ ηνλ ADC. AdcReadNowClientC: δηαβάδεη κνλαδηθέο ηηκέο απφ ηνλ ADC, αζχγρξνλα, άξα θαη πην γξήγνξα απφ ην πξψην. AdcReadStreamClientC: δηάβαδεη πνιιαπιέο ηηκέο απφ ηνλ ADC. Msp430Adc12ClientC: δελ έρεη νχηε DMA 50 θαη νχηε απηφκαηε reference voltage. Msp430Adc12ClientAutoRVGC: δελ έρεη DMA αιιά έρεη απηφκαηε reference voltage. Msp430Adc12ClientAutoDMAC: έρεη DMA αιιά φρη απηφκαηε reference voltage. Msp430Adc12ClientAutoDMAC_RVGC: έρεη DMA θαη απηφκαηε reference voltage 2.2. Msp430ADC2P.nc #include Msp430Adc12.h module Msp430ADC2P { provides interface AdcConfigure<const msp430adc12_channel_config_t*>; } implementation { const msp430adc12_channel_config_t config = { 50 DMA direct memory access πνπ ζεκαίλεη «Άκεζε Πξφζβαζε Μλήκεο» ή «Άκεζε Πξνζπέιαζε Μλήκεο», είλαη έλα ραξαθηεξηζηηθφ ησλ ζχγρξνλσλ ππνινγηζηψλ θαη κηθξνεπεμεξγαζηψλ ην νπνίν παξέρεη ηε δπλαηφηεηα ζε ππνζπζηήκαηα ηνπ πιηθνχ ελφο ππνινγηζηή λα έρνπλ πξφζβαζε ζηε κλήκε ηνπ ζπζηήκαηνο γηα αλάγλσζε ή εγγξαθή δεδνκέλσλ αλεμάξηεηα απφ ηελ θεληξηθή κνλάδα επεμεξγαζίαο. 67

78 }; inch: INPUT_CHANNEL_A2, sref: REFERENCE_AVcc_AVss, ref2_5v: REFVOL_LEVEL_2_5, adc12ssel: SHT_SOURCE_ACLK, adc12div: SHT_CLOCK_DIV_1, sht: SAMPLE_HOLD_4_CYCLES, sampcon_ssel: SAMPCON_SOURCES_SMCLK, sampcon_id: SAMPCON_CLOCK_DIV_1 } async command const msp430adc12_channel_config_t* AdcConfigure.getConfiguration() { return &config; } Σν πην πάλσ αξρείν θαζνξίδεη ηα configurations ηνπ read(νη ηηκέο πνπ δίλεη είλαη απφ header file Msp430Adc12.h). πγθεθξηκέλα: 1. inch: Δίλαη εμσηεξηθά input channels. ηελ νπζία επηιέγεη έλα απφ Α0-Α7 inputs pins ηνπ mps430 ( INPUT_CHANNEL_A2 είλαη ν αξηζκφο 2 θαη επηιέγεη ην Analog Input 2 ηνπ U2 expansion controller(βιέπε telosb datasheet pin7 of U2)). 2. sref: Σάζε αλαθνξάο ηνπ register. Δπηιέγνληαο REFERENCE_AVcc_AVss επηιέγνπκε sref=0 ην νπνίν δειψλεη φηη VR+ = AVcc θαη VR- = AVss. 3. ref2_5v: Σάζε αλαθνξαο ηελ νπνία ζέηνπκε ζηα 2.5 Volts 4. adc12ssel: Καζνξίδεηαη ην clock source (ηελ πεγή ηνπ ξνινγηνχ πνπ είλαη ππεχζπλν γηα sampling) 5. adc12div: Καζνξίδεη ην clock divider 6. sht: Καζνξίδεη ηνλ ρξφλν ηνπ sampling εθθξαζκέλν ζε θχθινπο ξνινγηνχ 7. sampcon_ssel: Πεγε ξνινγηνχ θαηά ηελ πεξίνδν ηνπ sampling. 8. sampon_id: Γηαηξέηεο ηνπ sampcon_ssel. Καη ε command getconfiguration επηζηξέθεη ηα πην πάλσ γηα λα «θαηεπζχλεη» ην Read interface (ζπγθεθξηκέλα ην ResourceRead interface ην ρξεηάδεηαη γηαηί κέζσ απηνχ γίλεηαη εθηειείηαη ην read απφ external inputs). Γηα base station ρξεζηκνπνηήζακε, ρσξίο αιιαγέο, ηελ base station εθαξκνγή πνπ παξέρεη ην tinyos. 68

79 4.3.2 Server Όπσο έρνπκε αλαθέξεη θαη πην πάλσ ην base station ζπγθεληξψλεη ηα παθέηα θαη ηα παξαδίδεη ζε έλα ππνινγηζηή κέζσ usb. ηελ ζπλέρεηα θηηάμακε κηα εθαξκνγή πνπ δηαβάδεη ηα παθέηα θαη κφιηο εκθαληζηεί έλαο client αξρίδεη λα ηα κεηαδίδεη ζην δίθηπν over sockets κέζσ ηνπ πξσηφθνιινπ TCP/IP. Σν πξφγξακκα θηηάρηεθε ζε java ζε πεξηβάιινλ Linux θαη ρξεζηκνπνηήζεθαλ java βηβιηνζήθεο απφ ην tinyos γηα επηθνηλσλία κε ην base station. Πην θάησ παξνπζηάδνπκε ην πξφγξακκα θαη ην flow chart ηνπ server: Δικόνα 32 - Λειηοςπγία Server 69

80 Δικόνα 33 - Γιάγπαμμα Ροήρ Server Πην θάησ ζα θάλνπκε θάπνηεο αλαθνξέο ζην java πξφγξακκα ηνπ server θαη ζα εμεγήζνπκε βαζηθά ηνπ ζηνηρεία: import net.tinyos.packet.*; import net.tinyos.util.*; Βαζηθφ ζηνηρείν ζην πξφγξακκα καο είλαη λα εηζάγνπκε ηηο βηβιηνζήθεο ηνπ tinyos έηζη ψζηε λα έρνπκε ηελ δπλαηφηεηα λα επηθνηλσλήζνπκε κε ην base station ρξεζηκνπνηψληαο θιάζεηο ηνπ ιεηηνπξγηθνχ. String source = "serial@/dev/ttyusb0:telosb"; 70

ΑΛΛΑΓΗ ΟΝΟΜΑΣΟ ΚΑΙ ΟΜΑΔΑ ΕΡΓΑΙΑ, ΚΟΙΝΟΥΡΗΣΟΙ ΦΑΚΕΛΟΙ ΚΑΙ ΕΚΣΤΠΩΣΕ ΣΑ WINDOWS XP

ΑΛΛΑΓΗ ΟΝΟΜΑΣΟ ΚΑΙ ΟΜΑΔΑ ΕΡΓΑΙΑ, ΚΟΙΝΟΥΡΗΣΟΙ ΦΑΚΕΛΟΙ ΚΑΙ ΕΚΣΤΠΩΣΕ ΣΑ WINDOWS XP ΑΛΛΑΓΗ ΟΝΟΜΑΣΟ ΚΑΙ ΟΜΑΔΑ ΕΡΓΑΙΑ, ΚΟΙΝΟΥΡΗΣΟΙ ΦΑΚΕΛΟΙ ΚΑΙ ΕΚΣΤΠΩΣΕ ΣΑ WINDOWS XP ηότοι εργαζηηρίοσ ην πιαίζην ηνπ ζπγθεθξηκέλνπ εξγαζηεξίνπ ζα παξνπζηαζηνύλ βαζηθέο ιεηηνπξγίεο ησλ Windows XP πνπ ζρεηίδνληαη

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

ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS

ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS ηότοι εργαζηηρίοσ ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS ην πιαίζην ηνπ ζπγθεθξηκέλνπ εξγαζηεξίνπ ζα παξνπζηαζηεί ε δηαδηθαζία ηωλ ξπζκίζεωλ δηθηύνπ ζε ιεηηνπξγηθό ζύζηεκα Windows XP. Η δηαδηθαζία ζε γεληθέο γξακκέο

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

ΗΛΕΚΤΡΟΝΙΚΗ ΜΝΗΜΗ ΚΑΙ ΜΙΚΡΟΕΛΕΓΚΤΕΣ

ΗΛΕΚΤΡΟΝΙΚΗ ΜΝΗΜΗ ΚΑΙ ΜΙΚΡΟΕΛΕΓΚΤΕΣ ΗΛΕΚΤΡΟΝΙΚΗ ΜΝΗΜΗ ΚΑΙ ΜΙΚΡΟΕΛΕΓΚΤΕΣ Η ζεκεξηλή ξαγδαία εμέιημε ηεο ηερλνινγίαο ηεο κηθξνειεθηξνληθήο επέηξεςε ηελ θαηαζθεπή εηδηθώλ νινθιεξσκέλσλ θπθισκάησλ απνζήθεπζεο δεδνκέλσλ θαη πιεξνθνξηώλ θαηαιακβάλνπλ

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

ΑΠΑΝΤΗΣΔΙΣ ΓΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ II ΔΠΑΛ

ΑΠΑΝΤΗΣΔΙΣ ΓΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ II ΔΠΑΛ ΑΠΑΝΤΗΣΔΙΣ ΓΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ II ΔΠΑΛ ΘΔΜΑ Α Α1. α. Σ β. Σ γ. Λ δ. Λ ε. Λ ζη. Σ Α2. Γ Α3. 1. γ 2. ε 3. δ 4. α Β1. ΘΔΜΑ Β Οη ηειηθνί ππνινγηζηέο παίξλνπλ απνθάζεηο δξνκνιόγεζεο κόλν γηα ηα δηθά ηνπο απηνδύλακα

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

7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ. 3. Έλαο θαηαρσξεηήο SISO ησλ 4 bits έρεη: α) Μία είζνδν, β) Δύν εηζόδνπο, γ) Σέζζεξεηο εηζόδνπο.

7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ. 3. Έλαο θαηαρσξεηήο SISO ησλ 4 bits έρεη: α) Μία είζνδν, β) Δύν εηζόδνπο, γ) Σέζζεξεηο εηζόδνπο. 7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Ση είλαη έλαο θαηαρσξεηήο; O θαηαρσξεηήο είλαη κηα νκάδα από flip-flop πνπ κπνξεί λα απνζεθεύζεη πξνζσξηλά ςεθηαθή πιεξνθνξία. Μπνξεί λα δηαηεξήζεη ηα δεδνκέλα ηνπ

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

Ενδεικτικά Θέματα Στατιστικής ΙΙ

Ενδεικτικά Θέματα Στατιστικής ΙΙ Ενδεικτικά Θέματα Στατιστικής ΙΙ Θέματα. Έζησ όηη ζε δείγκα 35 θαηνηθηώλ πνπ ελνηθηάδνληαη ζε θνηηεηέο ζηελ Κνδάλε βξέζεθε ην κέζν κεληαίν κίζζσκα ζηα 5 επξώ, ελώ ζην Ζξάθιεην ην κέζν κεληαίν κίζζσκα ζε

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

Σημεία Ασύπματηρ Ππόσβασηρ (Hot-Spots)

Σημεία Ασύπματηρ Ππόσβασηρ (Hot-Spots) Σημεία Ασύπματηρ Ππόσβασηρ (Hot-Spots) 1.1 Σςνοπτική Πεπιγπαυή Hot Spots Σα ζεκεία αζύξκαηεο πξόζβαζεο πνπ επηιέρζεθαλ αλαθέξνληαη ζηνλ επόκελν πίλαθα θαη παξνπζηάδνληαη αλαιπηηθά ζηηο επόκελεο παξαγξάθνπο.

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

Τηλζφωνο: 99543321 Ε-mail: savvas_email@yahoo.com Ώρες διδασκαλίας: 16:00 19:15 μμ

Τηλζφωνο: 99543321 Ε-mail: savvas_email@yahoo.com Ώρες διδασκαλίας: 16:00 19:15 μμ ΠΑΙΓΑΓΩΓΙΚΟ ΙΝΣΙΣΟΤΣΟ ΚΤΠΡΟΤ Πξόγξακκα Δπηκόξθσζεο Τπνςεθίσλ Καζεγεηώλ Σερλνινγίαο Γελάξεο 2011 ΗΛΔΚΣΡΟΝΙΚΑ Ι (Ύιε Γπκλαζίνπ) Διδάσκων: Σαββίδης Σάββας Τηλζφωνο: 99543321 Ε-mail: savvas_email@yahoo.com

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

Κεθάλαιο 1. Ενόηηηα 2 Πλάνο Μάρκεηινγκ. Εξγαιεία Μάξθεηηλγθ. Dr. Andrea Grimm Dr. Astin Malschinger

Κεθάλαιο 1. Ενόηηηα 2 Πλάνο Μάρκεηινγκ. Εξγαιεία Μάξθεηηλγθ. Dr. Andrea Grimm Dr. Astin Malschinger Κεθάλαιο 1 Ενόηηηα 2 Πλάνο Μάρκεηινγκ Εξγαιεία Μάξθεηηλγθ Dr. Andrea Grimm Dr. Astin Malschinger ΠΕΡΙΕΧΟΜΕΝΑ ΕΝΟΤΗΤΑ 2 ΠΛΑΝΟ ΜΑΡΚΕΤΙΝΓΚ Κεθάιαην 1: Εξγαιεία Μάξθεηηλγθ Σπγγξαθείο: Δξ. Andrea Grimm, Δξ.

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

A. Αιιάδνληαο ηε θνξά ηνπ ξεύκαηνο πνπ δηαξξέεη ηνλ αγωγό.

A. Αιιάδνληαο ηε θνξά ηνπ ξεύκαηνο πνπ δηαξξέεη ηνλ αγωγό. ΤΠΟΤΡΓΔΙΟ ΠΑΙΓΔΙΑ ΚΑΙ ΠΟΛΙΣΙΜΟΤ ΛΔΤΚΩΙΑ ΦΤΛΛΟ ΔΡΓΑΙΑ Μειέηε ηωλ παξαγόληωλ από ηνπο νπνίνπο εμαξηάηαη ε ειεθηξνκαγλεηηθή δύλακε. Τιηθά - πζθεπέο: Ηιεθηξνληθή δπγαξηά, ηξνθνδνηηθό ηάζεο, ξννζηάηεο, ακπεξόκεηξν,

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

Η αξρή ζύλδεζεο Client-Server

Η αξρή ζύλδεζεο Client-Server Η αξρή ζύλδεζεο Client-Server Δηαθνκηζηήο (Server) Πξνζθέξεη ππεξεζίεο ζηνπο Πειάηεο (Client) Μεγάινη ππνινγηζηέο γηα ηηο ππεξεζίεο Internet (π.ρ. WWW, FTP) Λακβάλεη εξσηήζεηο θαη δίδεη απαληήζεηο Πειάηεο

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

ΑΝΤΗΛΙΑΚΑ. Η Μηκή ζθέθηεθε έλαλ ηξόπν, γηα λα ζπγθξίλεη κεξηθά δηαθνξεηηθά αληειηαθά πξντόληα. Απηή θαη ν Νηίλνο ζπλέιεμαλ ηα αθόινπζα πιηθά:

ΑΝΤΗΛΙΑΚΑ. Η Μηκή ζθέθηεθε έλαλ ηξόπν, γηα λα ζπγθξίλεη κεξηθά δηαθνξεηηθά αληειηαθά πξντόληα. Απηή θαη ν Νηίλνο ζπλέιεμαλ ηα αθόινπζα πιηθά: ΑΝΤΗΛΙΑΚΑ Η Μηκή θαη ν Νηίλνο αλαξσηήζεθαλ πνην αληειηαθό πξντόλ παξέρεη ηελ θαιύηεξε πξνζηαζία ζην δέξκα ηνπο. Τα αληειηαθά πξντόληα έρνπλ έλα δείθηε αληειηαθήο πξνζηαζίαο (SPF), ν νπνίνο δείρλεη πόζν

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

ΦΤΛΛΟ ΔΡΓΑΙΑ 1 Βαζηθέο Έλλνηεο & Καηεγνξίεο Γηθηύσλ Τπνινγηζηώλ

ΦΤΛΛΟ ΔΡΓΑΙΑ 1 Βαζηθέο Έλλνηεο & Καηεγνξίεο Γηθηύσλ Τπνινγηζηώλ ΦΤΛΛΟ ΔΡΓΑΙΑ 1 Βαζηθέο Έλλνηεο & Καηεγνξίεο Γηθηύσλ Τπνινγηζηώλ Γξαζηεξηόηεηα 1ε αο δίλεηαη ν ελλνηνινγηθφο ράξηεο "Γίθηπα Τπνινγηζηψλ - Βαζηθέο Έλλνηεο" πνπ αθνξά ζηελ θεληξηθή έλλνηα "Γίθηπα Τπνινγηζηψλ".

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

(γ) Να βξεζεί ε ρξνλνεμαξηώκελε πηζαλόηεηα κέηξεζεο ηεο ζεηηθήο ηδηνηηκήο ηνπ ηειεζηή W.

(γ) Να βξεζεί ε ρξνλνεμαξηώκελε πηζαλόηεηα κέηξεζεο ηεο ζεηηθήο ηδηνηηκήο ηνπ ηειεζηή W. ΚΒΑΝΤΙΚΗ ΦΥΣΙΚΗ Ι Τειηθή Εμέηαζε: 5 Σεπηέκβξε 6 (Δηδάζθσλ: ΑΦ Τεξδήο) ΘΕΜΑ Θεσξνύκε θβαληηθό ζύζηεκα πνπ πεξηγξάθεηαη από Φακηιηνληαλή Η, ε νπνία ζε κνξθή πίλαθα ρξεζηκνπνηώληαο ηηο ηδηνζπλαξηήζεηο, θαη

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

Α. Εηζαγσγή ηεο έλλνηαο ηεο ηξηγσλνκεηξηθήο εμίζσζεο κε αξρηθό παξάδεηγκα ηελ εκx = 2

Α. Εηζαγσγή ηεο έλλνηαο ηεο ηξηγσλνκεηξηθήο εμίζσζεο κε αξρηθό παξάδεηγκα ηελ εκx = 2 ΣΡΙΓΩΝΟΜΔΣΡΙΚΔ EΞΙΩΔΙ Πνηα παξαδείγκαηα εμηζώζεσλ ή θαη πξνβιεκάησλ πηζηεύεηαη όηη είλαη θαηάιιεια γηα ηελ επίιπζε ηνπο θαηά ηελ δηάξθεηα ηεο δηδαθηηθήο δηαδηθαζίαο κέζα ζηελ ηάμε; 1 ε ΓΙΓΑΚΣΙΚΗ ΩΡΑ Α.

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

Case Study. Παξαθάηω παξνπζηάδνπκε βήκα - βήκα κε screenshots έλα παξάδεηγκα ππνβνιήο κηαο εξγαζίαο θαη ηελ παξαγωγή ηνπ Originality Report.

Case Study. Παξαθάηω παξνπζηάδνπκε βήκα - βήκα κε screenshots έλα παξάδεηγκα ππνβνιήο κηαο εξγαζίαο θαη ηελ παξαγωγή ηνπ Originality Report. Case Study Παξαθάηω παξνπζηάδνπκε βήκα - βήκα κε screenshots έλα παξάδεηγκα ππνβνιήο κηαο εξγαζίαο θαη ηελ παξαγωγή ηνπ Originality Report. Βήκα 1 ο : Login ζηο Turnitin. Κάλεηε είζνδν ζην Turnitin κε

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

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ 1. ρεδίαζε πλδπαζηηθνύ Κπθιώκαηνο Έλα ζπλδπαζηηθό θύθισκα (Κ) έρεη ηξεηο εηζόδνπο A, B θαη C θαη κία έμνδν Y Y=A B+AC Να θαηαζθεπάζεηε ην ράξηε Karnaugh. B 0

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

Αζκήζεις ζτ.βιβλίοσ ζελίδας 13 14

Αζκήζεις ζτ.βιβλίοσ ζελίδας 13 14 .1.10 ζκήζεις ζτ.βιβλίοσ ζελίδας 13 14 Ερωηήζεις Καηανόηζης 1. ύν δηαθνξεηηθέο επζείεο κπνξεί λα έρνπλ θαλέλα θνηλό ζεκείν Έλα θνηλό ζεκείν i ύν θνηλά ζεκεία iλ) Άπεηξα θνηλά ζεκεία ηηηνινγήζηε ηελ απάληεζε

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

Απαντήσεις θέματος 2. Παξαθάησ αθνινπζεί αλαιπηηθή επίιπζε ησλ εξσηεκάησλ.

Απαντήσεις θέματος 2. Παξαθάησ αθνινπζεί αλαιπηηθή επίιπζε ησλ εξσηεκάησλ. Απαντήσεις θέματος 2 Απηά πνπ έπξεπε λα γξάςεηε (δελ ρξεηαδόηαλ δηθαηνιόγεζε εθηόο από ην Γ) Α return a*b; Β 0:acegf2, 1: acegf23, 2: acegf234, 3:acegf2345, 4:acegf23456, 5:acegf234567, 6:acegf2345678,

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

Κεθάιαην 20. Ελαχιστοποίηση του κόστους

Κεθάιαην 20. Ελαχιστοποίηση του κόστους Κεθάιαην 0 Ελαχιστοποίηση του κόστους Ειαρηζηνπνίεζε ηνπ θόζηνπο Μηα επηρείξεζε ειαρηζηνπνηεί ην θόζηνο ηεο αλ παξάγεη νπνηνδήπνηε δεδνκέλν επίπεδν πξντόληνο y 0 ζην κηθξόηεξν δπλαηό ζπλνιηθό θόζηνο. Τν

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

ΚΕΦ. 2.3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ

ΚΕΦ. 2.3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ ΚΕΦ..3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ Οπιζμόρ απόλςηηρ ηιμήρ: Σηνλ άμνλα ησλ πξαγκαηηθώλ αξηζκώλ ζεσξνύκε έλαλ αξηζκό α πνπ ζπκβνιίδεηαη κε ην ζεκείν Α. Η απόζηαζε ηνπ ζεκείνπ Α από ηελ αξρή Ο, δειαδή

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

Αιγόξηζκνη Γνκή επηινγήο. Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο. Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ. introcsprinciples.wordpress.

Αιγόξηζκνη Γνκή επηινγήο. Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο. Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ. introcsprinciples.wordpress. Αιγόξηζκνη 2.2.7.3 Γνκή επηινγήο Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ 1 Πνιιαπιή Δληνιή Δπηινγήο Αν ζπλζήθε_1 ηόηε εληνιέο_1 αλλιώς_αν ζπλζήθε_2 ηόηε εληνιέο_2...

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

Hellas online Προεπιλεγμένες ρσθμίσεις για FritzBox Fon WLAN 7140 (Annex B) 30.04.67 FritzBox Fon WLAN 7140 - Annex B (30.04.67)

Hellas online Προεπιλεγμένες ρσθμίσεις για FritzBox Fon WLAN 7140 (Annex B) 30.04.67 FritzBox Fon WLAN 7140 - Annex B (30.04.67) Hellas online Προεπιλεγμένες ρσθμίσεις για FritzBox Fon WLAN 7140 (Annex B) 30.04.67 FritzBox Fon WLAN 7140 - Annex B (30.04.67) Γηα λα επαλαθέξεηε ην FritzBox Fon WLAN 7140 ζηηο πξνεπηιεγκέλεο ηνπ ξπζκίζεηο

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

ΠΛΗ36. Άσκηση 1. Άσκηση 2. Οη δηεπζύλζεηο ησλ 4 σλ ππνδηθηύσλ είλαη νη αθόινπζεο. Υπνδίθηπν Α: 10.101.1.64/27 Υπνδίθηπν Β: 10.101.1.

ΠΛΗ36. Άσκηση 1. Άσκηση 2. Οη δηεπζύλζεηο ησλ 4 σλ ππνδηθηύσλ είλαη νη αθόινπζεο. Υπνδίθηπν Α: 10.101.1.64/27 Υπνδίθηπν Β: 10.101.1. Άσκηση 1 ΠΛΗ36 1. Η κόλε πεξίπησζε λα έρνπκε ζύγθξνπζε κεηαμύ παθέησλ ησλ δύν θόκβσλ είλαη λα ζηείιεη ν δεύηεξνο πξηλ πξνιάβεη λα πιεξνθνξεζεί γηα ηελ θαηάιεςε ηνπ δηάπινπ από ηνλ άιιν. Από ηε ζηηγκή πνπ

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

ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ. G. Mitsou

ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ. G. Mitsou ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ ηαηηθή ηωλ ξεπζηώλ (Τδξνζηαηηθή) Ση είλαη ηα ξεπζηά - Γεληθά Ππθλόηεηα Πίεζε Μεηαβνιή ηεο πίεζεο ζπλαξηήζεη ηνπ βάζνπο Αξρή ηνπ Pascal Τδξνζηαηηθή πίεζε Αηκνζθαηξηθή πίεζε Απόιπηε &

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

1. Οδηγίερ εγκαηάζηαζηρ και σπήζηρ έξςπνυν καπηών και τηθιακών πιζηοποιηηικών με σπήζη ηος λογιζμικού Μοzilla Thunderbird

1. Οδηγίερ εγκαηάζηαζηρ και σπήζηρ έξςπνυν καπηών και τηθιακών πιζηοποιηηικών με σπήζη ηος λογιζμικού Μοzilla Thunderbird 1. Οδηγίερ εγκαηάζηαζηρ και σπήζηρ έξςπνυν καπηών και τηθιακών πιζηοποιηηικών με σπήζη ηος λογιζμικού Μοzilla Thunderbird 1.1 Εγκαηάζηαζη ηυν οδηγών ηηρ έξςπνηρ κάπηαρ ζηο λογιζμικό Mozilla Thunderbird

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

ΤΑΞΙΝΟΜΗΣΗ ΤΩΝ ΤΔΡΗΓΟΝΙΚΩΝ ΒΛΑΒΩΝ ΚΑΤΑ ΤΑ ICDAS II ΚΡΙΤΗΡΙΑ ΜΔ ΒΑΣΗ ΤΗ ΚΛΙΝΙΚΗ ΔΞΔΤΑΣΗ

ΤΑΞΙΝΟΜΗΣΗ ΤΩΝ ΤΔΡΗΓΟΝΙΚΩΝ ΒΛΑΒΩΝ ΚΑΤΑ ΤΑ ICDAS II ΚΡΙΤΗΡΙΑ ΜΔ ΒΑΣΗ ΤΗ ΚΛΙΝΙΚΗ ΔΞΔΤΑΣΗ ΤΑΞΙΝΟΜΗΣΗ ΤΩΝ ΤΔΡΗΓΟΝΙΚΩΝ ΒΛΑΒΩΝ ΚΑΤΑ ΤΑ ICDAS II ΚΡΙΤΗΡΙΑ ΜΔ ΒΑΣΗ ΤΗ ΚΛΙΝΙΚΗ ΔΞΔΤΑΣΗ Κιηληθή ηαμηλόκεζε ηνπ βαζκνύ ηεξεδνληθήο βιάβεο ηωλ νπώλ θαη ζρηζκώλ καζεηηθώλ επηθαλεηώλ θαηά ICDAS 1 νο Βαζκόο

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

ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ. Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη Εήηημα 1 ο :

ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ. Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη Εήηημα 1 ο : ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ Ον/μο:.. Γ Λσκείοσ Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη. 11-1-11 Εήηημα 1 ο : Α. Γηα ηελ ζπλάξηεζε f, λα βξείηε ην δηάζηεκα ζην νπνίν είλαη παξαγσγίζηκε θαζώο θαη

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

Κεθάλαιο 7. Πξνζθνξά ηνπ θιάδνπ Μ. ΨΥΛΛΑΚΗ

Κεθάλαιο 7. Πξνζθνξά ηνπ θιάδνπ Μ. ΨΥΛΛΑΚΗ Κεθάλαιο 7 Πξνζθνξά ηνπ θιάδνπ 1 Προζθορά ανηαγωνιζηικού κλάδοσ Πώο πξέπεη λα ζπλδπαζηνύλ νη απνθάζεηο πξνζθνξάο ησλ πνιιώλ επηκέξνπο επηρεηξήζεσλ ελόο αληαγσληζηηθνύ θιάδνπ γηα λα βξνύκε ηελ θακπύιε πξνζθνξάο

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

Γοκή επαλάιευες Δληοιές Όζο & Μέτρης_όηοσ

Γοκή επαλάιευες Δληοιές Όζο & Μέτρης_όηοσ Αιγόξηζκνη 2.2.7.4 Γοκή επαλάιευες Δληοιές Όζο & Μέτρης_όηοσ Εηζαγσγή ζηηο Αξρέο ηεο Επηζηήκεο ησλ Η/Υ 1 Άζθεζε 34 ζει 53 Έλα ςεθηαθό θσηνγξαθηθό άικπνπκ έρεη απνζεθεπηηθό ρώξν N Mbytes. Να αλαπηύμεηε

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

ΔΕΟ 13. Ποσοτικές Μέθοδοι. θαη λα ππνινγίζεηε ην θόζηνο γηα 10000 παξαγόκελα πξντόληα. Να ζρεδηαζηεί γηα εύξνο πξντόλησλ έσο 30000.

ΔΕΟ 13. Ποσοτικές Μέθοδοι. θαη λα ππνινγίζεηε ην θόζηνο γηα 10000 παξαγόκελα πξντόληα. Να ζρεδηαζηεί γηα εύξνο πξντόλησλ έσο 30000. ΔΕΟ 13 Ποσοτικές Μέθοδοι Σσνάρηηζη Κόζηοσς C(), μέζο κόζηος C()/. Παράδειγμα 1 Μηα εηαηξεία δαπαλά γηα θάζε πξντόλ Α πνπ παξάγεη 0.0 λ.κ. Τα πάγηα έμνδα ηεο εηαηξείαο είλαη 800 λ.κ. Ζεηείηαη 1) Να πεξηγξάςεηε

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

Δπηιέγνληαο ην «Πξνεπηινγή» θάζε θνξά πνπ ζα ζπλδέεζηε ζηελ εθαξκνγή ζα βξίζθεζηε ζηε λέα ρξήζε.

Δπηιέγνληαο ην «Πξνεπηινγή» θάζε θνξά πνπ ζα ζπλδέεζηε ζηελ εθαξκνγή ζα βξίζθεζηε ζηε λέα ρξήζε. ΑΝΟΙΓΜΑ ΝΔΑ ΥΡΗΗ 1. Γεκηνπξγείηε ηε λέα ρξήζε από ηελ επηινγή «Παξάκεηξνη/Παξάκεηξνη Δηαηξίαο/Γηαρείξηζε Δηαηξηώλ». Πιεθηξνινγείηε ηνλ θσδηθό ηεο εηαηξίαο ζαο θαη παηάηε Enter. Σηελ έλδεημε «Υξήζεηο» παηάηε

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

Φςζική Πποζαναηολιζμού Γ Λςκείος. Αζκήζειρ Ταλανηώζειρ 1 ο Φςλλάδιο

Φςζική Πποζαναηολιζμού Γ Λςκείος. Αζκήζειρ Ταλανηώζειρ 1 ο Φςλλάδιο Φςζική Πποζαναηολιζμού Γ Λςκείος Αζκήζειρ Ταλανηώζειρ 1 ο Φςλλάδιο Επιμέλεια: Αγκανάκηρ Α. Παναγιώηηρ Επωηήζειρ Σωζηό- Λάθορ Να χαπακηηπίζεηε ηιρ παπακάηω πποηάζειρ ωρ ζωζηέρ ή λάθορ: 1. Η ηαιάλησζε είλαη

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

Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση

Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση Πώς πρέπει να τιμολογεί ένα μονοπώλιο; Μέρξη ζηηγκήο ην κνλνπώιην έρεη ζεσξεζεί ζαλ κηα επηρείξεζε ε νπνία πσιεί ην πξντόλ ηεο ζε θάζε πειάηε ζηελ

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

x-1 x (x-1) x 5x 2. Να απινπνηεζνύλ ηα θιάζκαηα, έηζη ώζηε λα κελ ππάξρνπλ ξηδηθά ζηνπο 22, 55, 15, 42, 93, 10 5, 12

x-1 x (x-1) x 5x 2. Να απινπνηεζνύλ ηα θιάζκαηα, έηζη ώζηε λα κελ ππάξρνπλ ξηδηθά ζηνπο 22, 55, 15, 42, 93, 10 5, 12 ΑΚΖΔΗ ΤΜΝΑΗΟΤ - ΚΤΚΛΟ ΠΡΩΣΟ - - ηα πνηεο ηηκέο ηνπ ηα παξαθάησ θιάζκαηα δελ νξίδνληαη ; (Τπόδεημε : έλα θιάζκα νξίδεηαη αλ ν παξνλνκαζηήο είλαη δηάθνξνο ηνπ κεδελόο) - (-) - (-) - Να απινπνηεζνύλ ηα θιάζκαηα

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

H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ

H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ Φξεζηκόηεηα καζεκαηηθώλ Αξρή θαηακέηξεζεο Όζα έδσζαλ νη Έιιελεο... Τξίγσλνη αξηζκνί Τεηξάγσλνη αξηζκνί Δπηκήθεηο αξηζκνί Πξώηνη αξηζκνί Αξηζκνί κε μερσξηζηέο ηδηόηεηεο Γίδπκνη πξώηνη

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

Άμεσοι Αλγόριθμοι: Προσπέλαση Λίστας (list access)

Άμεσοι Αλγόριθμοι: Προσπέλαση Λίστας (list access) Έρνπκε απνζεθεύζεη κηα ζπιινγή αξρείσλ ζε κηα ζπλδεδεκέλε ιίζηα, όπνπ θάζε αξρείν έρεη κηα εηηθέηα ηαπηνπνίεζεο. Μηα εθαξκνγή παξάγεη κηα αθνινπζία από αηηήκαηα πξόζβαζεο ζηα αξρεία ηεο ιίζηαο. Γηα λα

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

Η/Υ A ΤΑΞΕΩΣ ΑΕ 2010-2011. Συστήματα Αρίθμησης. Υποπλοίαρχος Ν. Πετράκος ΠΝ

Η/Υ A ΤΑΞΕΩΣ ΑΕ 2010-2011. Συστήματα Αρίθμησης. Υποπλοίαρχος Ν. Πετράκος ΠΝ Συστήματα Αρίθμησης Υποπλοίαρχος Ν. Πετράκος ΠΝ 1 Ειζαγωγή Τν bit είλαη ε πην βαζηθή κνλάδα κέηξεζεο. Είλαη κία θαηάζηαζε on ή off ζε έλα ςεθηαθό θύθισκα. Άιιεο θνξέο είλαη κία θαηάζηαζε high ή low voltage

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

Constructors and Destructors in C++

Constructors and Destructors in C++ Constructors and Destructors in C++ Σύνθεζη Πνιύ ζπρλά ζηε C++ κία θιάζε κπνξεί λα πεξηέρεη ζαλ κέιεδεδνκέλα αληηθείκελα άιισλ θιάζεσλ. Πνηα είλαη ε ζεηξά κε ηελ νπνία δεκηνπξγνύληαη θαη θαηαζηξέθνληαη

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

ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ. Ειζαγωγή ζηη Φωηογραθία. Χριζηάκης Σαζεΐδης EFIAP

ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ. Ειζαγωγή ζηη Φωηογραθία. Χριζηάκης Σαζεΐδης EFIAP ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ Ειζαγωγή ζηη Φωηογραθία Χριζηάκης Σαζεΐδης EFIAP 1 ΜΑΘΗΜΑ 6 ο Προγράμμαηα θωηογραθικών μηχανών Επιλογέας προγραμμάηων Μαο δίλεη ηε δπλαηόηεηα λα ειέγμνπκε ην άλνηγκα δηαθξάγκαηνο θαη

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

Απνηειέζκαηα Εξσηεκαηνινγίνπ 2o ηεηξάκελν 2011-12

Απνηειέζκαηα Εξσηεκαηνινγίνπ 2o ηεηξάκελν 2011-12 Απνηειέζκαηα Εξσηεκαηνινγίνπ 2o ηεηξάκελν 11-12 Project 6: Ταμίδη κε ηε Μεραλή ηνπ Φξόλνπ Υπεύζπλνη Καζεγεηέο: Ε. Μπηιαλάθε Φ. Αλησλάηνο Δρώηηζη 3: Πνηα από ηα παξαθάησ ΜΜΕ ηεξαξρείηε από πιεπξάο ζεκαζίαο;

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

Σήκαηα Β Α Γ Γ Δ Λ Η Σ Ο Ι Κ Ο Ν Ο Μ Ο Υ Γ Ι Α Λ Δ Ξ Η - ( 2 ) ΕΙΣΑΓΨΓΗ ΣΤΙΣ ΤΗΛΕΠΙΚΟΙΝΨΝΙΕΣ

Σήκαηα Β Α Γ Γ Δ Λ Η Σ Ο Ι Κ Ο Ν Ο Μ Ο Υ Γ Ι Α Λ Δ Ξ Η - ( 2 ) ΕΙΣΑΓΨΓΗ ΣΤΙΣ ΤΗΛΕΠΙΚΟΙΝΨΝΙΕΣ Σήκαηα 1 Β Α Γ Γ Δ Λ Η Σ Ο Ι Κ Ο Ν Ο Μ Ο Υ Γ Ι Α Λ Δ Ξ Η - ( 2 ) Σήκαηα Οξηζκόο ζήκαηνο Ταμηλόκεζε ζεκάησλ Σεηξέο Fourier Μεηαζρεκαηηζκόο Fourier Σπλέιημε Σπζρέηηζε θαη Φαζκαηηθή Ππθλόηεηα 2 Οξηζκόο Σήκαηνο

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

6 η Εργαζηηριακή Άζκηζη Επαλήθεσζη Λειηοσργίας Βαζικών Φλιπ-Φλοπ

6 η Εργαζηηριακή Άζκηζη Επαλήθεσζη Λειηοσργίας Βαζικών Φλιπ-Φλοπ 6 η Εργαζηηριακή Άζκηζη Επαλήθεσζη Λειηοσργίας Βαζικών Φλιπ-Φλοπ Σηα πιαίζηα ηεο έθηεο εξγαζηεξηαθήο άζθεζεο ζα ρξεζηκνπνηεζεί απνθιεηζηηθά ην πεξηβάιινλ αλάπηπμεο νινθιεξσκέλσλ θπθισκάησλ IDL-800 Digital

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

Η απνξξόθεζε ηνπ νξαηνύ θσηόο γίλεηαη κέζσ ρξσζηηθώλ νπζηώλ πνπ νλνκάδνληαη τλωροθύλλες.

Η απνξξόθεζε ηνπ νξαηνύ θσηόο γίλεηαη κέζσ ρξσζηηθώλ νπζηώλ πνπ νλνκάδνληαη τλωροθύλλες. ΦΩΣΟΤΝΘΔΗ Δλαιιαθηηθή δηεξγαζία παξαγσγήο ελέξγεηαο Υξεζηκνπνηείηαη από ηνπο νλνκαδόκελνπο θσηνζπλζεηηθνύο νξγαληζκνύο Οπζηαζηηθά ε αληίζηξνθε δηεξγαζία ηεο αλαπλνήο πλίζηαηαη ζηελ δέζκεπζε ειηαθήο ελέξγεηαο

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

Μονοψϊνιο. Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ.

Μονοψϊνιο. Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ. Μονοψϊνιο Ολιγοψώνιο Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ. Οπιακή αξία Δπηπξόζζεηα νθέιε από ηελ ρξήζε/θαηαλάισζε κηαο επηπξόζζεηε

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

ΠΑΡΑΡΣΗΜΑ Δ. ΔΤΡΔΗ ΣΟΤ ΜΔΣΑΥΗΜΑΣΙΜΟΤ FOURIER ΓΙΑΦΟΡΩΝ ΗΜΑΣΩΝ

ΠΑΡΑΡΣΗΜΑ Δ. ΔΤΡΔΗ ΣΟΤ ΜΔΣΑΥΗΜΑΣΙΜΟΤ FOURIER ΓΙΑΦΟΡΩΝ ΗΜΑΣΩΝ ΠΑΡΑΡΣΗΜΑ Δ. ΔΤΡΔΗ ΣΟΤ ΜΔΣΑΥΗΜΑΣΙΜΟΤ FOURIER ΓΙΑΦΟΡΩΝ ΗΜΑΣΩΝ Εδώ ζα ππνινγίζνπκε ην κεηαζρεκαηηζκό Fourier κεξηθώλ αθόκα ζεκάησλ, πξνζπαζώληαο λα μεθηλήζνπκε από ην κεηαζρεκαηηζκό Fourier γλσζηώλ ζεκάησλ

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

Οδηγίες τρήζης για λειηοσργία μεηαθοράς καναλιών ζε υηθιακό δέκηη OST-7060 HD

Οδηγίες τρήζης για λειηοσργία μεηαθοράς καναλιών ζε υηθιακό δέκηη OST-7060 HD Οδηγίες τρήζης για λειηοσργία μεηαθοράς καναλιών ζε υηθιακό δέκηη OST-7060 HD Γηα ηε δηεπθόιπλζή ζαο θαηά ην switch-off ηεο πεξηνρήο ηεο Πεινπνλλήζνπ έρνπκε πξνζζέζεη ζηνπο ςεθηαθνύο καο δέθηεο κία λέα,

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

Κβαντικοί Υπολογισμοί. Πέκπηε Γηάιεμε

Κβαντικοί Υπολογισμοί. Πέκπηε Γηάιεμε Κβαντικοί Υπολογισμοί Πέκπηε Γηάιεμε Kπθισκαηηθό Mνληέιν Έλαο θιαζηθόο ππνινγηζηήο απνηειείηαη από αγσγνύο θαη ινγηθέο πύιεο πνπ απνηεινύλ ηνπο επεμεξγαζηέο. Σηνπο θβαληηθνύο ε πιεξνθνξία βξίζθεηαη κέζα

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

ΕΝΤΟΛΕΣ WINDOWS ΚΑΙ UNIX

ΕΝΤΟΛΕΣ WINDOWS ΚΑΙ UNIX ΕΝΤΟΛΕΣ WINDOWS ΚΑΙ UNIX Σηότοι εργαζηηρίοσ Σην πιαίζην ηνπ ζπγθεθξηκέλνπ εξγαζηεξίνπ, νη θνηηεηέο ζα εμνηθεησζνύλ κε βαζηθέο εληνιέο δηθηπαθώλ πξσηνθόιισλ νη νπνίεο βξίζθνπλ εθαξκνγή ζε πεξηβάιινληα Windows

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

Ζαχαρίας Μ. Κοντοπόδης Εργαστήριο Λειτουργικών Συστημάτων ΙΙ

Ζαχαρίας Μ. Κοντοπόδης Εργαστήριο Λειτουργικών Συστημάτων ΙΙ Διαφάνεια 1 η ΕΚΚΙΝΗΣΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ ΚΑΙ ΕΙΣΟΔΟΣ ΣΤΟ BIOS UITILITY Τν ζπλεζέζηεξν πιήθηξν γηα ηελ είζνδν ζην BIOS Utility είλαη ην πιήθηξν Del. Παξόια απηά δηαθνξεηηθνί θαηαζθεπαζηέο, ρξεζηκνπνηνύλ δηαθνξεηηθά

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

ΘΔΚΑ ΡΖΠ ΑΛΑΓΛΩΟΗΠΖΠ

ΘΔΚΑ ΡΖΠ ΑΛΑΓΛΩΟΗΠΖΠ ΘΔΚΑ ΡΖΠ ΑΛΑΓΛΩΟΗΠΖΠ 1.Απηόο πνπ ζα αλαγλσξηζηεί απνπζηάδεη γηα πνιύ θαηξό. 2.Δπηζηξέθεη κε πιαζηή ηαπηόηεηα ή κεηακνξθσκέλνο. 3.Απνκνλώλνληαη ηα δύν πξόζσπα 4.Άξζε κεηακόξθσζεο 5.Απνθάιπςε 6.Ακθηβνιίεο-απνδεηθηηθά

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

ΕΓΧΕΙΡΙΔΙΟ ΕΚΔΟΗ 8.0.0

ΕΓΧΕΙΡΙΔΙΟ ΕΚΔΟΗ 8.0.0 ΕΓΧΕΙΡΙΔΙΟ ΕΚΔΟΗ 8.0.0 Γενικά Η έθδνζε 8.0.0 ηνπ ελόηεηεο: Business ERP, πεξηιακβάλεη λέεο ιεηηνπξγίεο πνπ αλαιύνληαη ζηηο παξαθάησ Γεληθόηεξε ιεηηνπξγία ηεο εθαξκνγήο Εκπνξηθή Δηαρείξηζε 7/2/2013 SingularLogic

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

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ Α ΛΤΚΔΙΟΤ Ζμεπομηνία: 18/12/10 Ώπα εξέτασηρ: 09:30-12:30 ΠΡΟΣΕΙΝΟΜΕΝΕ ΛΤ ΕΙ 1. Δίλεηαη ην πνιπώλπκν Αλ θαη., λα βξείηε ην ηειεπηαίν ςεθίν ηνπ αξηζκνύ έρνπκε:

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

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ. Οξηδόληηα θαη θαηαθόξπθε κεηαηόπηζε παξαβνιήο

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ. Οξηδόληηα θαη θαηαθόξπθε κεηαηόπηζε παξαβνιήο ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ Οξηδόληηα θαη θαηαθόξπθε κεηαηόπηζε παξαβνιήο 1 ε Δξαζηεξηόηεηα Αλνίμηε ην αξρείν «Μεηαηόπηζε παξαβνιήο.ggb». Με ηε καύξε γξακκή παξηζηάλεηαη ε γξαθηθή παξάζηαζε ηεο f(x)=αx 2 πνπ ζα ηελ

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

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ ΚΑΗ ΔΠΑΛ ΣΔΣΑΡΣΖ 25 ΜΑΨΟΤ 2016 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΑΡΥΔ ΟΗΚΟΝΟΜΗΚΖ ΘΔΧΡΗΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ - ΔΠΗΛΟΓΖ

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ ΚΑΗ ΔΠΑΛ ΣΔΣΑΡΣΖ 25 ΜΑΨΟΤ 2016 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΑΡΥΔ ΟΗΚΟΝΟΜΗΚΖ ΘΔΧΡΗΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ - ΔΠΗΛΟΓΖ ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ ΚΑΗ ΔΠΑΛ ΣΔΣΑΡΣΖ 25 ΜΑΨΟΤ 2016 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΑΡΥΔ ΟΗΚΟΝΟΜΗΚΖ ΘΔΧΡΗΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ - ΔΠΗΛΟΓΖ (Δλδεηθηηθέο Απαληήζεηο) ΘΔΜΑ Α Α1. α. Σωζηό β. Λάζνο

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

B-Δέλδξα. Τα B-δέλδξα ρξεζηκνπνηνύληαη γηα ηε αλαπαξάζηαζε πνιύ κεγάισλ ιεμηθώλ πνπ είλαη απνζεθεπκέλα ζην δίζθν.

B-Δέλδξα. Τα B-δέλδξα ρξεζηκνπνηνύληαη γηα ηε αλαπαξάζηαζε πνιύ κεγάισλ ιεμηθώλ πνπ είλαη απνζεθεπκέλα ζην δίζθν. B-Δέλδξα Τα B-δέλδξα ρξεζηκνπνηνύληαη γηα ηε αλαπαξάζηαζε πνιύ κεγάισλ ιεμηθώλ πνπ είλαη απνζεθεπκέλα ζην δίζθν. Δέλδξα AVL n = 2 30 = 10 9 (πεξίπνπ). 30

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

Οργάνωση και Δομή Παρουσιάσεων

Οργάνωση και Δομή Παρουσιάσεων Οργάνωση και Δομή Παρουσιάσεων Οη παξνπζηάζεηο κε βνήζεηα ηνπ ππνινγηζηή γίλνληαη κε πξνγξάκκαηα παξνπζηάζεσλ, όπσο ην OpenOffice.org Impress [1] θαη ην Microsoft Office PowerPoint [2]. Απηά ηα πξνγξάκκαηα

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

Διαηιμήζεις για Αιολικά Πάρκα. Κώδικες 28, 78 και 84

Διαηιμήζεις για Αιολικά Πάρκα. Κώδικες 28, 78 και 84 Διαηιμήζεις για Αιολικά Πάρκα Κώδικες 28, 78 και 84 Διαηιμήζεις για Αιολικά Πάρκα Οη Διαηιμήζεις για Αιολικά Πάρκα εθαξκόδνληαη γηα ηελ απνξξνθνύκελε ελέξγεηα από Αηνιηθά Πάξθα πνπ είλαη ζπλδεδεκέλα ζην

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

10). ΣΤΠΟΠΟΙΗΜΕΝΕ ΠΑΡΟΥΕ ΜΣ ΚΑΙ ΥΣ

10). ΣΤΠΟΠΟΙΗΜΕΝΕ ΠΑΡΟΥΕ ΜΣ ΚΑΙ ΥΣ 10). ΣΤΠΟΠΟΙΗΜΕΝΕ ΠΑΡΟΥΕ ΜΣ ΚΑΙ ΥΣ Σσποποιημένες παροτές ΥΣ Γηα ηελ ειεθηξνδόηεζε θάζε εζωηεξηθήο εγθαηάζηαζεο θαηαζθεπάδεηαη κία από ηηο «ηππνπνηεκέλεο» παξνρέο πνπ αλαθέξνληαη παξαθάηω. Γηα θάζε ηππνπνηεκέλε

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

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙΜΟ Α ΛΤΚΔΙΟΤ. Ημεπομηνία: 10/12/11 Ώπα εξέτασηρ: 09:30-12:30 ΠΡΟΣΔΙΝΟΜΔΝΔ ΛΤΔΙ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙΜΟ Α ΛΤΚΔΙΟΤ. Ημεπομηνία: 10/12/11 Ώπα εξέτασηρ: 09:30-12:30 ΠΡΟΣΔΙΝΟΜΔΝΔ ΛΤΔΙ ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙΜΟ Α ΛΤΚΔΙΟΤ Ημεπομηνία: 10/12/11 Ώπα εξέτασηρ: 09:30-12:30 ΠΡΟΣΔΙΝΟΜΔΝΔ ΛΤΔΙ Πρόβλημα 1: α) Να δείμεηε όηη αλ ζεηηθνί πξαγκαηηθνί αξηζκνί ηζρύεη: β) Αλ είλαη

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

ΜΑΘΗΜΑ / ΤΑΞΗ : ΗΛΕΚΤΡΟΛΟΓΙΑ/Γ ΛΥΚΕΙΟΥ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 08/09/2014

ΜΑΘΗΜΑ / ΤΑΞΗ : ΗΛΕΚΤΡΟΛΟΓΙΑ/Γ ΛΥΚΕΙΟΥ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 08/09/2014 ΔΙΑΓΩΝΙΣΜΑ ΕΚΠ. ΕΤΟΥΣ 204-205 ΜΑΘΗΜΑ / ΤΑΞΗ : ΗΛΕΚΤΡΟΛΟΓΙΑ/Γ ΛΥΚΕΙΟΥ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 08/09/204 A ΟΜΑΓΑ Οδηγία: Να γράυεηε ζηο ηεηράδιο ζας ηον αριθμό κάθε μιας από ηις παρακάηφ ερφηήζεις Α.-Α.8 και

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

iii. iv. γηα ηελ νπνία ηζρύνπλ: f (1) 2 θαη

iii. iv. γηα ηελ νπνία ηζρύνπλ: f (1) 2 θαη ΔΠΑΝΑΛΗΠΣΙΚΑ ΘΔΜΑΣΑ ΣΟ ΓΙΑΦΟΡΙΚΟ ΛΟΓΙΜΟ Μάρτιος 0 ΘΔΜΑ Να ππνινγίζεηε ηα όξηα: i ii lim 0 0 lim iii iv lim e 0 lim e 0 ΘΔΜΑ Γίλεηαη ε άξηηα ζπλάξηεζε '( ) ( ) γηα θάζε 0 * : R R γηα ηελ νπνία ηζρύνπλ:

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

Πολυεπίπεδα/Διασυμδεδεμέμα Δίκτυα

Πολυεπίπεδα/Διασυμδεδεμέμα Δίκτυα Πολυεπίπεδα/Διασυμδεδεμέμα Δίκτυα Κοιμωμικά δίκτυα (multiplex network) Έρεηε ινγαξηαζκό ζην Facebook? Έρεηε ινγαξηαζκό ζην LinkedIn? Έρεηε ινγαξηαζκό ζην Twitter? Αεροπορικές γραμμές της Ευρώπης(multiplex

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

ΜΕΛΕΣΗ E.O.K. ΜΕ ΑΙΘΗΣΗΡΑ ΘΕΗ

ΜΕΛΕΣΗ E.O.K. ΜΕ ΑΙΘΗΣΗΡΑ ΘΕΗ ΜΕΛΕΣΗ E.O.K. ΜΕ ΑΙΘΗΣΗΡΑ ΘΕΗ ΦΤΛΛΟ ΕΡΓΑΙΑ (Θεοδώρα Γιώηη, Νικόλας Καραηάζιος- Τπεύθσνη εκ/κος Λ. Παπαηζίμπα) ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΤΜΗΜΑ:.., ΗΜΕΡΟΜΗΝΙΑ:.// Σε ακαμίδην πνπ κπνξεί λα θηλείηαη ρσξίο ηξηβέο πάλσ

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

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ.. ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου έλαξμεο 09.30 ιήμεο 09.45 Σην παξαθάησ ζρήκα θαίλεηαη ηκήκα ελόο πνιενδνκηθνύ ζρεδίνπ κηαο πόιεο. Οη ζθηαζκέλεο

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

Έλαο πίνακας σσμβόλων ππνζηεξίδεη δύν βαζηθέο ιεηηνπξγίεο:

Έλαο πίνακας σσμβόλων ππνζηεξίδεη δύν βαζηθέο ιεηηνπξγίεο: Πίνακες Σσμβόλων Έλαο πίνακας σσμβόλων ππνζηεξίδεη δύν βαζηθέο ιεηηνπξγίεο: Εηζαγσγή ελόο ζηνηρείνπ Αλαδήηεζε ζηνηρείνπ κε δεδνκέλν θιεηδί Άιιεο ρξήζηκεο ιεηηνπξγίεο είλαη: Δηαγξαθή ελόο θαζνξηζκέλνπ ζηνηρείνπ

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

α) ηε κεηαηόπηζε x όηαλ ην ζώκα έρεη κέγηζην ξπζκό κεηαβνιήο ζέζεο δ) ην κέγηζην ξπζκό κεηαβνιήο ηεο ηαρύηεηαο

α) ηε κεηαηόπηζε x όηαλ ην ζώκα έρεη κέγηζην ξπζκό κεηαβνιήο ζέζεο δ) ην κέγηζην ξπζκό κεηαβνιήο ηεο ηαρύηεηαο Έξγν ελέξγεηα 3 (Λύζε) Σώκα κάδαο m = 4Kg εξεκεί ζηε βάζε θεθιηκέλνπ επηπέδνπ γσλίαο θιίζεο ζ κε εκζ = 0,6 θαη ζπλζ = 0,8. Τν ζώκα αξρίδεη λα δέρεηαη νξηδόληηα δύλακε θαη μεθηλά λα αλεβαίλεη ζην θεθιηκέλν

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

Q Η ζσνάρηηζη μέζοσ κόζηοσς μας δίνει ηο κόζηος ανά μονάδα παραγωγής. Q Η ζσνάρηηζη μέζοσ κόζηοσς μας δίνει ηο ζηαθερό κόζηος ανά μονάδα παραγωγής

Q Η ζσνάρηηζη μέζοσ κόζηοσς μας δίνει ηο κόζηος ανά μονάδα παραγωγής. Q Η ζσνάρηηζη μέζοσ κόζηοσς μας δίνει ηο ζηαθερό κόζηος ανά μονάδα παραγωγής ΜΙΚΡΟΟΙΚΟΝΟΜΙΚΗ ΘΕΩΡΙΑ ΣΟΜΟ Α Mάθημα 5: To παραγωγής σναρηήζεις κόζηοσς Η ζπλάξηεζε ζπλνιηθνύ θόζηνπο C FC VC Όπνπ FC= ην ζηαζεξό θόζηνο (ην θόζηνο γηα ηνλ ζηαζεξό παξαγσγηθό ζπληειεζηή) θαη VC= ην κεηαβιεηό

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

ΟΠΤΙΚΗ Α. ΑΝΑΚΛΑΣΖ - ΓΗΑΘΛΑΣΖ

ΟΠΤΙΚΗ Α. ΑΝΑΚΛΑΣΖ - ΓΗΑΘΛΑΣΖ ΟΠΤΙΚΗ Α. ΑΝΑΚΛΑΣΖ - ΓΗΑΘΛΑΣΖ. Μία αθηίλα θωηόο πξνζπίπηεη κε κία γωλία ζ ζηε επάλω επηθάλεηα ελόο θύβνπ από πνιπεζηέξα ν νπνίνο έρεη δείθηε δηάζιαζεο ε =,49 (ζρήκα ). Βξείηε πνηα ζα είλαη ε κέγηζηε γωλία

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

Δξγαιεία Καηαζθεπέο 1 Σάμε Δ Δ.Κ.Φ.Δ. ΥΑΝΗΩΝ ΠΡΩΣΟΒΑΘΜΗΑ ΔΚΠΑΗΓΔΤΖ. ΔΝΟΣΖΣΑ 2 ε : ΤΛΗΚΑ ΩΜΑΣΑ ΔΡΓΑΛΔΗΑ ΚΑΣΑΚΔΤΔ. Καηαζθεπή 1: Ογθνκεηξηθό δνρείν

Δξγαιεία Καηαζθεπέο 1 Σάμε Δ Δ.Κ.Φ.Δ. ΥΑΝΗΩΝ ΠΡΩΣΟΒΑΘΜΗΑ ΔΚΠΑΗΓΔΤΖ. ΔΝΟΣΖΣΑ 2 ε : ΤΛΗΚΑ ΩΜΑΣΑ ΔΡΓΑΛΔΗΑ ΚΑΣΑΚΔΤΔ. Καηαζθεπή 1: Ογθνκεηξηθό δνρείν Δξγαιεία Καηαζθεπέο 1 Δ.Κ.Φ.Δ. ΥΑΝΗΩΝ ΠΡΩΣΟΒΑΘΜΗΑ ΔΚΠΑΗΓΔΤΖ ΔΝΟΣΖΣΑ 2 ε : ΤΛΗΚΑ ΩΜΑΣΑ ΔΡΓΑΛΔΗΑ ΚΑΣΑΚΔΤΔ Καηαζθεπή 1: Ογθνκεηξηθό δνρείν Καηαζθεπάδνπκε έλα νγθνκεηξηθό δνρείν από πιαζηηθό κπνπθάιη λεξνύ

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

Μέζνδνη ραξαθηεξηζκνύ πιηθώλ Δξγαζηεξηαθή άζθεζε 8: Μαγλεηηθέο Μεηξήζεηο Ηκεξνκελία δηεμαγσγήο: 26/5/2010

Μέζνδνη ραξαθηεξηζκνύ πιηθώλ Δξγαζηεξηαθή άζθεζε 8: Μαγλεηηθέο Μεηξήζεηο Ηκεξνκελία δηεμαγσγήο: 26/5/2010 Μέζνδνη ραξαθηεξηζκνύ πιηθώλ Δξγαζηεξηαθή άζθεζε 8: Μαγλεηηθέο Μεηξήζεηο Ηκεξνκελία δηεμαγσγήο: 26/5/2010 ΕΙΑΓΩΓΗ: Τα δηάθνξα πιηθά, αλάινγα κε ηε ζπκπεξηθνξά ηνπο εληόο καγλεηηθνύ πεδίνπ δηαθξίλνληαη

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

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ.. ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου έλαξμεο 09.30 ιήμεο 09.45 Σην παξαθάησ ζρήκα θαίλεηαη ηκήκα ελόο πνιενδνκηθνύ ζρεδίνπ κηαο πόιεο. Οη ζθηαζκέλεο

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

Σύνθεζη ηαλανηώζεων. Έζησ έλα ζώκα πνπ εθηειεί ηαπηόρξνλα δύν αξκνληθέο ηαιαληώζεηο ηεο ίδηαο ζπρλόηεηαο πνπ πεξηγξάθνληαη από ηηο παξαθάησ εμηζώζεηο:

Σύνθεζη ηαλανηώζεων. Έζησ έλα ζώκα πνπ εθηειεί ηαπηόρξνλα δύν αξκνληθέο ηαιαληώζεηο ηεο ίδηαο ζπρλόηεηαο πνπ πεξηγξάθνληαη από ηηο παξαθάησ εμηζώζεηο: Σύνθεζη ηαλανηώζεων Α. Σύλζεζε δύν α.α.η ηεο ίδιας ζστνόηηηας Έζησ έλα ζώκα πνπ εθηειεί ηαπηόρξνλα δύν αξκνληθέο ηαιαληώζεηο ηεο ίδηαο ζπρλόηεηαο πνπ πεξηγξάθνληαη από ηηο παξαθάησ εμηζώζεηο: Η απνκάθξπλζε

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

ΑΡΥΔ ΟΙΚΟΝΟΜΙΚΗ ΘΔΩΡΙΑ ΛΤΔΙ ΓΙΑΓΩΝΙΜΑΣΟ ΚΔΦΑΛΑΙΟΤ 2

ΑΡΥΔ ΟΙΚΟΝΟΜΙΚΗ ΘΔΩΡΙΑ ΛΤΔΙ ΓΙΑΓΩΝΙΜΑΣΟ ΚΔΦΑΛΑΙΟΤ 2 ΑΥΔ ΟΙΚΟΝΟΜΙΚΗ ΘΔΩΙΑ ΛΤΔΙ ΙΑΩΝΙΜΑΣΟ ΚΔΦΑΛΑΙΟΤ 2 1: Λάζος (είλαη ηζνζθειήο ππεξβνιή) Α2: Λάζος (ην ζεηηθό πξόζεκν ζεκαίλεη όηη ε Πνζνζηηαία Μεηαβνιή Δηζνδήκαηνο θαη ε Πνζνζηηαία Μεηαβνιή Πνζόηεηαο ήηαλ

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

Σπληήξεζε ηξνθίκσλ ρσξίο ρεκηθά πξόζζεηα PROJECT B ΛΥΚΕΙΟΥ 2 014-15

Σπληήξεζε ηξνθίκσλ ρσξίο ρεκηθά πξόζζεηα PROJECT B ΛΥΚΕΙΟΥ 2 014-15 Σπληήξεζε ηξνθίκσλ ρσξίο ρεκηθά πξόζζεηα PROJECT B ΛΥΚΕΙΟΥ 2 014-15 Εηζαγσγή Οη ηερληθέο ζπληήξεζεο ηξνθίκσλ έρνπλ ζθνπό : α) λα παξεκπνδίζνπλ αλεπηζύκεηεο κεηαβνιέο ζηα ραξαθηεξηζηηθά (γεύζε - ρξώκα -

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

ΥΡΙΣΟΤΓΔΝΝΙΑΣΙΚΔ ΚΑΣΑΚΔΤΔ

ΥΡΙΣΟΤΓΔΝΝΙΑΣΙΚΔ ΚΑΣΑΚΔΤΔ ΥΡΙΣΟΤΓΔΝΝΙΑΣΙΚΔ ΚΑΣΑΚΔΤΔ 1) Υξηζηνπγελληάηηθα ειαηάθηα θάξηα ή θαδξάθη θάξηα ή θαδξάθη Τιηθά πνπ ζα ρξεηαζηνύκε: Υαξηί θάλζνλ καύξν γηα ην θόλην, πξάζηλν γηα ηα ειαηάθηα, θόθθηλν γηα ηα αζηεξάθηα Απιό

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

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου ΠΡΟΒΛΗΜΑ Σε έλα ηνπξλνπά βόιετ δήισζαλ ζπκκεηνρή νκάδεο Γπκλαζίσλ ηεο Κύπξνπ.

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

Δξγαζηεξηαθή άζθεζε 03. Σηεξενγξαθηθή πξνβνιή ζην δίθηπν Wulf

Δξγαζηεξηαθή άζθεζε 03. Σηεξενγξαθηθή πξνβνιή ζην δίθηπν Wulf Δξγαζηεξηαθή άζθεζε 03 Σηεξενγξαθηθή πξνβνιή ζην δίθηπν Wulf Ζιίαο Χαηδεζενδσξίδεο Οθηώβξηνο / Ννέκβξηνο 2004 Τη είλαη ην δίθηπν Wulf Δπίπεδν ζην νπνίν κπνξνύκε λα αλαπαξαζηήζνπκε ηξηζδηάζηαηα ζρήκαηα,

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

Μορθές Κακόβοσλοσ Κώδικα (Malicious Code)

Μορθές Κακόβοσλοσ Κώδικα (Malicious Code) Μορθές Κακόβοσλοσ Κώδικα (Malicious Code) Page 1 Υποπλοίαρτος Ν. Πεηράκος ΠΝ Αηδένηα Γνύξεηνη Ίππνη (Trojan Horses) Ινί (Viruses) Worms Root-kit Page 2 Γνύξεηνο Ίππνο (Trojan Horse) Οξηζκόο: Πξόγξακκα

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

ΛΙΜΝΗ ΤΣΑΝΤ. Σρήκα 1. Σρήκα 2

ΛΙΜΝΗ ΤΣΑΝΤ. Σρήκα 1. Σρήκα 2 ΛΙΜΝΗ ΤΣΑΝΤ Τν Σρήκα 1 δείρλεη ηελ αιιαγή ηεο ζηάζκεο ηεο Λίκλεο Τζαλη, ζηε Σαράξα ηεο Βόξεηαο Αθξηθήο. Η Λίκλε Τζαλη εμαθαλίζηεθε ηειείσο γύξσ ζην 20.000 π.χ., θαηά ηε δηάξθεηα ηεο ηειεπηαίαο επνρήο ησλ

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

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗ ΦΥΣΙΚΗ. Ύλη: Εσθύγραμμη Κίνηζη

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗ ΦΥΣΙΚΗ. Ύλη: Εσθύγραμμη Κίνηζη ΔΙΑΓΩΝΙΣΜΑ ΣΤΗ ΦΥΣΙΚΗ Είμαζηε ηυχεροί που είμαζηε δάζκαλοι Ον/μο:.. A Λσκείοσ Ύλη: Εσθύγραμμη Κίνηζη 8-11-2015 Θέμα 1 ο : 1. Η εμίζωζε θίλεζεο ελόο θηλεηνύ πνπ θηλείηαη επζύγξακκα είλαη ε x = 5t. Πνηα

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

ΗΜΔΡΟΜΗΝΙΑ. ΟΝΟΜΑΣΔΠΩΝΤΜΟ.. ΒΑΘΜΟΛΟΓΙΑ..

ΗΜΔΡΟΜΗΝΙΑ. ΟΝΟΜΑΣΔΠΩΝΤΜΟ.. ΒΑΘΜΟΛΟΓΙΑ.. ΗΜΔΡΟΜΗΝΙΑ. ΟΝΟΜΑΣΔΠΩΝΤΜΟ.. ΒΑΘΜΟΛΟΓΙΑ.. ΘΔΜΑ Α Σηηο εκηηειείο πξνηάζεηο Α.1 Α.4 λα γξάςεηε ζην ηεηξάδην ζαο ηνλ αξηζκό ηεο πξόηαζεο θαη, δίπια, ην γξάκκα πνπ αληηζηνηρεί ζηε θξάζε ε νπνία ηε ζπκπιεξώλεη

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

Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training. Dipl.Biol.cand.med. Stylianos Kalaitzis

Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training. Dipl.Biol.cand.med. Stylianos Kalaitzis Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training Dipl.Biol.cand.med. Stylianos Kalaitzis Stylianos Kalaitzis Μνλνϋβξηδηζκνο 1 Γπν γνλείο, εηεξόδπγνη γηα ηνλ αιθηζκό θάλνπλ παηδηά. Πνία ε πηζαλόηεηα

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

ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ. Εισαγωγή στη Φωτογραυία. Χριζηάκης Σαζεΐδης - EFIAP

ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ. Εισαγωγή στη Φωτογραυία. Χριζηάκης Σαζεΐδης - EFIAP ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ Εισαγωγή στη Φωτογραυία Χριζηάκης Σαζεΐδης - EFIAP 1 ΜΑΘΗΜΑ 3 ο ΚΛΕΙΣΡΟ ΣΑΥΤΣΗΣΑ ΚΛΕΙΣΡΟΤ-ΕΠΙΛΟΓΗ ΚΑΣΑΛΛΗΛΗ ΣΑΥΤΣΗΣΑ Σι είναι υωτογραυική μητανή; Από πνηα κέξε απνηειείηαη: 1. Φαθό

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

ΠΑΝΕΛΛΑΔΙΚΕ ΕΞΕΣΑΕΙ Γ ΣΑΞΗ ΗΜΕΡΗΙΟΤ ΓΕΝΙΚΟΤ ΛΤΚΕΙΟΤ & ΠΑΝΕΛΛΗΝΙΕ ΕΞΕΣΑΕΙ Γ ΣΑΞΗ ΗΜΕΡΗΙΟΤ ΕΠΑΛ (ΟΜΑΔΑ Β )

ΠΑΝΕΛΛΑΔΙΚΕ ΕΞΕΣΑΕΙ Γ ΣΑΞΗ ΗΜΕΡΗΙΟΤ ΓΕΝΙΚΟΤ ΛΤΚΕΙΟΤ & ΠΑΝΕΛΛΗΝΙΕ ΕΞΕΣΑΕΙ Γ ΣΑΞΗ ΗΜΕΡΗΙΟΤ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΠΑΝΕΛΛΑΔΙΚΕ ΕΞΕΣΑΕΙ Γ ΣΑΞΗ ΗΜΕΡΗΙΟΤ ΓΕΝΙΚΟΤ ΛΤΚΕΙΟΤ & ΠΑΝΕΛΛΗΝΙΕ ΕΞΕΣΑΕΙ Γ ΣΑΞΗ ΗΜΕΡΗΙΟΤ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΗΜΕΡΟΜΗΝΙΑ: /0/03 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΦΥΣΙΚΗ ΚΑΤΕΥΘΥΝΣΗΣ ΘΔΜΑ Α ΠΡΟΣΕΙΝΟΜΕΝΕ ΑΠΑΝΣΗΕΙ ΘΕΜΑΣΩΝ Α.

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

1 η Εργαζηηριακή Άζκηζη Ειζαγωγή

1 η Εργαζηηριακή Άζκηζη Ειζαγωγή 1 η Εργαζηηριακή Άζκηζη Ειζαγωγή A. Σσζκεσές Εργαζηηρίοσ Ηλεκηρονικής Ο πιηθόο εμνπιηζκόο ηνπ εξγαζηεξίνπ ειεθηξνληθήο πεξηιακβάλεη ηηο αθόινπζεο ζπζθεπέο: 1. Παικνγξάθνπο: Protec 6502 θαη Peak Tech 2020N

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

ΣΕΙ ΙΟΝΙΩΝ ΝΗΩΝ ΣΜΗΜΑ: ΣΕΥΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΣΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΥΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ Ρέππα Μαξγαξίηα

ΣΕΙ ΙΟΝΙΩΝ ΝΗΩΝ ΣΜΗΜΑ: ΣΕΥΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΣΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΥΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ Ρέππα Μαξγαξίηα ΣΕΙ ΙΟΝΙΩΝ ΝΗΩΝ ΣΜΗΜΑ: ΣΕΥΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΣΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΥΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2011-12 Ρέππα Μαξγαξίηα FORMAT, UNFORMAT Format format , όποσ = a:, b: Μνξθνπνηεί, δειαδή πξνεηνηκάδεη

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

TOOLBOOK (μάθημα 2) Δεκηνπξγία βηβιίνπ θαη ζειίδσλ ΠΡΟΑΡΜΟΓΗ: ΒΑΛΚΑΝΙΩΣΗ ΔΗΜ. ΕΚΠΑΙΔΕΤΣΙΚΟ ΠΕ19 1 TOOLBOOK ΜΑΘΗΜΑ 2

TOOLBOOK (μάθημα 2) Δεκηνπξγία βηβιίνπ θαη ζειίδσλ ΠΡΟΑΡΜΟΓΗ: ΒΑΛΚΑΝΙΩΣΗ ΔΗΜ. ΕΚΠΑΙΔΕΤΣΙΚΟ ΠΕ19 1 TOOLBOOK ΜΑΘΗΜΑ 2 TOOLBOOK (μάθημα 2) Δεκηνπξγία βηβιίνπ θαη ζειίδσλ ΕΚΠΑΙΔΕΤΣΙΚΟ ΠΕ19 1 Δημιουργία σελίδων και βιβλίων Έλα θαηλνύξην βηβιίν πεξηέρεη κία άδεηα ζειίδα κε έλα άδεην background. Δελ κπνξνύκε λα μερσξίζνπκε

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

Αντισταθμιστική ανάλυση

Αντισταθμιστική ανάλυση Θεσξήζηε έλαλ αιγόξηζκν Α πνπ ρξεζηκνπνηεί κηα δνκή δεδνκέλσλ Γ : Καηά ηε δηάξθεηα εθηέιεζεο ηνπ Α ε Γ πξαγκαηνπνηεί κία αθνινπζία από πξάμεηο. Παξάδεηγκα: Θπκεζείηε ην πξόβιεκα ηεο εύξεζεο-έλσζεο Δίρακε

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

Παιχνίδι γλωζζικής καηανόηζης με ζχήμαηα!

Παιχνίδι γλωζζικής καηανόηζης με ζχήμαηα! Cpyright 2013 Λόγος & Επικοινωνία // All rights Reserved Παιχνίδι γλωζζικής καηανόηζης με ζχήμαηα! Αυηό ηο παιχνίδι έχει ζηόχους: 1. ηελ εθγύκλαζε ηεο αθνπζηηθήο κλήκεο ησλ παηδηώλ 2. ηελ εμάζθεζε ζηελ

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

Ανάπτυξη Ελληνικής τεχνολογίας μηχανών ηλεκτροπαραγωγής ORC

Ανάπτυξη Ελληνικής τεχνολογίας μηχανών ηλεκτροπαραγωγής ORC Εθνικό Συνέδριο «Γεωθερμική Ηλεκτροπαραγωγή» Ξενοδοχείο Divani Caravel Αθήνα 20 Νοεμβρίου 2013 Ανάπτυξη Ελληνικής τεχνολογίας μηχανών ηλεκτροπαραγωγής ORC Α.Μπένου, Ι. Χωροπανίτης Τμήμα Γεωθερμικής Ενέργειας

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΠΟΥΔΕΣ ΣΤΙΣ ΦΥΣΙΚΕΣ ΕΠΙΣΤΗΜΕΣ ΓΕΝΙΚΑ ΜΑΘΗΜΑΤΙΚΑ ΙΙ - ΦΥΕ 0 7 Ινπλίνπ 009 Απαντήσειρ στιρ ασκήσειρ τηρ τελικήρ εξέτασηρ στιρ Σςνήθειρ Διαυοπικέρ Εξισώσειρ Αγαπηηέ θοιηηηή/ηπια,

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

HYUNDAI. Η δηαγλσζηηθή θίζζα ησλ Hyundai έρεη 12 επαθέο θαη ηνπνζεηείηαη ζηνλ ρώξν ηνπ θηλεηήξα

HYUNDAI. Η δηαγλσζηηθή θίζζα ησλ Hyundai έρεη 12 επαθέο θαη ηνπνζεηείηαη ζηνλ ρώξν ηνπ θηλεηήξα HYUNDAI ηα κνληέια ηεο Hyundai ππάξρνπλ ηέζζεξεηο δηαθνξεηηθνί ζπλδπαζκνί θσδηθώλ βιάβεο: κνλνςήθηνη, δηςήθηνη ηεηξαςήθηνη θαη θσδηθνί πνπ αθνινπζνύλ ηα πξσηόθνιια EOBD. Γιαγνωζηική Φίζζα Η δηαγλσζηηθή

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

Κόληξα πιαθέ ζαιάζζεο κε δηαζηάζεηο 40Υ40 εθ. Καξθηά 3 θηιά πεξίπνπ κε κήθνο ηξηπιάζην από ην πάρνο ηνπ μύινπ θπξί κεγάιν θαη ππνκνλή

Κόληξα πιαθέ ζαιάζζεο κε δηαζηάζεηο 40Υ40 εθ. Καξθηά 3 θηιά πεξίπνπ κε κήθνο ηξηπιάζην από ην πάρνο ηνπ μύινπ θπξί κεγάιν θαη ππνκνλή Δξγαιεία Καηαζθεπέο 1 Δ.Κ.Φ.Δ. ΥΑΝΙΩΝ ΠΡΩΣΟΒΑΘΜΙΑ ΔΚΠΑΙΓΔΤΗ ΔΝΟΣΗΣΑ 10 ε : ΜΗΥΑΝΙΚΗ ΜΔΡΟ Β ΠΙΔΗ ΔΡΓΑΛΔΙΑ ΚΑΣΑΚΔΤΔ Καηαζθεπή 1: Καξέθια θαθίξε Όξγαλα Τιηθά Κόληξα πιαθέ ζαιάζζεο κε δηαζηάζεηο 40Υ40 εθ.

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

Γίθησα ποσ παρέτοληαη από τρήζηες: Κίλεηρα, ηετλοιογίες θαη αλοητηά δεηήκαηα Λεσηέρες Μακάηας (lmamatas@ee.ucl.ac.uk)

Γίθησα ποσ παρέτοληαη από τρήζηες: Κίλεηρα, ηετλοιογίες θαη αλοητηά δεηήκαηα Λεσηέρες Μακάηας (lmamatas@ee.ucl.ac.uk) Σεκηλάξην Τνκέα Λνγηζκηθνύ Γίθησα ποσ παρέτοληαη από τρήζηες: Κίλεηρα, ηετλοιογίες θαη αλοητηά δεηήκαηα Λεσηέρες Μακάηας (lmamatas@ee.ucl.ac.uk) Περίιευε παροσζίαζες Τη είλαη ηα «Γίθηπα πνπ παξέρνληαη

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

Ονομαηεπώνυμο: Μάθημα: Υλη: Δπιμέλεια διαγωνίζμαηος: Αξιολόγηζη :

Ονομαηεπώνυμο: Μάθημα: Υλη: Δπιμέλεια διαγωνίζμαηος: Αξιολόγηζη : Ονομαηεπώνυμο: Μάθημα: Υλη: Δπιμέλεια διαγωνίζμαηος: Αξιολόγηζη : Θέμα Α. Σηιρ επωηήζειρ πολλαπλήρ επιλογήρ πος ακολοςθούν ζημειώζηε ζηο γπαπηό ζαρ ηον απιθμό ηηρ επώηηζηρ και δίπλα ηην ένδειξη ηηρ ζωζηήρ

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

Άζκηζη ζτέζης κόζηοσς-τρόνοσ (Cost Time trade off) Καηαζκεσαζηική ΑΔ

Άζκηζη ζτέζης κόζηοσς-τρόνοσ (Cost Time trade off) Καηαζκεσαζηική ΑΔ Άζκηζη ζτέζης κόζηοσς-τρόνοσ (Cost Time trade off) Καηαζκεσαζηική Δίζηε μησανικόρ διοίκηζηρ μεγάληρ καηαζκεςαζηικήρ εηαιπείαρ και καλείζηε να ςλοποιήζεηε ηο έπγο πος πεπιγπάθεηαι από ηον Πίνακα 1. Κωδ.

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

(Ενδεικηικές Απανηήζεις) ΘΔΜΑ Α. Α1. Βιέπε απόδεημε Σει. 262, ζρνιηθνύ βηβιίνπ. Α2. Βιέπε νξηζκό Σει. 141, ζρνιηθνύ βηβιίνπ

(Ενδεικηικές Απανηήζεις) ΘΔΜΑ Α. Α1. Βιέπε απόδεημε Σει. 262, ζρνιηθνύ βηβιίνπ. Α2. Βιέπε νξηζκό Σει. 141, ζρνιηθνύ βηβιίνπ ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ ΚΑΗ ΔΠΑΛ (ΟΜΑΓΑ Β ) ΣΔΣΑΡΣΖ 18 ΜΑΪΟΤ 16 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ (ΝΔΟ ΤΣΖΜΑ) ΚΑΣΔΤΘΤΝΖ (ΠΑΛΑΗΟ ΤΣΖΜΑ) (Ενδεικηικές Απανηήζεις) ΘΔΜΑ

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

5 η Δργαζηηριακή Άζκηζη Κσκλώμαηα Γσαδικού Αθροιζηή/Αθαιρέηη

5 η Δργαζηηριακή Άζκηζη Κσκλώμαηα Γσαδικού Αθροιζηή/Αθαιρέηη 5 η Δργαζηηριακή Άζκηζη Κσκλώμαηα Γσαδικού Αθροιζηή/Αθαιρέηη Σηα πιαίζηα ηεο πέκπηεο εξγαζηεξηαθήο άζθεζεο ζα ρξεζηκνπνηεζεί απνθιεηζηηθά ην πεξηβάιινλ αλάπηπμεο νινθιεξσκέλσλ θπθισκάησλ IDL-800 Digital

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

Δπαστηπιότητα 1 - ανάπτςξη, μεταγλώττιση, αποσυαλμάτωση και. εκτέλεση ππογπάμματορ

Δπαστηπιότητα 1 - ανάπτςξη, μεταγλώττιση, αποσυαλμάτωση και. εκτέλεση ππογπάμματορ 1 Δπαστηπιότητα 1 - ανάπτςξη, μεταγλώττιση, αποσυαλμάτωση και εκτέλεση ππογπάμματορ Κάζε πξσί ν Karel μππλάεη ζην θξεβάηη ηνπ όηαλ έλα ξνκπόη-εθεκεξηδνπώιεο ηνπ πεηάεη ηελ εθεκεξίδα, πνπ αλαπαξηζηάλεηαη

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