4.1 Βασικές Αρχές Σχεδιασμού και Αρχιτεκτονική Πλατφόρμας Λογισμικού

Σχετικά έγγραφα
25SMEs2009 ΠΑΡΑΔΟΤΕΑ ΕΝΟΤΗΤΑΣ ΕΡΓΑΣΙΩΝ 4: ΥΛΙΚΟ ΚΑΙ ΛΟΓΙΣΜΙΚΟ ΠΛΑΤΦΟΡΜΑΣ ΑΙΣΘΗΤΗΡΩΝ

25SMEs2009 ΠΑΡΑΔΟΤΕΑ ΕΝΟΤΗΤΑΣ ΕΡΓΑΣΙΩΝ 5: ΟΛΟΚΛΗΡΩΣΗ ΣΥΣΤΗΜΑΤΟΣ. 5.1 Ολοκλήρωση Υποσυστημάτων Πλατφόρμας Διαχείρισης Αισθητήρων

25SMEs2009 ΠΑΡΑΔΟΤΕΑ ΕΝΟΤΗΤΑΣ ΕΡΓΑΣΙΩΝ 4: ΥΛΙΚΟ ΚΑΙ ΛΟΓΙΣΜΙΚΟ ΠΛΑΤΦΟΡΜΑΣ ΑΙΣΘΗΤΗΡΩΝ. 4.2 Πλατφόρμα Διαχείρισης Αισθητήρων

Value Added Services Integrated System

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

ΓΕΝΙΚΗ ΠΕΡΙΓΡΑΦΗ... 3 DB TOOLS (MS SQL SERVER)...

Το πρόγραμμα συγχρηματοδοτείται 75% από το Ευρωπαϊκό κοινωνικό ταμείο και 25% από εθνικούς πόρους.

Εγχειρίδιο Διαχειριστή. (Υπηρεσία Ενημέρωσης για Εκπαιδευτικές και Πολιτισμικές Δράσεις)

Εγχειρίδιο Διαχειριστή. (Υπηρεσία Αναζήτησης Συνεπιβατών)

Document Scanning System Ιανουάριος, 2014

Βάσεις Δεδομένων 2η εργαστηριακή άσκηση

Λογισμική Εφαρμογή Διαχείρισης Ερωτηματολογίων ΟΔΗΓΟΣ ΧΡΗΣΗΣ System Συμβουλευτική Α.Ε

6.3 Αποτελέσματα Δοκιμαστικής Λειτουργίας, Αξιολόγηση και Προτάσεις Βελτίωσης και Έρευνας

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ.

Speed-0 WMP: Web and Mobile Platform Software Requirements Specification

Εγχειρίδιο Χρήσης Εφαρμογής Συστήματος Διαχείρισης Λογισμικού

Παρακάτω προτείνεται μια αλληλουχία ενεργειών την οποία ο χρήστης πρέπει να ακολουθήσει για να αξιοποιήσει τις δυνατότητες της εφαρμογής.

Εγχειρίδιο Επιμελητή Δράσεων. (Υπηρεσία Ενημέρωσης για Εκπαιδευτικές και Πολιτισμικές Δράσεις)

Εγχειρίδιο Χρήσης-Οδηγός Εκπαίδευσης Χρηστών. - Δήμος Δέλτα - Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης

Εισαγωγή στην Access 2007

Πλατφόρμα Συνεργατικότητας (Collaboration Platform) ΧΡΗΣΗΣ. MRB Hellas System Συμβουλευτική Α.Ε

Οδηγίες Συμπλήρωσης της Έκθεσης Ολοκλήρωσης

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης

Epsilon Net PYLON Platform

Συνοπτικός Οδηγός Χρήσης του MySQL Workbench

Διαχείριση Βάσης Δεδομένων (dbadmin)

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

ΚΑΛΟΥΠΩΜΑΤΑ & ΜΕΤΑΤΡΟΠΕΣ

Οριστική Δήλωση και Βεβαιώσεις Αμοιβών Επαγγελματιών

Ενότητα. Σχεδίαση Βάσεων Δεδομένων

Υπολογισμός και Υποβολή Περιοδικής Δήλωσης ΦΠΑ

Εισαγωγή στην εφαρμογή Βασική Σελίδα (Activity) Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 4 ο Εργαστήριο -

Οδηγίες Χρήσης (προσθήκη νέου άρθρου σε σελίδα iκαταστήματος)

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

«Σύστημα ΔΕΠ» ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ. Έκδοση 1.1

Διαδικτυακή Πύλη (web portal) ΟΔΗΓΟΣ ΧΡΗΣΗΣ System Συμβουλευτική Α.Ε

Βιοϊατρική τεχνολογία

Υπολογιστικά Συστήματα

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Εφαρμογή Διαχείρισης Ψηφιακής Πληροφορίας ΟΔΗΓΟΣ ΧΡΗΣΗΣ System Συμβουλευτική Α.Ε

«Οδηγίες χρήσης εφαρμογής Ενιαίου Συστήματος Πληρωμών»

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

ΤΕΙ Πελοποννήσου Τμήμα Πληροφορικής. Οδηγίες Εγκατάστασης VPN Σύνδεσης στο ΤΕΙ Πελοποννήσου

Singular Report Generator. Σχ 1 ηµιουργία Καταστάσεων SRG

Διαδικτυακό Περιβάλλον Διαχείρισης Ασκήσεων Προγραμματισμού

Δημιουργία και Υποβολή Περιοδικής ΦΠΑ

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

1. Απαιτήσεις εργασίας

EBSCOhost Research Databases

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

Πληροφορική & Τηλεπικοινωνίες. K18 - Υλοποίηση Συστημάτων Βάσεων Δεδομένων Χειμερινό Εξάμηνο

Σχηματίζοντας Γραφικές Παραστάσεις για Ημίτονο και Συνημίτονο και Ελέγχοντας Περιορισμούς σε Συστάδες Καρτών Τόμπολας

ΕΝΟΤΗΤΑ 6 LCD ΟΘΟΝΕΣ

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Σχεδίαση Βάσεων Δεδομένων

Εγχειρίδιο λειτουργιών χρήστη (αποφοίτου) στο Mathiteia4u

CloudBox!: Ένα εργαλείο cloud αποθήκευσης αρχείων με κατανεμημένο τρόπο

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

ΟΓΗΓΙΕΣ ΧΡΗΣΗΣ ΗΛΕΚΤΡΟΝΙΚΟΥ ΜΗΤΡΩΟΥ ΑΠΟΒΛΗΤΩΝ. Draft version

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 10 Ο. Δομές Ενώσεις Απαριθμητοί τύποι δεδομένων ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΥ ΣΥΣΤΗΜΑΤΟΣ (ΟΠΣ) ΓΙΑ ΤΗΝ ΠΡΟΓΡΑΜΜΑΤΙΚΗ ΠΕΡΙΟΔΟ ΣΕΣ

Το συγκεκριμένο εγχειρίδιο δημιουργήθηκε για να βοηθήσει την κατανόηση της διαδικασίας Office Management (Ημερολόγιο Λογιστή). Παρακάτω προτείνεται

Ανοίξτε την εικόνα Hel_MDSGEO και δημιουργήστε δύο έγχρωμα σύνθετα ένα σε πραγματικό χρώμα (True color) και ένα σε ψευδοέχρωμο υπέρυθρο (CIR)

Εγχειρίδιο διαχείρισης χρηστών και λιστών διανομής για τον Υπεύθυνο Φορέα του Δικτύου "Σύζευξις" -1-

