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

Σχετικά έγγραφα
Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

(C) 2010 Pearson Education, Inc. All rights reserved.

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

4 η Εργαστηριακή Άσκηση

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

Είναι το πρωτόκολλο RS232 που χρησιμοποιείται στις σειριακές θύρες COM με τη διαφορά ότι εκτελείται σε επίπεδο τάσεων TTL. 2

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade

ιαδικτυακές Εφαρµογές

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

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

ΕΓΧΕΙΡΙΔΙΟ ΠΙΝΑΚΑ ΕΛΕΓΧΟΥ FHM-3 (FHM-2/1D, FH-11/1D, FE-3) (για ΥΔΡΑΥΛΙΚΗ ΠΟΛΥΣΠΑΣΤΗ ΠΟΡΤΑ HSD)

Κέντρο υποστήριξης HP. Εισαγωγή. Τι χρειάζεται να γνωρίζετε. Λήψη και εγκατάσταση της λύσης Vista στα Windows 8. 1 of 5 1/7/2014 2:09 μμ

ΕΡΓΑΣΤΗΡΙΟ 4 ΕΙΣΑΓΩΓΗ ΣΤΟN ARDUINO: ΨΗΦΙΑΚΗ ΕΙΣΟΔΟΣ/ΕΞΟΔΟΣ

10. Πληκτρολόγιο matrix 4x4

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

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

10. Πληκτρολόγιο matrix 4x4

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

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

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

άσκηση Hide UI Elements 7.2 Try and Catch

Οργάνωση Υπολογιστών (IΙI)

ΕΓΧΕΙΡΙΔΙΟ ΠΙΝΑΚΑ ΕΛΕΓΧΟΥ FSM-1 (FSM-1, FBMulti-1/S) (για ΤΑΧΥΚΙΝΗΤΗ ΠΟΡΤΑ RD)

12. Διακοπές Interrupts (IRQ)

CYTA Cloud Server Set Up Instructions

ΣΥΝΔΕΣΗ ΚΑΤΑΓΡΑΦΙΚΟΥ ΣΤΟ INTERNET

PortSip Softphone. Ελληνικά Ι English 1/20

Εγχειρίδιο Χρήσης Ενημέρωσης Λογισμικού Bluetooth Windows 7

Interfox.gr. Κωδικοποίηση Κάμερας

ΕΓΧΕΙΡΙΔΙΟ ΠΙΝΑΚΑ ΕΛΕΓΧΟΥ FK-20 (για συρόμενες πόρτες & μπάρες)

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

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

Modbus basic setup notes for IO-Link AL1xxx Master Block

ΕΓΧΕΙΡΙΔΙΟ ΠΙΝΑΚΑ ΕΛΕΓΧΟΥ FHM-4 (FHM-2/2D, FH-4, FE-3) (για 2 ΥΔΡΑΥΛΙΚΕΣ ΠΟΛΥΣΠΑΣΤΕΣ ΠΟΡΤΕΣ )

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

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

Βασικά Στοιχεία της Java

ΕΓΧΕΙΡΙΔΙΟ ΠΙΝΑΚΑ ΕΛΕΓΧΟΥ FHM-2 (FHM-2, FH-3, FE-3) (για ΥΔΡΑΥΛΙΚΗ ΡΑΜΠΑ HDL με ΥΔΡΑΥΛΙΚΗ ΠΟΛΥΣΠΑΣΤΗ ΠΟΡΤΑ HSD)

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR KTEC

Οδηγίες Χρήσεως. Κάτοψη Συσκευής. SOS 100 Elderly Care System. Κύρια χαρακτηριστικά SOS 100

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

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

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

MICROBOT SERVER MICROBOT MONITOR ΕΦΑΡΜΟΓΕΣ ΕΛΕΓΧΟΥ ΚΑΙ ΠΑΡΑΚΟΛΟΥΘΗΣΗΣ ΓΙΑ ΣΥΣΤΗΜΑΤΑ MICROBOT

Ειδικά Θέματα Παραμετροποίησης 1. ΕΓΚΑΤΑΣΤΑΣΗ

FHL Wind Data Logger By FURUNO Hellas SA

How to register an account with the Hellenic Community of Sheffield.

ΟΔΗΓΌΣ ΓΡΉΓΟΡΗΣ ΕΚΚΊΝΗΣΗΣ

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΉΜΙΟ ΚYΠΡΟΥ

Δημιουργία Λογαριασμού Διαχείρισης Business Telephony Create a Management Account for Business Telephony

Εργαστήριο Λειτουργικών Συστημάτων 8o εξάμηνο, Ροή Υ, ΗΜΜΥ

Εικονική Μνήμη (Virtual Μemory)

Οδηγίες για την Διαδικασία αποθήκευσης στοιχείων ελέγχου πινάκων για επίλυση θέματος Οριοθέτησης.

Οδηγίες εγκατάστασης Δορυφορικής κάρτας Technisat

ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ SQL SERVER 2008 R2 Express

TeleCost Hotel για Panasonic TDA

Special edition of the Technical Chamber of Greece on Video Conference Services on the Internet, 2000 INTERNET PHONE

Οδηγίες EQL Desktop (rev ) ΣΥΝ ΕΣΗ S-710 ΜΕ ΚΑΛΩ ΙΟ USB ΠΡΟΚΑΤΑΡΚΤΙΚΕΣ ΕΡΓΑΣΙΕΣ

WiFi V-Timer ΕΚΔΟΣΗ 2Η

ΕΓΚΑΤΑΣΤΑΣΗ ΕΦΑΡΜΟΓΩΝ ΓΙΑ ΠΡΟΣΩΠΙΚΟ ΥΠΟΛΟΓΙΣΤΗ (MS WINDOWS, LINUX, MACOS)

Οδηγίες Αγοράς Ηλεκτρονικού Βιβλίου Instructions for Buying an ebook

ιαδικτυακές Εφαρµογές Πραγµατικού Χρόνου µε Java

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

ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ ΣΤΟ ΔΙΚΤΥΟ ΤΟΥ ΟΠΑ ΑΠΟ ΕΞΩΤΕΡΙΚΟ ΠΑΡΟΧΟ (ΥΠΗΡΕΣΙΑ VPN) Windows 8, Windows 7, Windows Vista, Windows XP

Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol

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

Connecto. Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Άγγελος Σφακιανάκης. Επιφάνεια Άμεσης Σύνδεσης

Προηγμένοι Μικροεπεξεργαστές. Φροντιστήριο 4 Real Mode Interrupts

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

Οδηγός Σύνδεσης στο Ασύρματο Δίκτυο cs-wifi του Τμήματος Πληροφορικής του Πανεπιστημίου Κύπρου για Windows 7, CentOS 6, Mac OS, IOS, και Android

Οδηγίες για την εγκατάσταση του πακέτου Cygwin

Βασικές συσκευές Ε/Ε. Είσοδος Έξοδος στον υπολογιστή. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (IΙI) Μ.

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

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

Μνήμη Διευθύνσεις Δείκτες. Προγραμματισμός II 1

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. (Διάλεξη 15)

Ο ΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ. MS SQL Server Για τις ανάγκες των εφαρµογών της

ΟΔΗΓΙΕΣ ΧΕΙΡΙΣΜΟΥ GSM TCS-3

Προηγμένοι Μικροεπεξεργαστές. Εργαστήριο 4 - Editor

Τ.Ε.Ι. ΚΡΗΤΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΙΑΣ. Ασκήσεις 1-2 Εισαγωγή

Σας προτείνουμε να εγκαταστήσετε στο κινητό σας τηλέφωνο την εφαρμογή Senior Helper"

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008

Academia Financials Γενική Λογιστική ΠΕΡΙΕΧΟΜΕΝΑ

Οδηγίες χειρισµού. Οδηγίες χρήσεως driver B

Βασικά Στοιχεία της Java

Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010

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

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

Διδάσκων: Παναγιώτης Ανδρέου

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

2. Δήλωση μεταβλητών. #include <avr/io.h> #include <util/delay.h> unsigned char i=0xa0; register unsigned char i asm("r3");

ιαδικασία εγκατάστασης - αναβάθµισης MS SQL Server 2014 Express Edition για SingularLogic Control, Accountant, Λογιστικά

Προηγμένοι Μικροεπεξεργαστές. Εργαστήριο 5 - Editor

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΉΜΙΟ ΚYΠΡΟΥ

ΚΟΙΝΩΝΙΚΗ ΔΙΚΤΥΩΣΗ ΜΕΣΩ ΚΙΝΗΤΩΝ ΣΥΣΚΕΥΩΝ: ΧΡΗΣΗ ΔΕΚΤΗ GPS ΓΙΑ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΗΣ ΚΟΙΝΩΝΙΚΗΣ ΔΙΚΤΥΩΣΗΣ ΣΕ ΚΙΝΗΤΗ ΣΥΣΚΕΥΗ

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή

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

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

Electronics μαζί με τα συνοδευτικά καλώδια και το αισθητήριο θερμοκρασίας LM335 που περιέχονται

Transcript:

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

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ Κεφάλαιο 1: Εισαγωγή...7 1.1 Σκοπός της πτυχιακής... 7 1.2 Περιγραφή της πτυχιακής... 7 1.3 Η δομή της πτυχιακής... 8 Κεφάλαιο 2: Λειτουργία Σκάλας.9 2.1 Υλοποίηση Του Ενσωματωμένου Συστήματος... 10 2.2 Ο Μικροελεκτής ATmega8515L... 10 2.3 Χαρακτηριστικά... 11 2.4 Ο πυρήνας της CPU του AVR... 15 2.5 Προγραμματισμός του ATmega8515L... 16 Κεφάλαιο 3: Απεικόνιση Λειτουργίας Σκάλας 17 3.1 Περιβάλλον Υλοποίησης... 17 3.2 C Sharp... 17 Κεφάλαιο 4: Απαιτήσεις Απεικόνισης 21 4.1 Ορισμός Απαιτήσεων... 21 Εισαγωγή... 22 Μοντέλα συστήματος... 22 Ορισμός λειτουργικών απαιτήσεων... 23 Ορισμός μη λειτουργικών απαιτήσεων... 24 Περιορισμοί του συστήματος... 24 Διευκρίνηση απαιτήσεων... 24 Περιγραφή πλατφόρμας υλικού για το σύστημα... 26 Κεφάλαιο 5: Προδιαγραφές Απεικόνισης...26 5.1 Προδιαγραφές Απαιτήσεων... 26 2

ΠΡΟΔΙΑΓΡΑΦΗ 1... 27 ΠΡΟΔΙΑΓΡΑΦΗ 2... 27 ΠΡΟΔΙΑΓΡΑΦΗ 3... 28 ΠΡΟΔΙΑΓΡΑΦΗ 4... 29 ΠΡΟΔΙΑΓΡΑΦΗ 5... 30 ΠΡΟΔΙΑΓΡΑΦΗ 6... 31 ΠΡΟΔΙΑΓΡΑΦΗ 7... 32 ΠΡΟΔΙΑΓΡΑΦΗ 8... 33 ΠΡΟΔΙΑΓΡΑΦΗ 9... 34 ΠΡΟΔΙΑΓΡΑΦΗ 10... 35 ΠΡΟΔΙΑΓΡΑΦΗ 11... 36 ΠΡΟΔΙΑΓΡΑΦΗ 12... 37 ΠΡΟΔΙΑΓΡΑΦΗ 13... 38 Κεφάλαιο 6: Πίνακας Ιχνηλασιμότητας.39 Κεφάλαιο 7: Διάγραμμα Ροής Δεδομένων.40 7. 1 Διάγραμμα 0ου επιπέδου... 40 7.2 Διάγραμμα 1ου επιπέδου... 41 7.3 Διάγραμμα 2ου επιπέδου Α.γραφική απεικόνιση... 42 Κεφάλαιο 8: Ανάλυση Επικινδυνότητας.44 Κεφάλαιο 9: Τεστ Κλειστού Κουτιού 44 9.1 Σύνδεση Σειριακής Θύρας Υπολογιστή... 44 9.2 Διαγνωστικός Έλεγχος... 45 9.3 Κυλιόμενη Σκάλα Σε Αναμονή... 46 9.4 Κυλιόμενη Σκάλα Κίνηση Προς Τα Κάτω... 46 9.5 Κυλιόμενη Σκάλα Κίνηση Προς Τα Πάνω... 46 9.6 Κυλιόμενη Σκάλα Κατάσταση Service... 47 3

9.7 Κυλιόμενη Σκάλα Ολοκλήρωση Service... 47 9.8 Κυλιόμενη Σκάλα Κατάσταση Κίνδυνου... 48 9.9 Κυλιόμενη Σκάλα Βλάβη Μοτέρ... 48 9.10 Κυλιόμενη Σκάλα Ενεργοποίηση Server... 49 9.11 Κυλιόμενη Σκάλα Σύνδεση Server... 50 Κεφάλαιο 10: Πίνακας Ιχνηλασιμότητας και Ελέγχων 52 Κεφάλαιο 11: Τρόπος σύνδεσης ενσωματωμένου συστήματος με pc...53 Κεφάλαιο 12: Ενδεχόμενες βελτιώσεις στο μέλλον.54 Επίλογος.55 Παράρτημα Ι...56 Φόρμα εφαρμογής... 56 Άνοιγμα σειριακής θύρας... 57 Σύνδεση σκάλας με την εφαρμογή... 58 Κατάσταση αναμονής... 59 Κίνηση σκάλας προς τα πάνω... 60 Κίνηση σκάλας προς τα κάτω... 61 Κατάσταση service... 62 Ολοκλήρωση service... 63 Κατάσταση κινδύνου... 64 Κατάσταση Βλάβης στο Moter... 65 Εφαρμογή Server... 66 Ενεργοποίηση server... 67 Σύνδεση εφαρμογής με των server... 68 Αποστολή μηνυμάτων στο δίκτυο... 69 Παράρτημα Ι Ι 70 Κώδικας C# εφαρμογή Γραφικής απεικονίσεως... 70 Κώδικας C# εφαρμογή Server... 79 4

Κώδικας ATmega8515L... 87 Λίστα εικόνων Εικόνα 1 - ATmega8515L... 10 Εικόνα 2 - Αρχιτεκτονική ATmega8515L... 12 Εικόνα 3 - Αρχιτεκτονική ATmega8515L... 13 Εικόνα 6 Διάγραμμα STK500... 17 Εικόνα 7 - Πλατφόρμα ανάπτυξης NET... 19 Εικόνα 8 - Εφαρμογή Γραφικής Απεικόνισης... 23 Εικόνα 9 - Εφαρμογή Server... 23 Εικόνα 10 - Σφάλμα σύνδεσης με την σειριακή θύρα... 45 Εικόνα 11 - Μήνυμα σφάλματος λάθους IP... 50 Εικόνα 12 - Μήνυμα σφάλματος λάθους IP... 51 Εικόνα 13 - Πλακέτα του STK 500... 53 Εικόνα 14 - Αρχική φόρμα εφαρμογής... 56 Εικόνα 15 - Άνοιγμα σειριακής θύρας... 57 Εικόνα 16 - Σύνδεση Σκάλας... 58 Εικόνα 17 - Κατάσταση Αναμονής... 59 Εικόνα 18 - Κίνηση σκάλας προς τα επάνω... 60 Εικόνα 19 - Κίνηση σκάλας προς τα κάτω... 61 Εικόνα 20 - Κατάσταση Service... 62 Εικόνα 21 - Service ολοκληρώθηκε... 63 Εικόνα 22 - Κατάσταση κινδύνου... 64 Εικόνα 23 - Κατάσταση βλάβης του μοτέρ... 65 Εικόνα 24 - Αρχική φόρμα εφαρμογής server... 66 5