Αντικειμενοστρεφής Προγραμματισμός

Εγχειρίδιο Παρόχου. (Υπηρεσία Αναζήτησης Συνεπιβατών)

ΕΡΩΤΗΜΑΤΟΛΟΓΙΟ ΞΕΝΟΔΟΧΕΙΑΚΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ (Hotel Questionnaire) Εγχειρίδιο χρήσης (Demo Manual)

Σύντομη περιγραφή 5. Για να ξεκινήσετε 6. Οι οθόνες του προγράμματος 8. Εγκατάσταση προγράμματος 6 Δημιουργία κωδικών χρήστη 7

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΥ ΣΥΣΤΗΜΑΤΟΣ (ΟΠΣ) ΓΙΑ ΤΗΝ ΠΡΟΓΡΑΜΜΑΤΙΚΗ ΠΕΡΙΟΔΟ ΣΕΣ

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ LIVETRIP TRAVELLER

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε.

ΕΛΕΓΧΟΣ ΚΑΙ ΕΞΑΓΩΓΗ ΤΩΝ ΔΕΔΟΜΕΝΩΝ ΜΕΤΡΗΣΗΣ ΤΟΥ ΤΡΑΧΥΜΕΤΡΟΥ DIAVITE COMPACT ΜΕ ΤΗΝ ΧΡΗΣΗ ΤΟΥ ΛΟΓΙΣΜΙΚΟΥ HERCULES


Ηλεκτρονικό Μητρώο Αποβλήτων Παντελής Πεκάκης

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ «ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΔΙΑΔΡΑΣΤΙΚΗΣ ΔΙΑΔΙΚΤΥΑΚΗΣ ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΕΞΥΠΗΡΕΤΗΣΗ ΑΣΘΕΝΩΝ ΣΥΜΒΕΒΛΗΜΕΝΟΥΣ ΜΕ ΤΟΝ Ε.Ο.Π.Υ.

Εγχειρίδιο της εφαρμογής αναπαραγωγής CD V2.6 i. Εγχειρίδιο της εφαρμογής αναπαραγωγής CD V2.6

Διαχείριση Έργων Πληροφορικής Εργαστήριο

ΗY335: Δίκτυα Υπολογιστών Χειμερινό Εξάμηνο Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Διδάσκουσα: Μαρία Παπαδοπούλη

Εκτύπωση Γενικού Ημερολογίου

Υπηρεσία διαμοιρασμού αρχείων

Οδηγός Παρακολούθησης καταγραφών συστήματος i. Οδηγός Παρακολούθησης καταγραφών συστήματος

Διαδικασία Συγκεντρωτικές Καταστάσεις ΚΕΠΥΟ

Εγχειρίδιο Χρήσης Περιγραφή της Υπηρεσίας e-ραντεβου

Παρακάτω προτείνεται μια αλληλουχία ενεργειών την οποία ο χρήστης πρέπει να ακολουθήσει για να αξιοποιήσει τις δυνατότητες της εφαρμογής.

Κωδικός: <Κωδ.Αρ.Εγγράφου/ΚωδικόΌνομαΈργου/Αρ. Έκδοσης> <Company Name> <Όνομα - Κωδικό Όνομα Έργου> Έγγραφο Περιγραφής Σχεδίου Λογισμικού

Αικατερίνη Καμπάση, PhD. Τμήμα Προστασίας και Συντήρησης Πολιτισμικής Κληρονομιάς Α.Τ.Ε.Ι. Ιονίων Νήσων

Ε Γ Χ Ε Ι Ρ Ι Δ Ι Ο Ο Δ Η Γ Ι Ω Ν Χ Ρ Η Σ Η Σ

Αφού ολοκληρώσετε την ενημέρωση των στοιχείων στις λίστες, μπορείτε να καταχωρήσετε τη διασάφηση εισαγωγής.

Εργασία «Διαχείριση Δικτύων» Ιούνιος 2014, Θεσ/νίκη

ΠΑ-24γ Εγχειρίδιο Χρήσης Δ.Δ.Π. Του Δήμου Αιγάλεω

Εγχειρίδιο χρήσης Intalio Designer Εγχειρίδιο χρήσης Intalio Designer

Δομημένος Προγραμματισμός

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι

ΧΡΗΣΗ ΤΗΣ ΕΦΑΡΜΟΓΗΣ (αρ. έκδοσης ) ΓΙΑ ΤΗΝ ΕΞΟΦΛΗΣΗ ΛΟΓΑΡΙΑΣΜΩΝ ΔΕΗ - ΟΤΕ ΕΥΑΘ WIND (εφαρμόζεται αντίστοιχα στις ΔΕΥΑ)

Πίνακας περιεχομένων

Οδηγός καταχώρισης στοιχείων στην Ηλεκτρονική Πύλη Επαγγελματικής Μάθησης

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

Field Service Management ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ

Transcript:

25SMEs2009 ΠΑΡΑΔΟΤΕΑ ΕΝΟΤΗΤΑΣ ΕΡΓΑΣΙΩΝ 4: ΥΛΙΚΟ ΚΑΙ ΛΟΓΙΣΜΙΚΟ ΠΛΑΤΦΟΡΜΑΣ ΑΙΣΘΗΤΗΡΩΝ 4.1 Βασικές Αρχές Σχεδιασμού και Αρχιτεκτονική Πλατφόρμας Λογισμικού

REVISION HISTORY Revision Description of Changes Author Date Draft #1 First draft revision. PRISMA 11/05/2013 Draft #2 Final draft revision. PRISMA 10/06/2013 Παραδοτέο 4.1: Βασικές αρχές σχεδιασμού και αρχιτεκτονική πλατφόρμας λογισμικού Περίληψη: Περιγραφή των βασικών αρχών σχεδιασμού και της αρχιτεκτονικής της πλατφόρμας λογισμικού που αναπτύχθηκε για τη συλλογή και διαχείριση των μετρήσεων που λαμβάνονται από το οπτικό δίκτυο αισθητήρων. Συγγραφική Ομάδα: Σεραφείμ Κατσικάς Ηλιάνα Καραμπασιάδη Παρασκευάς Κουρής Κωνσταντίνα Μερμικλή Σελίδα 2

ΠΕΡΙΕΧΟΜΕΝΑ 1 Εισαγωγή... 5 2 Περιγραφή Αρχιτεκτονικής... 6 3 Βάση Δεδομένων... 7 3.1 Διάγραμμα σχέσεων... 7 3.2 Πίνακες... 9 3.2.1 TBL_SITE... 9 3.2.2 TBL_USERS... 9 3.2.3 TBL_MEASUREMENT_LOCATION... 9 3.2.4 TBL_MEASUREMENT_LOCATION_PROP... 10 3.2.5 TBL_MEASUREMENT_EVENT... 11 3.2.6 TBL_STATUS_PARAMETER... 11 3.2.7 TBL_STATUS_PARAMETER_PROP... 12 3.2.8 TBL_STATUS_PARAMETER_REL... 13 3.2.9 TBL_ML_SP_REL... 13 3.2.10 TBL_STATUS_PARAMETER_VAL... 14 4 Βιβλιοθήκη SensorsHandler... 15 4.1 Κλάση InterDB... 15 4.1.1 InterDB... 15 4.1.2 SetConnectionString... 16 4.1.3 InsertNewMeasurement... 16 4.2 Κλάση OptSensor... 16 4.2.1 OptSensor... 17 4.2.2 ChangeCentralFreq... 17 4.3 Κλάση Sm130Socket... 17 4.3.1 Connect... 18 4.3.2 Disconnect... 18 4.3.3 SendSm130Command... 18 4.3.4 ReadSm130Data... 18 4.4 Κλάση Interrogator... 18 4.4.1 Λογικό Διάγραμμα... 19 4.4.2 Events... 20 Σελίδα 3

4.4.3 Properties... 21 4.4.4 Methods... 21 5 Vasis Monitor... 23 5.1 Περιγραφή... 23 5.2 Στοιχεία... 24 5.2.1 Διάγραμμα Επιταχυνσιομέτρου... 24 5.2.2 Στοιχείο Αισθητήρα... 25 6 Vasis DAS... 26 6.1 Γραφήματα... 26 6.1.1 Time Graph... 26 6.1.2 2 Axis Time Graph... 26 6.1.3 Real Values Time Graph... 27 6.1.4 2 Axis Real Values Time Graph... 27 6.1.5 Parameter vs Parameter Time Graph... 28 6.1.6 Reviews... 29 6.1.7 Status Time Graph... 29 Σελίδα 4

1 ΕΙΣΑΓΩΓΗ Σκοπός του παρόντος εγγράφου είναι η αναλυτική περιγραφή των αρχών σχεδιασμού και της αρχιτεκτονικής της πλατφόρμας λογισμικού που αναπτύχθηκε για τη συλλογή και διαχείριση των μετρήσεων που λαμβάνονται από το οπτικό δίκτυο αισθητήρων. Σελίδα 5

2 ΠΕΡΙΓΡΑΦΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η πλατφόρμα λογισμικού, η οποία αναπτύχθηκε στα πλαίσια του παρόντος έργου, αποτελείται από τα παρακάτω υποσυστήματα: Βάση Δεδομένων: Αποθήκευση των μετρήσεων για διατήρηση ιστορικού και δυνατότητα περαιτέρω ανάλυσης τους. Βιβλιοθήκη SensorsHandler: Βιβλιοθήκη η οποία υλοποιεί την επικοινωνία με τον Interrogator για τη λήψη των μετρήσεων από τους αισθητήρες και την αποθήκευσή τους στη βάση δεδομένων. VASIS Monitor: Λογισμικό για την παρακολούθηση των μετρήσεων σε πραγματικό χρόνο. VASIS DAS: Λογισμικό για την ανάλυση των μετρήσεων και τη δημιουργία γραφημάτων off-line. Για τις ανάγκες του οπτικού δικτύου αισθητήρων, σχεδιάστηκε κατάλληλη βάση δεδομένων στην οποία αποθηκεύονται πληροφορίες για τον κάθε αισθητήρα καθώς και όλες οι μετρήσεις που λαμβάνονται από αυτούς. Επιπλέον, αναπτύχθηκε ειδική βιβλιοθήκη σε C#, η SensorsHandler.dll, η οποία υλοποιεί την επικοινωνία με τον Interrogator μέσω πρωτοκόλλου TCP/IP, αναγνωρίζει τους διάφορους αισθητήρες που είναι συνδεδεμένοι, λαμβάνει τις μετρήσεις και τις αποθηκεύει στη βάση δεδομένων. Το λογισμικό VASIS Monitor χρησιμοποιεί τη βιβλιοθήκη SensorsHandler.dll για τη σύνδεση με τον Interrogator, την προβολή των διαφόρων αισθητήρων και τη λήψη και αποθήκευση των μετρήσεων σε πραγματικό χρόνο. Το λογισμικό VASIS DAS συνδέεται με τη βάση δεδομένων και εξάγει τις μετρήσεις για περαιτέρω ανάλυση τους καθώς και τη δημιουργία διαφόρων γραφημάτων που επιλέγει ο χρήστης. ΕΙΚΟΝΑ 1: ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΛΟΓΙΣΜΙΚΟΥ Σελίδα 6

3 ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ Τα δεδομένα τα οποία λαμβάνονται από τον interrogator αποθηκεύονται σε μία βάση δεδομένων. Η βάση που επιλέχθηκε είναι η Oracle Database. Η δομή της βάσης δεδομένων και η αποτύπωση των σχέσεων φαίνεται στο παρακάτω διάγραμμα. 3.1 Διάγραμμα σχέσεων Τα διαγράμματα των σχέσεων της βάσης δίνονται στις παρακάτω εικόνες. Για την καλύτερη οπτική αποτύπωση των πινάκων της βάσης δεδομένων, κρίθηκε σκόπιμο να παρουσιαστούν σε τρία διαφορετικά μέρη. Έτσι η πλήρης περιγραφή φαίνεται στις εικόνες 1,2 και 3. Η εικόνα 1 περιγράφει τις σχέσεις μεταξύ TBL_SITE TBL_USER TBL_MEASUREMENT_LOCATION TBL_MEASUREMENT_LOCATION_PROP TBL_MEASUREMENT_EVENT ΕΙΚΟΝΑ 2: ΤΟ ΔΙΑΓΡΑΜΜΑ ΠΙΝΑΚΩΝ ΚΑΙ ΤΩΝ ΣΧΕΣΕΩΝ ΤΗΣ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ Στην εικόνα 2 εμφανίζονται οι σχέσεις των παρακάτω πινάκων TBL_STATUS_PARAMETER TBL_STATUS_PARAMETER_PROP TBL_STATUS_PARAMETER_REL TBL_STATUS_PARAMETER_VAL Σελίδα 7

ΕΙΚΟΝΑ 3: ΤΟ ΔΙΑΓΡΑΜΜΑ ΠΙΝΑΚΩΝ ΚΑΙ ΤΩΝ ΣΧΕΣΕΩΝ ΤΗΣ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ Στην εικόνα 3 εμφανίζονται οι σχέσεις των παρακάτω πινάκων TBL_MEASUREMENT_LOCATION TBL_STATUS_PARAMETER TBL_STATUS_PARAMETER_REL TBL_ML_SP_REL ΕΙΚΟΝΑ 4: ΤΟ ΔΙΑΓΡΑΜΜΑ ΠΙΝΑΚΩΝ ΚΑΙ ΤΩΝ ΣΧΕΣΕΩΝ ΤΗΣ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ Σελίδα 8

3.2 Πίνακες Παρακάτω θα δοθεί μια λεπτομερής περιγραφή του εκάστοτε πίνακα της βάσης δεδομένων. Επίσης θα δοθούν οι περιγραφές των στηλών του εκάστοτε πίνακα. 3.2.1 TBL_SITE Ο πίνακας TBL_SITE δίνει την δυνατότητα να χωρίσουμε το πεδίο των μετρήσεών μας σε επιμέρους υποπεδία. Έτσι κάθε υποπεδίο θα έχει το δικό του SITE_ID, NAME και DSCR. Παρακάτω δίνεται η επεξήγηση της κάθε στήλης του πίνακα TBL_SITE. TBL_ SITE COLUMN TYPE DESCRIPTION SITE_ID (PK) NUMBER(3) To ID του κάθε πεδίου NAME NVARCHAR2(120) Το χαρακτηριστικό όνομα του κάθε πεδίου DSCR NVARCHAR2(1000) Μικρή περιγραφή για το κάθε πεδίο 3.2.2 TBL_USERS Ο πίνακας TBL_USERS της βάσης δεδομένων χρησιμοποιείται για να αποθηκεύει όλες τις πληροφορίες για τους χρήστες που χρησιμοποιούν την πλατφόρμα του VASIS. Παρακάτω παρουσιάζονται αναλυτικά οι στήλες του πίνακα και δίνεται και μια μικρή περιγραφή. TBL_USERS COLUMN TYPE DESCRIPTION USER_ID (PK) NUMBER(3) Το ID του χρήστη USER_NAME NVARCHAR2(120) Το όνομα χρήστη (username) FIRST_NAME NVARCHAR2(120) To όνομα του χρήστη LAST_NAME NVARCHAR2(120) Το επώνυμο του χρήστη ID_NUMBER NVARCHAR2(120) Αν υπάρχει κάποιο ID για τον εκάστοτε χρήστη. PASSWORD NVARCHAR2(20) Ο κωδικός του χρήστη ADMIN NUMBER(1) Δηλώνεται αν είναι διαχειριστής του συστήματος ο συγκεκριμένος χρήστης ή όχι. (1 Διαχειριστής, 0 απλός χρήστης) 3.2.3 TBL_MEASUREMENT_LOCATION Ο πίνακας TBL_MEASUREMENT_LOCATION περιέχει τα διάφορα σημεία μέτρησης του οπτικού δικτύου αισθητήρων. Στον παρακάτω πίνακα περιγράφεται και επεξήγεται αναλυτικά. Σελίδα 9