Εικόνα 25 - Ενεργοποίηση server... 67 Εικόνα 26 - Σύνδεση εφαρμογής απεικόνισης με εφαρμογή server... 68 Εικόνα 27 - Αποστολή μηνυμάτων στο δίκτυο... 69 6

Κεφάλαιο 1: Εισαγωγή 1.1 Σκοπός της πτυχιακής Ο σκοπός της πτυχιακής αυτής είναι η δημιουργία μιας εφαρμογής γραφικής απεικόνισης της κατάστασης και λειτουργιάς μιας κυλιόμενης σκάλας σε υπολογιστή, και πέρα από αυτή στην διάθεση της εικόνας στο διαδίκτυο επιτρέποντας την από μακρού επιτήρηση της. 1.2 Περιγραφή της πτυχιακής Στα πλαίσια του μαθήματος Τεχνολογία Ενσωματωμένων Συστημάτων βασισμένων σε Υπολογιστές, δημιουργήθηκε μια κυλιόμενη σκάλα δύο κατευθύνσεων. Πιο συγκεκριμένα: 1. H σκάλα δεν κινείται αν δεν ανιχνεύσει κίνηση από αισθητήρα. 2. Λειτουργεί με προτεραιότητα ανάβασης. 3. Υπάρχει περιορισμός χρόνου 15 sec(για 20 σκαλιά) για να φτάσει κάποιος από πάνω έως κάτω και αντίστροφα. 7

4. Αν η σκάλα κινείται προς τα κάτω και εισέλθει και άλλο άτομο που κατεβαίνει, τότε συνεχίζει την ίδια κατεύθυνση ακόμα και αν υπάρχει άλλος που περιμένει προς τα επάνω. 5. Φωτεινές ενδείξεις (LED) να δείχνουν την κατεύθυνση που κινείται η σκάλα. 6. Υπάρχει πλήκτρο για service το οποίο θα κατεβάζει ή ανεβάζει ένα ένα τα σκαλοπάτια. 7. Η σκάλα θα κινείται και από τις 2 μεριές όταν θα γίνεται το service. Κατά τη διάρκεια αυτή οι είσοδοι θα γίνουν κόκκινες. 8. Δεν πρέπει να έχουμε απότομη εκκίνηση. 9. Υπάρχει κουμπί πανικού σε περίπτωση που κάποιος πέσει από τη σκάλα. Η εφαρμογή αναπαριστά σε πραγματικό χρόνο τη εκάστοτε κατάσταση της σκάλας μέσω εικόνων και μηνυμάτων, επιτρέποντας μας έτσι ανά πάσα στιγμή να ελέγχουμε τη σωστή λειτουργία της σκάλας. Η εφαρμογή επίσης συνδέεται με έναν server, στον οποίο στέλνει μηνύματα σχετικά με τη κατάσταση της σκάλας, επιτρέποντας μας έτσι να μπορούμε να κάνουμε τον έλεγχο της απομακρυσμένα. 1.3 Η δομή της πτυχιακής Στα κεφάλαια που ακολουθούν αναλύεται ξεχωριστά κάθε τμήμα της πτυχιακής, δίνοντας έτσι όλες της 8

απαραίτητες πληροφορίες ώστε να καταλάβει ο αναγνώστης τη πλήρη λειτουργία της σκάλας και της εφαρμογής. Κεφάλαιο 2: Λειτουργία Σκάλας Η σκάλα θα κινείται όταν αντιλαμβάνεται κίνηση με την βοήθεια των αισθητήρων πίεσης που θα υπάρχουν στις εισόδους της. Ο σκοπός είναι η εξοικονόμηση ενεργείας. Η σκάλα λειτουργεί με προτεραιότητα και θα ολοκληρώνει την κίνηση της σε ένα ορισμένο χρόνο. Θα συνεχίσει να κινείται προς την ιδία κατεύθυνση όταν αντιληφθεί κίνηση για δεύτερη φορά προς την κατεύθυνση που ήδη κινείται. Κατά την κίνηση της σκάλας θα είναι ενεργοποιημένα τα ανάλογα πρόσδινα led που θα επιτρέπουν την διέλευση από την μια πλευρά κ θα απαγορεύουν (κόκκινα led) την κίνηση στην άλλη πλευρά. Σε περίπτωση βλάβης θα σταματά οπότε θα μπαίνει σε service mode το οποίο θα ενεργοποιεί τα ανάλογα κόκκινα led που θα σταματούν την διέλευση των πεζών και στις δυο μεριές. Το κάθε σκαλί θα κατεβαίνει η θα ανεβαίνει πατώντας το ανάλογο button για την κάθε κίνηση. Σε περίπτωση που τα button αυτά παραμένουν πατημένα τότε τα σκαλιά θα συνεχίσουν να κατεβαίνουν έως ότου επιλέξει ο μηχανικός να την σταματήσει. Σε περίπτωση κάποιου ατυχήματος πάνω στην σκάλα θα υπάρχουν ανάλογα button πάνω και κάτω που θα πατηθούν από τον πεζό, ενεργοποιώντας έτσι ένα buzzer που θα προειδοποιεί το ανάλογο μαγαζί ότι υπάρχει 9

ατύχημα και ταυτόχρονα θα σταματά την κίνηση της σκάλας άρα και την διέλευση κόσμου εκείνη την στιγμή. 2.1 Υλοποίηση Του Ενσωματωμένου Συστήματος Για την υλοποίηση της σκάλας χρειάστηκε να χρησιμοποιηθεί το αναπτυξιακό STK-500, ο μικροελεγκτής ATMEGA 8515L, 1 κύκλωμα για τη αναστροφή της πολικότητας του μοτέρ, για την κίνηση της σκάλας, ένα κύκλωμα για τα LED και ορισμένα αισθητήρια. 2.2 Ο Μικροελεκτής ATmega8515L Εικόνα 1 - ATmega8515L 10

2.3 Χαρακτηριστικά 8-bit μικροελεκτής υψηλής απόδοσης που τροφοδοτείται με συνεχή τάση 10-15V. Αρχιτεκτονική RISC Μπορεί να δεχτεί 130 διαφορετικές εντολές μηχανής. Έχει 32 καταχωρητές γενικού σκοπού 8 ψηφίων. Μπορεί να έχει ταχύτητα διεκπεραίωσης ως και 16 MIPS στα 16MHz. Έχει έναν ενσωματωμένο πολλαπλασιαστή δύο κύκλων. Μη ζωτικές μνήμες προγράμματος και δεδομένων. 8K bytes αυτοπρογραμματιζόμενης μνήμης συστήματος. 512 bytes EEPROM. 512 bytes εσωτερικής SRAM. Μέχρι 64K bytes προαιρετικής εξωτερικής μνήμης. Κλείδωμα προγράμματος για ασφάλεια. Περιφερειακά χαρακτηριστικά. 11

Έχει έναν 8-bit χρονικό/μετρητή. Έχει έναν 16-bit χρονικό/μετρητή. 3 PWM κανάλια. Προγραμματιζόμενο σειριακό USART. Master/Slave SPI σειριακή διασύνδεση. Ενσωματωμένο αναλογικό συγκριτή. 35 προγραμματιζόμενες Ι/Ο γραμμές. Τάσεις λειτουργίας από 2,5 5,5V. Ταχύτητα λειτουργίας από 0-8MHz. Εικόνα 2 - Αρχιτεκτονική ATmega8515L 12

Εικόνα 3 - Αρχιτεκτονική ATmega8515L Ο ATmega8515 είναι ένας CMOS,8-bit μικροελεγκτής βασισμένος στην αρχιτεκτονική RISC της AVR. Εκτελώντας δυναμικές εντολές μηχανής σε έναν μόνο κύκλο ρολογιού ο ATmega8515 επιτυγχάνει ταχύτητες διεκπεραίωσης που φτάνουν τα 1MIPS/1MHz επιτρέποντας στον σχεδιαστή ενός συστήματος να αποκομίσει υψηλή ταχύτητα επεξεργασίας με μικρή κατανάλωση ισχύος. 13