TBL_MEASUREMENT_LOCATION COLUMN TYPE DESCRIPTION MEASUREMENT_LOCATION_ID (PK) NUMBER(5) Το ID του MEASUREMENT LOCATION SITE_ID (PF) NUMBER(3) TO SITE_ID στο οποίο ανήκει το measurement location. NAME NVARCHAR2(120) Περιλαμβάνει το χαρακτηριστικό όνομα του συγκεκριμένου measurement location. DSCR NVARCHAR2(1000) Περιέχει μια μικρή περιγραφή του measurement location. TYPE NVARCHAR2(20) Στη στήλη αυτή δηλώνεται ο τύπος του δικτύου στο οποίο ανήκει το συγκεκριμένο measurement location. ESTIMATED_SAMPLING_RATE NUMBER(10,3) Περιλαμβάνει μια εκτίμηση για τον ρυθμό της δειγματοληψίας. 3.2.4 TBL_MEASUREMENT_LOCATION_PROP Ο πίνακας αυτός περιέχει όλα τα χαρακτηριστικά της εκάστοτε MEASUREMENT LOCATION. Παρακάτω αναλύονται οι στήλες του πίνακα της βάσης δεδομένων και δίνεται μια σύντομη, αλλά περιεκτική περιγραφή. TBL_MEASUREMENT_LOCATION_PROP COLUMN TYPE DESCRIPTION MEASUREMENT_LOCATION_PROP NUMBER(10) Το ID του _ID (PK) MEASUREMENT_LOCATION_PR OP MEASUREMENT_LOCATION_ID (PF) NUMBER(5) Το MEASUREMENT LOCATION στο οποίο ανήκει η συγκεκριμένη ιδιότητα SITE_ID NUMBER(3) To SITE_ID στο οποίο ανήκει το συγκεκριμένο MEASUREMENT LOCATION NAME VALUE DSCR NVARCHAR2(120 ) NVARCHAR2(100 0) NVARCHAR2(100 0) Το όνομα της ιδιότητας του σημείου μέτρησης π.χ. CentralFreq για το κεντρικό μήκος κύματος του αισθητήρα Η τιμή της ιδιότητας Μια μικρή περιγραφή ιδιότητας της Σελίδα 10

3.2.5 TBL_MEASUREMENT_EVENT Στον πίνακα TBL_MEASUREMENT_EVENT αποθηκεύονται όλες τις μετρήσεις του κάθε αισθητήρα. Ο παρακάτω πίνακας περιγράφει την κάθε στήλη του πίνακα της βάσης δίνοντας ταυτόχρονα και μια σύντομη περιγραφή. TBL_MEASUREMENT_EVENT COLUMN TYPE DESCRIPTION MEASUREMENT_EVENT_ID NUMBER(10) Το ID του (PK) MEASUREMENT_EVENT MEASUREMENT_LOCATION_ID NUMBER(5) Το MEASUREMENT LOCATION (PF) στο οποίο ανήκει η συγκεκριμένη μέτρηση. SITE_ID NUMBER(3) To SITE_ID στο οποίο ανήκει η μέτρηση. VALUE_NUM NVARCHAR2(120) Η τιμή της μέτρησης αποθηκεύεται σε αυτή τη στήλη του πίνακα σε περίπτωση που είναι αριθμός. VALUE_TXT NVARCHAR2(1000) Η τιμή της μέτρησης αποθηκεύεται σε αυτή τη στήλη του πίνακα σε περίπτωση που είναι κείμενο. VALUE_BIN NVARCHAR2(1000) Η τιμή της μέτρησης αποθηκεύεται σε αυτή τη στήλη του πίνακα σε περίπτωση που είναι δυαδικό. DATETIME NUMBER(10) Η ημερομηνία της μέτρησης. 3.2.6 TBL_STATUS_PARAMETER Στον πίνακα TBL_STATUS_PARAMETER περιέχονται οι διάφορες παράμετροι του συστήματος οι οποίες μπορούν να υπολογίζονται βάσει συναρτήσεων των σημείων μέτρησης. Ο παρακάτω πίνακας περιγράφει την κάθε στήλη του πίνακα της βάσης δίνοντας ταυτόχρονα και μια σύντομη περιγραφή. TBL_STATUS_PARAMETER COLUMN TYPE DESCRIPTION STATUS_PARAMETER_ID (PK) NUMBER(10) Το ID του STATUS PARAMETER SITE_ID (PF) NUMBER(3) To SITE ID στο οποίο ανήκει το STATUS PARAMETER NAME NVARCHAR2(120) Το όνομα του STATUS PARAMETER DSCR NVARCHAR2(1000) Σύντομη επεξήγηση για το εκάστοτε Σελίδα 11

STATUS PARAMETER FUNCTION NVARCHAR2(500) Η συνάρτηση που υλοποιεί το συγκεκριμένο STATUS PARAMETER όταν αυτή περιλαμβάνει άλλα STATUS PARAMETERS LIMIT_UP_TXT NVARCHAR2(120) Το άνω όριο του STATUS PARAMETER LIMIT_DOWN_TXT NVARCHAR2(120) Το κάτω όριο STATUS PARAMETER LIMIT_UP_NUM NUMBER(10,5) Η τιμή του πάνω ορίου LIMIT_DOWN_NUM NUMBER(10,5) Η τιμή του κάτω ορίου UNIT NVARCHAR2(10) Η μονάδα μέτρησης του STATUS PARAMETER ESTIMATED_SAMPLING_RATE NUMBER(10,3) Εκτίμηση του ρυθμού δειγματοληψίας σε msec. TYPE NUMBER(1) Ο τύπος του STATUS PARAMETER. Είναι 0 όταν είναι δυαδικός, 1 όταν είναι κείμενο και 2 όταν είναι αριθμός. MEASUREMENT_LOCATION_FUNCTION NVARCHAR2(500) Η συνάρτηση που υλοποιεί το συγκεκριμένο STATUS PARAMETER όταν αυτή περιλαμβάνει άλλα MEASUREMENT LOCATIONS MEASUREMENT_LOCATION_ID NUMBER(5,0) Συμπληρώνεται όταν υπάρχει απευθείας σύνδεση STATUS PARAMETER και MEASUREMENT LOCATION 3.2.7 TBL_STATUS_PARAMETER_PROP Ο παρακάτω πίνακας αναλύει τα χαρακτηριστικά της κάθε STATUS PARAMETER που αναφέρθηκε και επεξηγήθηκε προηγουμένως, περιέχοντας και μια μικρή περιγραφή εξηγώντας την κάθε στήλη του πίνακα. Σελίδα 12