Εικόνα 4 - Tο block διάγραμμα του επεξεργαστή 14

2.4 Ο πυρήνας της CPU του AVR Η κύρια λειτουργία της CPU είναι να διασφαλίζει την ορθή εκτέλεση του προγράμματος. Γι' αυτόν το λόγο λοιπόν η CPU θα πρέπει να προσπελάζει μνήμες, να εκτελεί υπολογισμούς, να ελέγχει περιφερειακές συσκευές και να διαχειρίζεται διακοπές (Interrupts). 15

2.5 Προγραμματισμός του ATmega8515L Για τον προγραμματισμό του μικροελεγκτή χρησιμοποιείται το αναπτυξιακό σύστημα STK500 της ATMEL. 16

Εικόνα 6 Διάγραμμα STK500 Κεφάλαιο 3: Απεικόνιση Λειτουργίας Σκάλας 3.1 Περιβάλλον Υλοποίησης Για την υλοποίηση της απεικόνισης της σκάλας δημιουργήθηκε εφαρμογή με την γλώσσα προγραμματισμού C sharp (C#). 3.2 C Sharp 17

Η C# είναι μια σχετικά νέα αντικειμενοστραφής γλώσσα προγραμματισμού η οποία δημιουργήθηκε από την Microsoft. Δανείζεται πολλά στοιχεία, και έχει παρόμοια σύνταξη, με την C++ και την Java, κάνοντας την εκμάθηση της σχετικά εύκολη. Είναι γλώσσα ειδικά σχεδιασμένη για να υποστηρίζει το.net framework της ίδιας εταιρείας. Βασικό χαρακτηριστικό της είναι ότι δεν παράγει απευθείας κώδικα μηχανής όπως η C++, άλλα ένα ενδιάμεσο κώδικα που στοχεύει το.net. Το.ΝΕΤ είναι μια νέα πλατφόρμα ανάπτυξης εφαρμογών σε περιβάλλοντα Windows. Σύμφωνα με την Microsoft, έχει ως σκοπό την απλοποίηση της ανάπτυξης εφαρμογών «κρύβοντας» τις τεχνικές λεπτομέρειες υλοποίησης πολλών λειτουργιών, όπως διαχείριση μνήμης, επικοινωνία μέσω δικτύου, είσοδο/έξοδο από συσκευές και αφήνοντας το προγραμματιστή ελεύθερο να επικεντρωθεί στην «λογική» του προγράμματος. Το.NET χαρακτηρίζεται ως managed πλατφόρμα με την έννοια ότι δημιουργεί ένα ελεγχόμενο και ασφαλές περιβάλλον μέσα στο οποίο μπορεί να τρέξει μια εφαρμογή. Η ασφάλεια έγκειται για παράδειγμα στον έλεγχο στην δέσμευση και προσπέλαση της μνήμης (δεν υπάρχουν pointers, δεν μπορείς να προσπελάσεις μια θέση μνήμης εκτός πίνακα), στο τύπο των μεταβλητών και δεδομένων (δεν μπορείς να θέσεις μια float τιμή σε μια ακέραια μεταβλητή) ή στην αυτόματη υλοποίηση δικλείδων ασφαλείας. Επίσης το.νετ παρέχει και μια πληθώρα βιβλιοθηκών με έτοιμες 18

λειτουργίες που μπορεί να χρησιμοποιήσει ο χρήστης για την ανάπτυξη των εφαρμογών. Εικόνα 7 - Πλατφόρμα ανάπτυξης NET Το.ΝΕΤ έχει πολλά πλεονεκτήματα για την ανάπτυξη εφαρμογών: Είναι εγγενώς αντικειμενοστραφής πλατφόρμα. Είναι ανεξάρτητο από γλώσσα προγραμματισμού. Σε μια εφαρμογή ένας προγραμματιστής μπορεί να γράφει κώδικα σε C#, άλλος σε VB.NET και άλλος σε managed C++ και τα τμήματα που αναπτύσσει ο καθένας να συνεργάζονται μεταξύ τους χωρίς προβλήματα. 19

Η χρήση βιβλιοθηκών (assemblies) κάνει πολύ εύκολη την επαναχρησιμοποίηση κώδικα. Παρέχει πολύ εύκολη εγκατάσταση. Αρκεί να αντιγράψουμε το κατάλογο της εφαρμογής σε ένα άλλο υπολογιστή και αυτή θα τρέξει άμεσα. Δεν υπάρχει installation, δεν πειράζει το registry. Παρέχει πληθώρα έτοιμων λειτουργιών που κάνουν την ανάπτυξη κώδικα πολύ εύκολη. Αυτοματοποιημένη διαχείριση μνήμης, ο χρήστης δεν χρειάζεται να ασχοληθεί με αποδέσμευση μνήμης. Η C# υποστηρίζει τους παραδοσιακούς τύπους δεδομένων όπως int για ακέραιους αριθμούς, float για αριθμούς κινητής υποδιαστολής, string για κείμενο, char για χαρακτήρες. Επιπλέον υποστηρίζει του τύπους class και struct οι οποίοι επιτρέπουν στο χρήστη να ορίσει δικά του αντικείμενα. Παρακάτω βλέπετε τους πιο κοινούς τύπους δεδομένων που χρησιμοποιούμε κατά το προγραμματισμό με C# bool true ή false byte ακέραιος αριθμός από 0 μέχρι 255 short ακέραιος αριθμός από 32,768 μέχρι 32,767 int ακέραιος αριθμός 32 bit 20

double αριθμός κινητής υποδιαστολής μεγάλης ακρίβειας float αριθμός κινητής υποδιαστολής char χαρακτήρας ASCII 8 bit string κείμενο Οι τύποι short και int έχουν παρόμοια χρήση, μόνο που ο int έχει μεγαλύτερο εύρος, δηλαδή μπορεί να αποθηκεύσει μεγαλύτερο εύρος (περισσότερους) αριθμούς από ότι ο short. Αυτό συμβαίνει γιατί μια μεταβλητής τύπου short χρησιμοποιεί 16 bit στην μνήμη ενώ μια int 32 bit. Το ίδιο ισχύει για τους τύπους float (32bit) και double (64bit). Ο χαρακτήρας f στο τέλος του αριθμού στο παράδειγμα για το τύπο float σηματοδοτεί ότι ο αριθμός αυτός είναι πράγματι τύπου float (και συνεπώς απαιτεί λιγότερο χώρο για να αποθηκευτεί). Τέλος ένας χαρακτήρας (char) ορίζεται με μονά εισαγωγικά και ένα κείμενο (string) με διπλά. Πέρα από αυτούς τους βασικούς τύπους δεδομένων, η C# υποστηρίζει και το τύπο class. H class μας επιτρέπει να ορίσουμε δικά μας αντικείμενα. Ένα αντικείμενο σε μια αντικειμενοστραφή γλώσσα προγραμματισμού (όπως η C#, C++, Java κλπ), είναι μια οντότητα που χαρακτηρίζεται από δεδομένα και συμπεριφορά. Τα αντικείμενα αυτά έχουν άμεση αντιστοίχιση με αντικείμενα του πραγματικού κόσμου. 21

Πηγή : http://videogameslab.wordpress.com/2009/01/08/introcsharp-net/ Κεφάλαιο 4: Απαιτήσεις Απεικόνισης 4.1 Ορισμός Απαιτήσεων Εισαγωγή Η εφαρμογή διαχειρίζεται μια κυλιόμενη σκάλα και εμφανίζει σε γραφική απεικόνιση την κατάστασή της σε οθόνη υπολογιστή. Επίσης έχει την δυνατότητα διάθεσης της εικόνας στο διαδίκτυο επιτρέποντας την απομακρυσμένη επιτήρησή της. Μοντέλα συστήματος Υπάρχουν δύο μικρές εφαρμογές που το αποτέλεσμά τους δίνει την συνολική μας εφαρμογή. Η μια εφαρμογή ελέγχει την κυλιόμενη σκάλα και παράγει απεικονίσεις 22

λειτουργίας και η δεύτερη αποστέλλει μηνύματα στους χρήστες μέσω LAN. Εικόνα 8 - Εφαρμογή Γραφικής Απεικόνισης Εικόνα 9 - Εφαρμογή Server Ορισμός λειτουργικών απαιτήσεων 1. Γραφική απεικόνιση της κατάστασης της σκάλας 2. Αποστολή μηνυμάτων της κατάστασης της σκάλας μέσω LAN 23

3. Το σύστημα θα δουλεύει σε περιβάλλον Windows 7 Ορισμός μη λειτουργικών απαιτήσεων 1. Το σύστημα θα δίνει αξιόπιστα την πραγματική λειτουργία της σκάλας 2. Το σύστημα θα είναι εύχρηστο παρουσιάζοντας μιαν άμεσα κατανοητή εικόνα του συστήματος 3. Το σύστημα θα παραδοθεί στις 1/8/2012 4. Το σύστημα θα υλοποιηθεί σε περιβάλλον C# Περιορισμοί του συστήματος Το σύστημα θα τρέχει τοπικά και θα έχει την δυνατότητα σύνδεσης με κάποιο δικτυακό τόπο. Δεν θα μπορεί o χρήστης να μπει στο σύστημα από άλλο Η/Υ. Δεν θα υπάρχει δυνατότητα προσθήκης άλλων χρηστών και καθορισμός δικαιωμάτων μετά την εγκατάσταση του συστήματος. Θα δουλεύει μόνο σε Windows 7 νεότερες εκδόσεις. Διευκρίνηση απαιτήσεων 1. Γραφική απεικόνιση της κατάστασης της σκάλας 1.1. Σύνδεση εφαρμογής με κυλιόμενη σκάλα μέσω σειριακής θύρας. 24

1.2. Όταν η σκάλα ξεκινήσει να κάνει διαγνωστικό έλεγχο εμφανίζεται ένα μήνυμα και σχετική εικόνα. 1.3. Όταν η σκάλα είναι σε αναμονή να εμφανίζεται σχετικό μήνυμα και σχετική εικόνα 1.4. Όταν η σκάλα κινείται προς τα κάτω να εμφανίζεται ένα βέλος με κατεύθυνση προς τα κάτω και ανάλογο μήνυμα. 1.5. Όταν η σκάλα κινείται προς τα πάνω να εμφανίζεται ένα βέλος με κατεύθυνση προς τα πάνω και ανάλογο μήνυμα. 1.6. Όταν η σκάλα είναι σε κατάσταση service να εμφανίζεται ένα εικονίδιο service και αντίστοιχο μήνυμα. 1.7. Όταν το service ολοκληρωθεί να εμφανίζεται ένα εικονίδιο service complete και αντίστοιχο μήνυμα. 1.8. Όταν η σκάλα είναι σε κατάσταση κινδύνου να εμφανίζεται το μήνυμα κίνδυνος και σχετική εικόνα. 1.9. Σε περίπτωση που το μοτέρ δεν λειτουργήσει να εμφανίζεται ένα εικονίδιο error 1.10. Κλείσιμο σειριακής θύρας 25

2. Αποστολή μηνυμάτων της κατάστασης της σκάλας μέσω LAN 2.1. Για να ενεργοποιήσουμε των server πατάμε το button start Listening και εμφανίζεται σχετικό μήνυμα 2.2. Πατάμε το connect server και γίνει η σύνδεση και εμφανίζεται μήνυμα επιτυχούς σύνδεσης 2.3. Μεταφορά μηνυμάτων σχετικά με τις καταστάσεις των αισθητηρίων Περιγραφή πλατφόρμας υλικού για το σύστημα Ο Η/Υ που θα εγκατασταθεί το σύστημα είναι Intel Core i5 2,4 GHZ, με μνήμη RAM 4 GB, λειτουργικό σύστημα Windows 7, σκληρό δίσκο 640 GB με ελεύθερο χώρο 500 GB. Κεφάλαιο 5: Προδιαγραφές Απεικόνισης 5.1 Προδιαγραφές Απαιτήσεων 26

ΠΡΟΔΙΑΓΡΑΦΗ 1: Σύνδεση εφαρμογής με κυλιόμενη σκάλα μέσω σειριακής θύρας Υπηρεσία Περιγραφή Δεδομένα Εισόδου Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Σύνδεση με σειριακή θύρα Ανοίγουμε την εφαρμογή, επιλέγουμε το κουμπί Open Port Κατάσταση σειριακής θύρας Σειριακή θύρα υπολογιστή Μήνυμα σύνδεσης Port Open! Οθόνη υπολογιστή Σύνδεση καλωδίου στην σειριακή θύρα Η θύρα να λειτουργεί κανονικά Επιτυχής σύνδεση ΠΡΟΔΙΑΓΡΑΦΗ 2: Όταν η σκάλα ξεκινήσει να κάνει διαγνωστικό έλεγχο εμφανίζεται ένα μήνυμα και σχετική εικόνα 27

Υπηρεσία Περιγραφή Δεδομένα Εισόδου Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Διαγνωστικός Έλεγχος Ανοίγουμε την εφαρμογή, ανοίγουμε την σειριακή θύρα και ξεκινάει ο έλεγχος Κατάσταση σκάλας (ένα string) Σειριακή θύρα πλακέτας Μήνυμα σύνδεσης και εικόνα connect.gif Οθόνη υπολογιστή Σύνδεσης σκάλας στον υπολογιστή Να είναι ενεργή η σκάλα Επιτυχής σύνδεση ΠΡΟΔΙΑΓΡΑΦΗ 3 : Όταν η σκάλα είναι σε αναμονή να εμφανίζεται σχετικό μήνυμα και σχετική εικόνα Υπηρεσία Περιγραφή Αναμονή σκάλας Η σκάλα είναι σε κατάσταση αναμονής 28

όσο δεν χρησιμοποιείται από κάποιο άτομο και δεν κινείται Δεδομένα Εισόδου Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Κατάσταση σκάλας (ένα string) Σειριακή θύρα πλακέτας Μήνυμα αναμονής και εικόνα stαndbay.png Οθόνη υπολογιστή Σύνδεσης σκάλας στον υπολογιστή Να είναι ενεργή η σκάλα Αναμονή σκάλας ΠΡΟΔΙΑΓΡΑΦΗ 4 : Όταν η σκάλα κινείται προς τα κάτω να εμφανίζεται ένα βέλος με κατεύθυνση προς τα κάτω και ανάλογο μήνυμα Υπηρεσία Περιγραφή Κίνηση σκάλας προς τα κάτω Η σκάλα είναι σε κατάσταση λειτουργίας 29

και κινείται προς τα κάτω Δεδομένα Εισόδου Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Κατάσταση σκάλας (ένα string) Σειριακή θύρα πλακέτας Μήνυμα κίνησης και εικόνα down.png Οθόνη υπολογιστή Σύνδεσης σκάλας στον υπολογιστή Να είναι ενεργή η σκάλα Κίνηση σκάλας προς τα κάτω ΠΡΟΔΙΑΓΡΑΦΗ 5 : Όταν η σκάλα κινείται προς τα πάνω να εμφανίζεται ένα βέλος με κατεύθυνση προς τα πάνω και ανάλογο μήνυμα Υπηρεσία Περιγραφή Κίνηση σκάλας προς τα πάνω Η σκάλα είναι σε κατάσταση λειτουργίας και κινείται προς τα πάνω 30

Δεδομένα Εισόδου Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Κατάσταση σκάλας (ένα string) Σειριακή θύρα πλακέτας Μήνυμα κίνησης και εικόνα up.png Οθόνη υπολογιστή Σύνδεσης σκάλας στον υπολογιστή Να είναι ενεργή η σκάλα Κίνηση σκάλας προς τα πάνω ΠΡΟΔΙΑΓΡΑΦΗ 6 : Όταν η σκάλα είναι σε κατάσταση service να εμφανίζεται ένα εικονίδιο service και αντίστοιχο μήνυμα Υπηρεσία Περιγραφή Κατάσταση service Η σκάλα είναι σε κατάσταση λειτουργίας και πατιέται το κουμπί service για να μπει σε κατάσταση service σταματώντας την κίνησή της 31

Δεδομένα Εισόδου Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Κατάσταση σκάλας (ένα string) Σειριακή θύρα πλακέτας Μήνυμα service και εικόνα service.png Οθόνη υπολογιστή Σύνδεσης σκάλας στον υπολογιστή Να είναι ενεργή η σκάλα Ακινητοποίηση σκάλας ΠΡΟΔΙΑΓΡΑΦΗ 7 : Όταν το service ολοκληρωθεί να εμφανίζεται ένα εικονίδιο service complete και αντίστοιχο μήνυμα Υπηρεσία Περιγραφή Ολοκλήρωση service Η σκάλα είναι ακινητοποιημένη και πατιέται το κουμπί του service και η 32

σκάλα μπαίνει σε κατάσταση αναμονής Δεδομένα Εισόδου Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Κατάσταση σκάλας (ένα string) Σειριακή θύρα πλακέτας Μήνυμα service complete και εικόνα servicecomplete.png Οθόνη υπολογιστή Σύνδεσης σκάλας στον υπολογιστή Να είναι ενεργή η σκάλα Σκάλα σε κατάσταση αναμονής ΠΡΟΔΙΑΓΡΑΦΗ 8 : Όταν η σκάλα είναι σε κατάσταση κινδύνου να εμφανίζεται το μήνυμα κίνδυνος και σχετική εικόνα Υπηρεσία Περιγραφή Κατάσταση κινδύνου Πατιέται το κουμπί πανικού και η σκάλα ακινητοποιείται 33

Δεδομένα Εισόδου Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Κατάσταση σκάλας (ένα string) Σειριακή θύρα πλακέτας Μήνυμα κινδύνου και εικόνα alarm.png Οθόνη υπολογιστή Σύνδεσης σκάλας στον υπολογιστή Να είναι ενεργή η σκάλα Ακινητοποιημένη σκάλα ΠΡΟΔΙΑΓΡΑΦΗ 9 : Σε περίπτωση που το μοτέρ δεν λειτουργήσει να εμφανίζεται ένα εικονίδιο error Υπηρεσία Περιγραφή Σφάλμα στο μοτέρ της σκάλας Το μοτέρ της σκάλας παθαίνει τεχνική βλάβη. Υπάρχει έλασμα που όταν για συγκεκριμένο χρονικό διάστημα παραμένει πατημένο ενεργοποιείται το μήνυμα λάθους (error moter). Επίσης και 34

όταν βγαίνει το καλώδιο από το πηνίο συμβαίνει το ίδιο σφάλμα Δεδομένα Εισόδου Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Κατάσταση σκάλας (ένα string) Σειριακή θύρα πλακέτας Μήνυμα σφάλματος και εικόνα error.png Οθόνη υπολογιστή Σύνδεσης σκάλας στον υπολογιστή Να είναι ενεργή η σκάλα Ακινητοποιημένη σκάλα ΠΡΟΔΙΑΓΡΑΦΗ 10 : Κλείσιμο σειριακής θύρας υπολογιστή Υπηρεσία Περιγραφή Κλείσιμο σειριακής θύρας Στην φόρμα της εφαρμογής Γραφικής Απεικόνισης πατάμε το κουμπί Close Port και τερματίζει η επικοινωνία με την σειριακή θύρα 35

Δεδομένα Εισόδου Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Κατάσταση της σειριακής θύρας Σειριακή θύρα υπολογιστή Μήνυμα port close Οθόνη υπολογιστή Σύνδεση καλωδίου στην σειριακή θύρα Σωστή λειτουργία της σειριακής θύρας Σταματάει η επικοινωνία με την σκάλα ΠΡΟΔΙΑΓΡΑΦΗ 11 : Για να ενεργοποιήσουμε των server πατάμε το button start Listening και εμφανίζεται σχετικό μήνυμα Υπηρεσία Περιγραφή Δεδομένα Εισόδου Ενεργοποίηση του Server Ενεργοποιείται ο Server Να έχει πατηθεί το κουμπί Start Listening 36

Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Ποντίκι (μονάδα εισόδου υπολογιστή) Μήνυμα επιτυχούς ενεργοποίησης Οθόνη υπολογιστή Να υπάρχει σωστή IP Να τρέχει η εφαρμογή Ενεργοποίηση Server ΠΡΟΔΙΑΓΡΑΦΗ 12 : Πατάμε το connect server και γίνει η σύνδεση και εμφανίζεται μήνυμα επιτυχούς σύνδεσης Υπηρεσία Περιγραφή Δεδομένα Εισόδου Σύνδεση με Server Συνδεόμαστε με τον Server για να αποστέλλουμε μηνύματα στους χρήστες Σύνδεση Server 37

Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Η πληροφορία έρχεται εσωτερικά από το πρόγραμμα Μήνυμα επιτυχούς σύνδεσης με Server Οθόνη υπολογιστή Να έχει πατηθεί το κουμπί Connect στην αρχική φόρμα της εφαρμογής Γραφικής Απεικόνισης Να τρέχει η εφαρμογή και να έχει ενεργοποιηθεί ο Server Σύνδεση με Server ΠΡΟΔΙΑΓΡΑΦΗ 13 : Μεταφορά μηνυμάτων σχετικά με τις καταστάσεις των αισθητηρίων Υπηρεσία Περιγραφή Δεδομένα Εισόδου Μεταφορά μηνυμάτων Μεταφέρονται τα μηνύματα με τις καταστάσεις των αισθητηρίων Καταστάσεις αισθητηρίων 38

Προέλευση Δεδομένα Εξόδου Προορισμός Απαίτηση Προϋπόθεση Αποτέλεσμα Κυλιόμενη σκάλα Μηνύματα καταστάσεων Οθόνη υπολογιστή Αποστολή τιμών αισθητήρων Να λειτουργεί η σκάλα και να είναι συνδεδεμένος ο Server Μεταφορά σχετικών μηνυμάτων Κεφάλαιο 6: Πίνακας Ιχνηλασιμότητας ΑΠΑΙΤΗΣΕΙΣ ΠΡΟΔΙΑΓΡΑΦΕΣ 1.1 1 1.2 2 1.3 3 1.4 4 1.5 5 1.6 6 39

1.7 7 1.8 8 2.1 9 2.2 10 2.3 11 Κεφάλαιο 7: Διάγραμμα Ροής Δεδομένων 7. 1 Διάγραμμα 0ου επιπέδου Διαχειριστής IP Address Μηνύματα Απεικονίσεις Καταστάσεων Σκάλας Μηνύματα Εικόνες Χρήστες Κυλιόμενη Σκάλα 40

7.2 Διάγραμμα 1ου επιπέδου Διαχειριστής IP Address 1. Γραφική απεικόνιση της κατάστασης της σκάλας Μηνύματα Μηνύματα Εικόνες Χρήστες Κυλιόμενη Σκάλα IP Address 2. Αποστολή μηνυμάτων της κατάστασης της σκάλας 7.3 Διάγραμμα 2ου επιπέδου Α.γραφική απεικόνιση 41

Σύνδεση 1.2 Διαγνωστικός Έλεγχος Διαχειριστής Open Port 1.1 Σύνδεση Με Σειριακή Θύρα 1.7 Ολοκλήρωση Service Ενεργοποίηση Μήνυμα Εικόνες Close Port Αποσύνδεση Ενεργοποίηση Μήνυμα 1.10 Κλείσιμο Σειριακής Θύρας Μήνυμα 1.3 Σκάλα σε αναμονή 1.6 Service Μήνυμα Εικόνες Κυλιόμενη Σκάλα Μήνυμα Μήνυμα Μήνυμα Εικόνες 1.8 Κατάσταση κινδύνου Μήνυμα Εικόνες Μήνυμα Εικόνες Χρήστες Μήνυμα 1.4 Πάνω κίνηση 1.5 Κάτω κίνηση 1.9 Σφάλμα Μοτέρ Μήνυμα Εικόνες Μήνυμα IP Address 2.1 Ενεργοποίηση Server Μήνυμα Διαχειριστής IP Address 2.2 Σύνδεση Server Μηνύματα Χρήστες Μήνυμα 2.3 Μεταφορά μηνυμάτων καταστάσεων αισθητηρίων 42

7.3 Διάγραμμα Κυλιόμενης Σκάλας Αισθητήριο up Τιμή αισθητηρίου Αισθητήριο down Τιμή αισθητηρίου Κυλιόμενη Σκάλα Μηνύματα Απεικόνιση Σκάλας Διακόπτης service Τιμή διακόπτη Κουμπί Κινδύνου Τιμή κουμπιού 43

Κεφάλαιο 8: Ανάλυση Επικινδυνότητας ΔΕΝΤΡΟ ΛΑΘΟΥΣ ΠΤΥΧΙΑΚΗΣ ΛΑΘΟΣ ΑΠΟΦΑΣΗ ΧΕΙΡΙΣΤΗ/ΣΥΝΤΗΡΗΤΗ ΛΑΘΟΣ ΜΗΝΥΜΑ ΣΥΝΔΕΣΗ ΣΤΟ LAN ΤΙΜΗ ΚΟΥΜΠΙΟΥ/ ΔΙΑΚΟΠΤΗ ΜΗΝΥΜΑ ΛΑΘΟΣ IP ΚΟΥΜΠΙ CONNECT ΚΟΥΜΠΙ ΚΙΝΔΥΝΟΥ ΔΙΑΚΟΠΤΗΣ SERVICE ΕΛΕΓΧΟΣ ΚΩΔΙΚΑ ΕΛΕΓΧΟΣ ΚΩΔΙΚΑ ΕΛΕΓΧΟΣ ΚΩΔΙΚΑ ΕΛΕΓΧΟΣ ΕΛΕΓΧΟΣ HARDWARE ΔΙΑΚΟΠΤΗ HARDWARE ΚΟΥΜΠΙΟΥ Κεφάλαιο 9: Τεστ Κλειστού Κουτιού 9.1 Σύνδεση Σειριακής Θύρας Υπολογιστή Δοκιμάσαμε να πατήσουμε το κουμπί της εφαρμογής με συνδεδεμένο το καλώδιο στην σειριακή θύρα του υπολογιστή και επαναλάβαμε την ίδια διαδικασία με το καλώδιο αποσυνδεδεμένο. Τα αποτελέσματα στην πρώτη περίπτωση ήταν να λάβουμε το μήνυμα στην οθόνη Open Port (κανονική 44

σύνδεση) και στην δεύτερη περίπτωση πήραμε μήνυμα σφάλματος το οποίο φαίνεται στην παρακάτω εικόνα. Εικόνα 10 - Σφάλμα σύνδεσης με την σειριακή θύρα 9.2 Διαγνωστικός Έλεγχος Δοκιμάσαμε 20 φορές να ανοίξουμε το τροφοδοτικό της σκάλας έχοντας ταυτόχρονα ανοικτή και την εφαρμογή της Γραφικής Απεικόνισης και λάβαμε και τις 20 φορές στην εφαρμογή την εικόνα connect.gif. 45

9.3 Κυλιόμενη Σκάλα Σε Αναμονή Δοκιμάσαμε 20 φορές με την εφαρμογή να τρέχει, ενεργοποιημένη την σκάλα, την σειριακή θύρα συνδεδεμένη και τον διαγνωστικό έλεγχο ολοκληρωμένο και λάβαμε και τις 20 φορές στην εφαρμογή την εικόνα studby.png. Επίσης δοκιμάσαμε 20 φορές μετά από το τέλος κίνησης της σκάλας (πάνω ή κάτω) και λάβαμε πάλι την εικόνα studby.png. 9.4 Κυλιόμενη Σκάλα Κίνηση Προς Τα Κάτω Δοκιμάσαμε 20 φορές με την εφαρμογή να τρέχει, ενεργοποιημένη την σκάλα, την σειριακή θύρα συνδεδεμένη και πατημένο το αισθητήριο κίνησης προς τα κάτω και λάβαμε και τις 20 φορές στην εφαρμογή την εικόνα down.png. 9.5 Κυλιόμενη Σκάλα Κίνηση Προς Τα Πάνω Δοκιμάσαμε 20 φορές με την εφαρμογή να τρέχει, ενεργοποιημένη την σκάλα, την σειριακή θύρα συνδεδεμένη και πατημένο το αισθητήριο κίνησης προς τα πάνω και λάβαμε και τις 20 φορές στην εφαρμογή την εικόνα up.png. 46

9.6 Κυλιόμενη Σκάλα Κατάσταση Service Δοκιμάσαμε 20 φορές με την εφαρμογή να τρέχει, ενεργοποιημένη την σκάλα, την σειριακή θύρα συνδεδεμένη και πατημένο τον διακόπτη του service από το service box στην κατάσταση 1. Από τις 20 φορές τις 14 φορές (ποσοστό 70%) εμφάνισε στην εφαρμογή την εικόνα servicecomplete.png και μετά την εικόνα service.png και τις υπόλοιπες 6 φορές (ποσοστό 30%) εμφάνισε κανονικά στην εφαρμογή μόνο την εικόνα service.png. 9.7 Κυλιόμενη Σκάλα Ολοκλήρωση Service Δοκιμάσαμε 20 φορές με την εφαρμογή να τρέχει, ενεργοποιημένη την σκάλα, την σειριακή θύρα συνδεδεμένη και πατημένο τον διακόπτη του service από το service box στην κατάσταση 1. Και τις 20 φορές εμφάνισε στην εφαρμογή την εικόνα servicecomplete.png. 47

9.8 Κυλιόμενη Σκάλα Κατάσταση Κίνδυνου Δοκιμάσαμε 20 φορές με την εφαρμογή να τρέχει, ενεργοποιημένη την σκάλα, την σειριακή θύρα συνδεδεμένη και πατημένο το κουμπί πανικού. Από τις 20 φορές, τις 17 (ποσοστό 85%) στην εφαρμογή εμφανίστηκε η εικόνα panic.png και τις 3 φορές (ποσοστό 15%) δεν εμφανίστηκε η εικόνα στην εφαρμογή (πιθανότατα λόγω όχι καλού πατήματος του κουμπιού). 9.9 Κυλιόμενη Σκάλα Βλάβη Μοτέρ Δοκιμάσαμε 20 φορές με την εφαρμογή να τρέχει, ενεργοποιημένη την σκάλα, την σειριακή θύρα συνδεδεμένη και πατημένο οποιοδήποτε αισθητήριο κίνησης. Και τις 20 φορές, στην εφαρμογή δεν εμφανίστηκε η εικόνα error.png. Μόνο όταν αποσυνδέσαμε το καλώδιο του μοτέρ εμφανίστηκε η εικόνα στην εφαρμογή. 48

9.10 Κυλιόμενη Σκάλα Ενεργοποίηση Server Στην εφαρμογή του server δοκιμάσαμε τις εξής τιμές για τιμή στην IP: 127.0.0.1 1.0.0.0 80.0.0.0 172.0.0.0 192.0.0.0 100 200 abc Σε όλες τις τιμές εκτός από την 1 η (127.0.0.1) λαμβάνουμε μήνυμα σφάλματος το οποίο φαίνετε στην παρακάτω εικόνα 49

Εικόνα 11 - Μήνυμα σφάλματος λάθους IP 9.11 Κυλιόμενη Σκάλα Σύνδεση Server Στην εφαρμογή του server δοκιμάσαμε τις εξής τιμές για τιμή στην IP: 127.0.0.1 1.0.0.0 80.0.0.0 172.0.0.0 192.0.0.0 100 200 abc 50

Σε όλες τις τιμές εκτός από την 1 η (127.0.0.1) λαμβάνουμε μήνυμα σφάλματος το οποίο φαίνετε στην παρακάτω εικόνα Εικόνα 12 - Μήνυμα σφάλματος λάθους IP 51

Κεφάλαιο 10: Πίνακας Ιχνηλασιμότητας και Ελέγχων ΑΠΑΙΤΗΣΕΙΣ ΠΡΟΔΙΑΓΡΑΦΕΣ ΤΕΣΤ ΕΛΕΓΧΩΝ 1.1 1 9.1 1.2 2 9.2 1.3 3 9.3 1.4 4 9.4 1.5 5 9.5 1.6 6 9.6 1.7 7 9.7 1.8 8 9.8 1.9 9 9.9 1.10 10-2.1 11 9.10 2.2 12 9.11 2.3 13-52

Κεφάλαιο 11: Τρόπος σύνδεσης ενσωματωμένου συστήματος με pc Ο STK 500 έχει 2 σειριακές. Η μία είναι για τον προγραμματισμό του μικροελεκτή και η άλλη για την επικοινωνία με τις εφαρμογές. Για την σύνδεση του συστήματος με το PC χρησιμοποιήθηκε ένα καλώδιο usb to serial και 2 καλώδια για την σύνδεση του μικροελεκτή με την σειριακή θύρα του STK. Εικόνα 13 - Πλακέτα του STK 500 53

Κεφάλαιο 12: Ενδεχόμενες βελτιώσεις στο μέλλον Ο χειρισμός της σκάλας από απόσταση μέσω ειδικής εφαρμογής θα ήταν μια πολύ καλή λύση σε περίπτωση που έχουμε να ελέγξουμε πολλές σκάλες ταυτόχρονα και πιθανόν κατασκευασμένες και σε διαφορετικές τοποθεσίες. Φυσικά αυτό κρύβει κινδύνους σε περίπτωση που η εφαρμογή έχει κομμάτια κώδικά όχι καλά διατυπωμένα σε απαιτήσεις ή προγραμματισμένα ή ελεγμένα και πιθανότητα πρόκλησης ατυχήματος και σωματικής βλάβης. Το πρόβλημα αυτό θα μπορούσε να λυθεί με χρήση κάμερας όπου θα παρακολουθεί σε πραγματικό χρόνο την κίνηση της σκάλας και θα υπάρχει η δυνατότητα άμεσης επέμβασης από τον χειριστή της εφαρμογής ώστε να απενεργοποιήσει την σκάλα ή να ειδοποίηση τον τεχνικό απομακρυσμένα και να διορθωθεί το πρόβλημα. Επίσης μια ακόμη μελλοντική βελτίωση θα μπορούσε να ήταν η γραφική απεικόνιση και στους χρήστες του δικτύου δηλαδή αντί να λαμβάνουν μόνο μήνυμα να λαμβάνουν και αντίστοιχη εικόνα που να παριστάνει το νόημα του μηνύματος. 54

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

Παράρτημα Ι Στο κεφάλαιο αυτό θα δειχθούν οι τρέχουσες απεικονίσεις της εφαρμογής σε κάθε κατάσταση της σκάλας Φόρμα εφαρμογής Εικόνα 14 - Αρχική φόρμα εφαρμογής 56

Σε αυτή την εφαρμογή υπάρχει ένα textbox για την εισαγωγή τις IP του server, ένα button Connect server για την σύνδεση με τον server το ίδιο button όταν γίνει η σύνδεση με των server χρησιμοποιείται για την αποσύνδεση του server, ένα button open port για το άνοιγμα τις σειριακής, ένα button close port για το κλείσιμο τις σειριακής, ένα imagebox για γραφική απεικόνιση των καταστάσεων και ένα statusstrip για τα μηνύματα των καταστάσεων. Που θα περιγράφουν αναλυτικά παρακάτω Άνοιγμα σειριακής θύρας Εικόνα 15 - Άνοιγμα σειριακής θύρας 57

Για να ανοίξουμε την σειριακή πατάμε το Button open port όταν άνοιξει η σειριακή εμφανίζεται το μήνυμα port open! Σύνδεση σκάλας με την εφαρμογή Εικόνα 16 - Σύνδεση Σκάλας Όταν η σκάλα ξεκινήσει στέλνει ένα μήνυμα ότι έχει συνδεθεί με την εφαρμογή και εμφανίζεται η παραπάνω εικόνα. 58

Κατάσταση αναμονής Εικόνα 17 - Κατάσταση Αναμονής Όταν η σκάλα δεν κινείται στέλνει ένα μήνυμα ότι είναι σε αναμονή μέχρι να την χρησιμοποίησει κάποιος και εμφανίζεται η παραπάνω εικόνα 59

Κίνηση σκάλας προς τα πάνω Εικόνα 18 - Κίνηση σκάλας προς τα επάνω Όταν κάποιος πατήσει το αισθητήριο για να ανέβει προς τα πάνω η σκάλα στέλνει ένα μήνυμα και εμφανίζεται η παραπάνω εικόνα 60

Κίνηση σκάλας προς τα κάτω Εικόνα 19 - Κίνηση σκάλας προς τα κάτω Όταν κάποιος πατήσει το αισθητήριο για να κατέβει προς τα κάτω η σκάλα στέλνει ένα μήνυμα και εμφανίζεται η παραπάνω εικόνα 61

Κατάσταση service Εικόνα 20 - Κατάσταση Service Όταν έρθει ο τεχνικός για το service τις σκάλας και πατήσει το switch από το service box η σκάλα στέλνει ένα μήνυμα ότι γίνεται service και εμφανίζεται η παραπάνω εικόνα 62

Ολοκλήρωση service Εικόνα 21 - Service ολοκληρώθηκε Όταν τελείωση το service και ξανά πατηθεί το switch η σκάλα στέλνει μήνυμα και εμφανίζεται η παραπάνω εικόνα και η σκάλα επανέρχεται σε κατάσταση αναμονής 63

Κατάσταση κινδύνου Εικόνα 22 - Κατάσταση κινδύνου Σε περίπτωση που πατηθεί το κουμπί πανικού θα σταματήσει η σκάλα και θα σταλεί μήνυμα και θα εμφανιστεί η παραπάνω εικόνα 64

Κατάσταση Βλάβης στο Moter Εικόνα 23 - Κατάσταση βλάβης του μοτέρ Σε περίπτωση που το μοτέρ έχει βλάβη η σκάλα στέλνει ένα μήνυμα και εμφανίζεται η παραπάνω εικόνα 65

Εφαρμογή Server Εικόνα 24 - Αρχική φόρμα εφαρμογής server Για την διάθεση των καταστάσεων στο δίκτυο έχει δημιουργηθεί μια εφαρμογή server στην οποία συνδέεται η εφαρμογή γραφικής απεικόνισης και στέλνει τα μηνύματα καταστάσεων και ο server τα στέλνει σε όλα τα άτομα που είναι συνδεδεμένα στο δίκτυο. Η λειτουργίες του server εμφανίζονται παρακάτω: 66

Ενεργοποίηση server Εικόνα 25 - Ενεργοποίηση server Για να ενεργοποιήσουμε των server πατάμε το button start Listening και εμφανίζεται παραπάνω μήνυμα 67