TBL_STATUS_PARAMETER_PROP COLUMN TYPE DESCRIPTION STATUS_PARAMETER_PROP_ID (PK) NUMBER(10) Το ID της συγκεκριμένης ιδιότητας. SITE_ID NUMBER(3) To SITE ID στο οποίο ανήκει η συγκεκριμένη ιδιότητα STATUS_PARAMETER_ID NUMBER(10) Το ID του STATUS PARAMETER στο οποίο ανήκει η ιδιότητα. NAME NVARCHAR2(120) Το όνομα της συγκεκριμένης ιδιότητας. VALUE NVARCHAR2(120) Η τιμή της ιδιότητας. 3.2.8 TBL_STATUS_PARAMETER_REL Ο πίνακας που ακολουθεί αποτυπώνει τη σχέση που μπορεί να έχουν οι STATUS PARAMETERS με άλλα STATUS PARAMETERS. TBL_STATUS_PARAMETER_REL COLUMN TYPE DESCRIPTION STATUS_PARAMETER_REL_ID NUMBER(10) Το ID του STATUS (PK) PARAMETER_PROP SITE_ID NUMBER(3) To SITE ID στο οποίο ανήκει η συγκεκριμένη σχέση. CALC_STATUS_PARAMETER_ID NUMBER(10) Το STATUS_PARAMETER το οποίο υπολογίζεται βάσει της συγκεκριμένης σχέσης PAR_STATUS_PARAMETER_ID NVARCHAR2(120) Το STATUS_PARAMETER το οποίο αποτελεί παράμετρο για τον υπολογισμό του CALC_STATUS_PARAMETER FUNCTION_VARIABLE_NAME NVARCHAR2(20) Το όνομα της παραμέτρου PAR_STATUS_PARAMETER όπως αυτό έχει δηλωθεί στο πεδίο FUNCTION της CALC_STATUS_PARAMETER DSCR NVARCHAR2(1000) Σύντομη επεξήγηση για τη συγκεκριμένη σχέση 3.2.9 TBL_ML_SP_REL Ο πίνακας που ακολουθεί αποτυπώνει τη σχέση που μπορεί να έχουν οι STATUS PARAMETERS με MEASUREMENT LOCATIONS. TBL_ML_SP_REL COLUMN TYPE DESCRIPTION ML_SP_REL_VAR_ID (PK) NUMBER(10) Το ID του ML SP REL VAL SITE_ID NUMBER(3) To SITE ID στο οποίο ανήκει η συγκεκριμένη σχέση Σελίδα 13

FUNCTION_VARIABLE_NAME NVARCHAR2(20) Το όνομα της παραμέτρου PAR_MEASUREMENT_LOCATION όπως αυτό έχει δηλωθεί στο πεδίο MEASUREMENT_LOCATION_FUNC TION της CALC_STATUS_PARAMETER DSCR NVARCHAR2(10 Σύντομη περιγραφή της 00) συγκεκριμένης σχέσης PAR_MEASUREMENT_LOCATIO N_ID NUMBER(5,0) Το MEASUREMENT_LOCATION το οποίο αποτελεί παράμετρο για τον υπολογισμό του CALC_STATUS_PARAMETER CALC_STATUS_PARAMETER_ID NUMBER(10,0) Το STATUS_PARAMETER το οποίο υπολογίζεται βάσει της συγκεκριμένης σχέσης 3.2.10 TBL_STATUS_PARAMETER_VAL Στον πίνακα TBL_STATUS_PARAMETER_VAL αποθηκεύονται όλες οι μετρήσεις των παραμέτρων όπως αυτές υπολογίζονται βάσει των σχέσεων. Ο παρακάτω πίνακας περιγράφει την κάθε στήλη του πίνακα της βάσης δίνοντας ταυτόχρονα και μια σύντομη περιγραφή. TBL_STATUS_PARAMETER_VAL COLUMN TYPE DESCRIPTION STATUS_PARAMETER_VAL_ID NUMBER(20) Το ID του STATUS (PK) PARAMETER VAL STATUS_PARAMETER_ID NUMBER(10) Το ID του STATUS PARAMETER με το οποίο σχετίζεται η συγκεκριμένη μέτρηση SITE_ID NUMBER(3) To SITE ID στο οποίο ανήκει η μέτρηση VALUE_TXT NVARCHAR2(120) Η τιμή της παραμέτρου αν είναι κείμενο VALUE_BIN BLOB Η τιμή της παραμέτρου αν είναι δυαδικό VALUE_NUM NUMBER(15,4) Η τιμή της παραμέτρου αν είναι αριθμός. DATETIME TIMESTAMP Η ημερομηνία της μέτρησης Σελίδα 14

4 ΒΙΒΛΙΟΘΗΚΗ SENSORSHANDLER Για την υλοποίηση της επικοινωνίας με τον Interrogator, τη λήψη των μετρήσεων από τους αισθητήρες και την αποθήκευσή τους στη βάση δεδομένων. αναπτύχθηκε ειδική βιβλιοθήκη DLL (Dynamic Link Library) σε C#, η SensorsHandler.dll. Η βιβλιοθήκη SensorsHandler.dll παρέχει όλες τις απαραίτητες κλάσεις και συναρτήσεις για την επικοινωνία με έναν ή περισσότερους Interrogators καθώς επίσης και τη σύνδεση στη βάση δεδομένων. Επιπλέον, είναι ανεξάρτητη του είδους και πλήθους συνδεδεμένων αισθητήρων καθώς η αναγνώρισή τους γίνεται αυτόματα και μπορεί να χρησιμοποιηθεί από οποιαδήποτε εφαρμογή λογισμικού για τη λήψη και αποθήκευση των μετρήσεων. Οι κλάσεις που περιλαμβάνονται στην τρέχουσα βιβλιοθήκη δίνονται παρακάτω: Κλάση InterDB OptSensor Sm130Socket Interrogator Περιγραφή Υλοποιεί τη σύνδεση με τη βάση και την αποθήκευση των μετρήσεων. Κλάση η οποία χρησιμοποιείται για την αποθήκευση διαφόρων ιδιοτήτων του κάθε αισθητήρα πχ. όνομα, μήκος κύματος, όρια, τρέχουσα τιμή κλπ. Κλάση η οποία χρησιμοποιεί τη βιβλιοθήκη sm130_comm_dll.dll του κατασκευαστή του Interrogator, Micron Optics, για την υλοποίηση της επικοινωνίας και της λήψης δεδομένων. Κλάση η οποία χρησιμοποιεί τις προαναφερθείσες κλάσεις για τη σύνδεση με τον Interrogator, την αναγνώριση των αισθητήρων και την αποθήκευση των μετρήσεων στη βάση δεδομένων. ΠΙΝΑΚΑΣ 1: SENSORSHANDLER CLASSES Επιπλέον, στη βιβλιοθήκη περιλαμβάνεται dataset για την προσωρινή αποθήκευση των μετρήσεων προτού αποθηκευτούν μόνιμα στη βάση δεδομένων. Η δομή του dataset δίνεται στον παρακάτω πίνακα: Πίνακας MeasurementLocation MeasurementEvents Περιγραφή Πίνακας στον οποίο φορτώνονται τα measurement locations που είναι καταχωρημένα στη βάση δεδομένων. Πίνακας στον οποίο αποθηκεύονται προσωρινά οι μετρήσεις των αισθητήρων προτού αποθηκευτούν μόνιμα στη βάση δεδομένων. ΠΙΝΑΚΑΣ 2: SENSORHANDLER DATASET 4.1 Κλάση InterDB Η κλάση InterDB είναι υπεύθυνη για την υλοποίηση της σύνδεσης με τη βάση δεδομένων καθώς και την αποθήκευση των μετρήσεων σε αυτήν. Στις επόμενες ενότητες, δίνονται περισσότερες πληροφορίες σχετικά με τις public συναρτήσεις που περιλαμβάνονται στη συγκεκριμένη κλάση. 4.1.1 INTERDB Σελίδα 15

Αποτελεί τον constructor της κλάσης και υπάρχει σε δύο εκδόσεις, η μία από τις οποίες δέχεται όρισμα και αρχικοποιεί το connection string της βάσης δεδομένων. Συνάρτηση InterDB Ορίσματα string Το connection string της βάσης δεδομένων (Προαιρετικά) Επιστρεφόμενη Τιμή - - Περιγραφή Αρχικοποιεί την κλάση InterDB και προαιρετικά θέτει το connection string της βάσης δεδομένων. ΠΙΝΑΚΑΣ 3: INTERDB 4.1.2 SETCONNECTIONSTRING Συνάρτηση SetConnectionString Ορίσματα string Το connection string της βάσης δεδομένων Επιστρεφόμενη Τιμή bool True αν είναι επιτυχής. False σε περίπτωση που προκύψει κάποιο σφάλμα. Περιγραφή Θέτει το connection string της βάσης δεδομένων και φορτώνει τα Measurement Locations, που είναι καταχωρημένα στη βάση δεδομένων, στον αντίστοιχο πίνακα του dataset. ΠΙΝΑΚΑΣ 4: SETCONNECTIONSTRING 4.1.3 INSERTNEWMEASUREMENT Συνάρτηση Ορίσματα Επιστρεφόμενη Τιμή Περιγραφή InsertNewMeasurement List<OptSensor> Λίστα με τους οπτικούς αισθητήρες για τους οποίους θα γίνει εισαγωγή μέτρησης στη βάση δεδομένων void Εισάγει τις μετρήσεις που περιλαμβάνονται στη λίστα που δίνεται ως όρισμα στο dataset και εν συνεχεία στη βάση δεδομένων. ΠΙΝΑΚΑΣ 5: INSERTNEWMEASUREMENT 4.2 Κλάση OptSensor Η κλάση OptSensor περιλαμβάνει διάφορες ιδιότητες του αισθητήρα πχ. όνομα, μήκος κύματος, όρια, τρέχουσα τιμή κλπ. Ιδιότητα Τύπος Περιγραφή SensorName SensorType Ο τύπος του αισθητήρα. Είναι enum με δυνατές τιμές { ACCEL_X, ACCEL_Y, ACCEL_Z, WATER_A, WATER_B, CAR_COUNT, CAR_SPEED, TEMP, DEGREE } Channel int Το κανάλι του Interrogator στο οποίο είναι συνδεδεμένος ο αισθητήρας FrequencyCentral float Το κεντρικό μήκος κύματος του αισθητήρα Σελίδα 16

FrequencyMax float Το μέγιστο όριο μήκους κύματος του αισθητήρα FrequencyMin float Το ελάχιστο όριο μήκους κύματος του αισθητήρα ParameterValues double[] Παράμετροι που υπολογίζονται ως συνάρτηση των μετρήσεων και είναι ανάλογες του τύπου αισθητήρων CurrentValue float Η τρέχουσα μέτρηση του αισθητήρα MeasDate DateTime Η ημερομηνία της τρέχουσας μέτρησης LastValues List<float> Λίστα με τις τελευταίες μετρήσεις του αισθητήρα Στις επόμενες ενότητες, δίνονται περισσότερες πληροφορίες σχετικά με τις public συναρτήσεις που περιλαμβάνονται στη συγκεκριμένη κλάση. 4.2.1 OPTSENSOR Αποτελεί τον constructor της κλάσης και υπάρχει σε δύο εκδόσεις με διαφορετικό αριθμό ορισμάτων. Συνάρτηση OptSensor SensorType Ο τύπος του αισθητήρα int Το κανάλι του Interrogator στο οποίο είναι συνδεδεμένος ο αισθητήρας (Προαιρετικά) Ορίσματα float Το κεντρικό μήκος κύματος του αισθητήρα float Το ελάχιστο όριο μήκους κύματος του αισθητήρα float Το μέγιστο όριο μήκους κύματος του αισθητήρα Επιστρεφόμενη Τιμή - - Περιγραφή Αρχικοποιεί την κλάση OptSensor. Το κανάλι στο οποίο είναι συνδεδεμένος ο αισθητήρας δίνεται προαιρετικά. ΠΙΝΑΚΑΣ 6: OPTSENSOR 4.2.2 CHANGECENTRALFREQ Συνάρτηση ChangeCentralFreq Ορίσματα float Η νέα τιμή για το κεντρικό μήκος κύματος του αισθητήρα Επιστρεφόμενη Τιμή void Περιγραφή Διορθώνει το κεντρικό μήκος κύματος του αισθητήρα, θέτοντάς το ίσο με την τιμή του ορίσματος. 4.3 Κλάση Sm130Socket Η κλάση Sm130Socket χρησιμοποιεί τη βιβλιοθήκη sm130_comm_dll.dll του κατασκευαστή του Interrogator, Micron Optics, για την υλοποίηση της επικοινωνίας και της λήψης δεδομένων μέσω πρωτοκόλλου TCP/IP. Στις επόμενες ενότητες, δίνονται περισσότερες πληροφορίες σχετικά με τις public συναρτήσεις που περιλαμβάνονται στη συγκεκριμένη κλάση. Σελίδα 17

4.3.1 CONNECT Συνάρτηση Connect Ορίσματα string Η διεύθυνση IP του Interrogator Επιστρεφόμενη Τιμή bool True αν είναι η σύνδεση είναι επιτυχής. False σε περίπτωση που προκύψει κάποιο σφάλμα. Περιγραφή Πραγματοποιεί τη σύνδεση με τον Interrogator μέσω πρωτοκόλλου TCP/IP. 4.3.2 DISCONNECT Συνάρτηση Disconnect Ορίσματα - - Επιστρεφόμενη Τιμή bool True αν είναι η αποσύνδεση είναι επιτυχής. False σε περίπτωση που προκύψει κάποιο σφάλμα. Περιγραφή Πραγματοποιεί αποσύνδεση από τον Interrogator. 4.3.3 SENDSM130COMMAND Συνάρτηση SendSm130Command string Ορίσματα Η εντολή προς αποστολή. Η εντολή για τη λήψη μετρήσεων από όλα τα κανάλια είναι #GET_DATA\n. Επιστρεφόμενη Τιμή bool True αν είναι η αποστολή της εντολής είναι επιτυχής. False σε περίπτωση που προκύψει κάποιο σφάλμα. Περιγραφή Πραγματοποιεί αποστολή της εντολής, που δίνεται ως όρισμα, στον Interrogator μέσω πρωτοκόλλου TCP/IP. 4.3.4 READSM130DATA Συνάρτηση ReadSm130Data byte[] Πίνακας όπου αποθηκεύονται τα bytes Ορίσματα που λαμβάνονται από τον Interrogator. int Ο αριθμός των bytes που λαμβάνονται από τον Interrogator. Επιστρεφόμενη Τιμή int Ο αριθμός των bytes που λήφθηκαν από τον Interrogator. Περιγραφή Πραγματοποιεί λήψη δεδομένων από τον Interrogator και αποθηκεύει τα ληφθέντα bytes στον πίνακα που δίνεται ως όρισμα. 4.4 Κλάση Interrogator Η κλάση Interrogator αποτελεί τη βασική κλάση της βιβλιοθήκης SensorsHandler. Χρησιμοποιεί όλες τις προαναφερθείσες κλάσεις για την υλοποίηση της επικοινωνίας με τον Interrogator, τη λήψη και καθώς και την αποθήκευση των μετρήσεων στη βάση δεδομένων. Σελίδα 18

Η κλάση Interrogator δημιουργεί ένα αντικείμενο Sm130Socket για τη σύνδεση και επικοινωνία με τον Interrogator. Επιπλέον, δημιουργεί ένα αντικείμενο InterDB το οποίο και χρησιμοποιεί για την αποθήκευση των μετρήσεων που λαμβάνει στη βάση δεδομένων. Η επικοινωνία με τον Interrogator γίνεται περιοδικά, με χρονική περίοδο που καθορίζεται από τον χρήστη, στέλνοντας την αντίστοιχη εντολή για λήψη μετρήσεων. Τέλος, σε διάφορα κρίσιμα σημεία του προγράμματος πχ. όταν λαμβάνεται μια νέα μέτρηση ή όταν εντοπίζεται ένας νέος αισθητήρας κλπ, η κλάση αυτή σηκώνει αντίστοιχα events τα οποία και μπορεί να διαχειριστεί και να αξιοποιήσει οποιαδήποτε εφαρμογή κάνει χρήση της βιβλιοθήκης SensorsHandler.dll. 4.4.1 ΛΟΓΙΚΟ ΔΙΑΓΡΑΜΜΑ Παρακάτω εμφανίζεται το λογικό διάγραμμα της κλάσης Interrogator όπου φαίνεται η ροή του προγράμματος μετά την αρχικοποίηση του αντικειμένου. Σελίδα 19

ΕΙΚΟΝΑ 5: ΛΟΓΙΚΟ ΔΙΑΓΡΑΜΜΑ 4.4.2 EVENTS Τα public events που σηκώνει η κλάση Interrogator για να δηλώσει κάποιο σημαντικό γεγονός κατά τη λειτουργία του δίνονται αναλυτικά στον παρακάτω πίνακα. Event EventArgs Περιγραφή PacketReceived List<OptSensor> Δηλώνει ότι λήφθηκε νέο πακέτο με μετρήσεις από τους αισθητήρες. Οι ενημερωμένοι αισθητήρες δίνονται στην αντίστοιχη λίστα UpdatedSensors. NewSensorAdded OptSensor Δηλώνει ότι συνδέθηκε νέος αισθητήρας στον Interrogator. Ο νέος αισθήτηρας δίνεται στον OptSensor NewSensor. Σελίδα 20

CentralFreqUpdated OptSensor Δηλώνει ότι έγινε διόρθωση στο κεντρικό μήκος κύματος ενός αισθητήρα. Ο ενημερωμένος αισθήτηρας δίνεται στον OptSensor UpdatedSensor. ErrorEvent string Δηλώνει ότι προέκυψε κάποιο σφάλμα. Το μήνυμα σφάλματος δίνεται στο string Message. 4.4.3 PROPERTIES Property Type Περιγραφή OptSensors List<OptSensor> Λίστα που περιλαμβάνει όλους τους αισθητήρες που είναι συνδεδεμένοι στον Interrogator. 4.4.4 METHODS 4.4.4.1 Interrogator Αποτελεί τον constructor της κλάσης Interrogator. Συνάρτηση Interrogator string Η διεύθυνση IP του Interrogator string Το connection string της βάσης δεδομένων double Η περίοδος δειγματοληψίας του Interrogator List<OptSensor> Λίστα με τους οπτικούς αισθητήρες Ορίσματα που είναι συνδεδεμένοι στον Interrogator. Στη λίστα αυτή θα πρέπει να δηλώνονται τουλάχιστον ο τύπος του αισθητήρα και τα άνω/κάτω όρια μήκους κύματος. Οι υπόλοιπες ιδιότητες των αισθητήρων πχ. αριθμός καναλιού κλπ υπολογίζονται αυτόματα. Επιστρεφόμενη Τιμή - - Περιγραφή Αρχικοποιεί τον Interrogator 4.4.4.2 InterConnect Συνάρτηση InterConnect Ορίσματα - - Επιστρεφόμενη Τιμή bool True αν είναι η σύνδεση είναι επιτυχής. False σε περίπτωση που προκύψει κάποιο σφάλμα. Περιγραφή Πραγματοποιεί τη σύνδεση στον Interrogator και εκκινεί τον timer για την περιοδική λήψη μετρήσεων. 4.4.4.3 InterDisconnect Συνάρτηση InterDisconnect Σελίδα 21

Ορίσματα - - Επιστρεφόμενη Τιμή bool True αν είναι η αποσύνδεση είναι επιτυχής. False σε περίπτωση που προκύψει κάποιο σφάλμα. Περιγραφή Πραγματοποιεί αποσύνδεση από τον Interrogator και σταματάει τον timer για την περιοδική λήψη μετρήσεων. Σελίδα 22

5 VASIS MONITOR Το λογισμικό VASIS Monitor παρέχει τη δυνατότητα παρακολούθησης των μετρήσεων σε πραγματικό χρόνο. Χρησιμοποιεί τη βιβλιοθήκη SensorsHandler.dll, η οποία αναλύθηκε στα προηγούμενα κεφάλαια, και υλοποιεί τη σύνδεση/αποσύνδεση με τον Interrogator καθώς και τη λήψη, προβολή και αποθήκευση των μετρήσεων στη βάση δεδομένων. 5.1 Περιγραφή Το λογισμικό VASIS Monitor παρέχει ένα εύχρηστο περιβάλλον χρήσης για την παρακολούθηση των μετρήσεων σε πραγματικό χρόνο. Στην Εικονα 4 φαίνεται η αρχική οθόνη της εφαρμογής η οποία αποτελείται από τα ακόλουθα μέρη: Κεντρικό Μενού: Αποτελεί το κεντρικό μενού χρήστη από το οποίο μπορεί να γίνει σύνδεση/αποσύνδεση στον Interrogator καθώς και να αλλαχθούν οι ρυθμίσεις σύνδεσης πχ. διεύθυνση IP, DB connection string κλπ. Πάνελ Διαγραμμάτων: Το πάνελ διαγραμμάτων βρίσκεται στο αριστερό μέρος του κεντρικού παραθύρου της εφαρμογής και εμφανίζει διαγράμματα με τις τιμές των X, Y, Z παραμέτρων που λαμβάνονται από αισθητήρες επιταχυνσιομέτρων σε πραγματικό χρόνο. Πάνελ Αισθητήρων: Το πάνελ αισθητήρων βρίσκεται στο δεξί μέρος του κεντρικού παραθύρου της εφαρμογής και εμφανίζει την τρέχουσα τιμή για κάθε αισθητήρα που είναι συνδεδεμένος στον Interrogator. Επιπλέον, εμφανίζει τις υπολογισθείσες τιμές για διάφορες παραμέτρους του εκάστοτε αισθητήρα. Κονσόλα Μηνυμάτων: Η κονσόλα μηνυμάτων βρίσκεται στο κάτω μέρος του κεντρικού παραθύρου της εφαρμογής και εμφανίζει τυχόν μηνύματα συστήματος ή σφάλματα που προκύπτουν κατά την εκτέλεση της εφαρμογής. Ένδειξη Κατάστασης: Στο κάτω μέρος του κεντρικού παραθύρου της εφαρμογής υπάρχει ένδειξη κατάστασης όπου φαίνεται αν η εφαρμογή είναι συνδεδεμένη στον Interrogator ή όχι. Σελίδα 23

Κεντρικό Μενού Πάνελ Διαγραμμάτων Πάνελ Αισθητήρων Ένδειξη Κατάστασης Κονσόλα Μηνυμάτων ΕΙΚΟΝΑ 6: ΑΡΧΙΚΗ ΟΘΟΝΗ ΕΦΑΡΜΟΓΗΣ 5.2 Στοιχεία Προκειμένου να είναι η εφαρμογή VASIS Monitor ανεξάρτητη του αριθμού και του τύπου των συνδεδεμένων αισθητήρων, σχεδιάστηκαν και αναπτύχθηκαν επιμέρους στοιχεία ώστε αυτά να προβάλλονται δυναμικά στην οθόνη ανάλογα με τους αισθητήρες που εντοπίζονται από τη βιβλιοθήκη SensorsHandler.dll. Στις επόμενες ενότητες δίνονται περισσότερες πληροφορίες για τα στοιχεία αυτά. ΕΙΚΟΝΑ 7: VASIS MONITOR 5.2.1 ΔΙΑΓΡΑΜΜΑ ΕΠΙΤΑΧΥΝΣΙΟΜΕΤΡΟΥ Για κάθε αισθητήρα επιταχυνσιομέτρου που είναι συνδεδεμένος στον Interrogator, σχεδιάζεται ένα διάγραμμα που ανανεώνεται σε πραγματικό χρόνο. Σελίδα 24

5.2.2 ΣΤΟΙΧΕΙΟ ΑΙΣΘΗΤΗΡΑ Για κάθε αισθητήρα που είναι συνδεδεμένος στον Interrogator, προστίθεται στον πάνελ αισθητήρων ένα επιμέρους στοιχείο με την τρέχουσα τιμή, την DC στάθμη και τις τρέχουσες υπολογισθείσες παραμέτρους ανάλογα με τον τύπο του αισθητήρα. ΕΙΚΟΝΑ 8: ΣΤΟΙΧΕΙΟ ΑΙΣΘΗΤΗΡΑ Σελίδα 25

6 VASIS DAS Το λογισμικό VASIS Data Analysis System (DAS) είναι μια εφαρμογή για την παρουσίαση και ανάλυση των δεδομένων που συλλέγονται από το οπτικό δίκτυο αισθητήρων. Τα δεδομένα αυτά μπορούν να παρουσιαστούν σε μια ποικιλία γραφημάτων και απεικονίσεων, οπότε ο χρήστης μπορεί να επιλέξει την παρουσίαση που ταιριάζει καλύτερα στην εκάστοτε εφαρμογή. Επιπλέον, ο χρήστης μπορεί να δημιουργήσει δικές του παραμέτρους, οι οποίες υπολογίζονται βάσει κάποιων συναρτήσεων ως προς τις ληφθείσες μετρήσεις και να εξάγει με τον τρόπο αυτό χρήσιμα συμπεράσματα για την περίοδο μετρήσεων. Όλα τα δεδομένα που αναλύονται στο VASIS DAS εξάγονται από τη βάση δεδομένων και επομένως η ανάλυση μπορεί να γίνει και off-line σε μεταγενέστερο χρόνο. 6.1 Γραφήματα Το VASIS DAS παρέχει τη δυνατότητα προβολής διαφόρων τύπων γραφημάτων τα οποία και αναλύονται στη συνέχεια. 6.1.1 TIME GRAPH Το Time Graph υπολογίζει μέσους όρους των επιλεγμένων παραμέτρων ανά χρονικό διάστημα το οποίο δίνεται από τον χρήστη και προβάλλει τις αντίστοιχες τιμές σε διάγραμμα ως προς τον χρόνο. ΕΙΚΟΝΑ 9: TIME GRAPH 6.1.2 2 AXIS TIME GRAPH Στο Time Graph 2 αξόνων ο χρήστης μπορεί να επιλέξει διαφορετικές παραμέτρους στον αριστερό και δεξί κάθετο άξονα. Η εφαρμογή υπολογίζει μέσους όρους των επιλεγμένων παραμέτρων ανά χρονικό διάστημα το οποίο δίνεται από τον χρήστη και προβάλλει τις αντίστοιχες τιμές σε διάγραμμα ως προς τον χρόνο. Σελίδα 26

ΕΙΚΟΝΑ 10: 2 AXIS TIME GRAPH 6.1.3 REAL VALUES TIME GRAPH Το Real Values Time Graph απεικονίζει τις μετρήσεις για τις επιλεγμένες παραμέτρους σε διάγραμμα ως προς το χρόνο. Οι μετρήσεις που απεικονίζονται είναι οι πραγματικές τιμές που είναι αποθηκευμένες στη βάση και όχι υπολογισμένοι μέσοι όροι όπως στο Time Graph. 6.1.4 2 AXIS REAL VALUES TIME GRAPH ΕΙΚΟΝΑ 11: REAL VALUES TIME GRAPH Σελίδα 27

Στο Real Values Time Graph 2 αξόνων ο χρήστης μπορεί να επιλέξει διαφορετικές παραμέτρους στον αριστερό και δεξί κάθετο άξονα. Οι μετρήσεις που απεικονίζονται ως προς το χρόνο είναι οι πραγματικές τιμές που είναι αποθηκευμένες στη βάση και όχι υπολογισμένοι μέσοι όροι όπως στο αντίστοιχο Time Graph. ΕΙΚΟΝΑ 12: 2 AXIS REAL VALUES TIME GRAPH 6.1.5 PARAMETER VS PARAMETER TIME GRAPH Η εφαρμογή παρέχει επιπλέον τη δυνατότητα δημιουργίας γραφήματος που απεικονίζει τις τιμές μιας παραμέτρου ως προς μία άλλη παράμετρο προκειμένου να γίνει φανερή η σχέση μεταξύ τους. Για να γίνει αυτό, η παράμετρος που επιλέγεται ως depended απεικονίζεται στον κάθετο άξονα ενώ η παράμετρος που επιλέγεται ως base απεικονίζεται στον οριζόντιο άξονα. Σελίδα 28

ΕΙΚΟΝΑ 13: PARAMETER VS PARAMETER TIME GRAPH 6.1.6 REVIEWS Για την απεικόνιση διακριτών γεγονότων, χρήσιμο εργαλείο είναι το "Reviews". Στη συγκεκριμένη απεικόνιση εμφανίζονται όλα τα γεγονότα που έγιναν για την επιλεγμένη παράμετρο και για το επιλεγμένο χρονικό διάστημα. ΕΙΚΟΝΑ 144: REVIEW 6.1.7 STATUS TIME GRAPH Τέλος, για τη γραφική απεικόνιση καταστάσεων είναι εύκολη και φιλική για τον χρήστη η δημιουργία ενός Status Time Graph. Στο Status Time Graph θέτει ο χρήστης κάποιους κανόνες και δημιουργεί καταστάσεις οι οποίες απεικονίζονται σε κατακόρυφα bars. Σελίδα 29

ΕΙΚΟΝΑ 155: STATUS TIME GRAPH Σελίδα 30