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



Σχετικά έγγραφα
ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ

ΤΟΜΟΣ Α ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΙΚΑΙΟ

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

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

στο πλαίσιο του έργου ΣΥΜΒΟΥΛΟΣ ΑΞΙΟΛΟΓΗΣΗΣ ΚΑΤΑ ΤΗ ΔΙΑΡΚΕΙΑ ΥΛΟΠΟΙΗΣΗΣ (ON GOING) ΤΟΥ ΕΠΙΧΕΙΡΗΣΙΑΚΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ «ΑΝΑΠΤΥΞΗ ΑΝΘΡΩΠΙΝΟΥ ΔΥΝΑΜΙΚΟΥ»

ΤΙΜΟΛΟΓΙΟ ΜΕΛΕΤΗΣ ΕΛΛΗΝΙΚΗ ΗΜΟΚΡΑΤΙΑ ΥΠΟΥΡΓΕΙΟ ΠΑΙ ΕΙΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ «ΥΓΡΟΜΟΝΩΣΕΙΣ ΕΡΓΟ:

289 ον Σύστημα Αεροπροσκόπων Αγίας Φύλας ΟΜΑΔΑ ΠΡΟΣΚΟΠΩΝ ΕΓΧΕΙΡΙΔΙΟ ΑΡΧΑΡΙΟΥ ΠΡΟΣΚΟΠΟΥ

03-00: Βιομάζα για παραγωγή ενέργειας Γενικά ζητήματα εφοδιαστικών αλυσίδων

ΣΧΕΔΙΟ ΠΡΟΤΑΣΕΩΝ ΣΥΛΛΟΓΟΥ ΓΟΝΕΩΝ & ΚΗΔΕΜΟΝΩΝ ΕΠΙ ΤΟΥ ΠΡΟΣΧΕΔΙΟΥ ΤΟΥ ΕΣΩΤΕΡΙΚΟΥ ΚΑΝΟΝΙΣΜΟΥ ΛΕΙΤΟΥΡΓΙΑΣ ΤΟΥ 1 ου ΓΥΜΝΑΣΙΟΥ ΜΑΡΚΟΠΟΥΛΟΥ ΣΗΜΕΙΩΣΗ

ΣΤΗΝ ΤΡΟΙΖΗΝΙΑ ΑΠΟ ΑΓ.ΕΛΕΝΗ ΕΩΣ ΤΟΝ ΚΟΜΒΟ ΚΑΛΛΟΝΗΣ ΚΑΙ ΣΤΗΝ ΠΑΡΑΛΙΑ ΤΟΥ ΑΡΤΙΜΟΥ. ΤΙΜΟΛΟΓΙΟ ΜΕΛΕΤΗΣ Τιμαριθμική 2012Α


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

ΟΙΚΙΣΜΟΣ ΕΞΩ ΠΟΤΑΜΟΙ

Όταν το μάθημα της πληροφορικής γίνεται ανθρωποκεντρικό μπορεί να αφορά και την εφηβεία.

Η παρακμή του εργατικού κινήματος είναι μια διαδικασία που έχει ήδη διαρκέσει. πολλά χρόνια, τώρα ζούμε τα επεισόδια του τέλους της.

ΣΤΑΘΜΟΥ ΠΥΛΟΥ» ΤΜΗΜΑ ΤΕΧΝΙΚΗΣ ΥΠΗΡΕΣΙΑΣ ΣΧΕΔΙΟ ΑΣΦΑΛΕΙΑΣ ΚΑΙ ΥΓΕΙΑΣ (ΣAY) (Π.Δ. 305/96, άρθρο 3, παράγραφοι 3,4,5,6,8,9,10) ΤΜΗΜΑ Α

Υποψήφιοι Σχολικοί Σύμβουλοι

ΑΔΑ: 4ΙΦΝΚ-ΔΘ. Αθήνα, 14 Δεκεμβρίου 2010 Αριθ. Πρωτ.: Ταχυδρομική. Σταδίου 27 Διεύθυνση: Ταχυδρομικός Κώδικας: ΑΘΗΝΑ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΑΡΙΘΜΟΣ ΜΕΛΕΤΗΣ: 58/ 2014 ΝΟΜΟΣ ΘΕΣΠΡΩΤΙΑΣ ΔΗΜΟΣ ΗΓΟΥΜΕΝΙΤΣΑΣ Δ/ΝΣΗ ΤΕΧΝΙΚΩΝ ΥΠΗΡΕΣΙΩΝ ΜΕΛΕΤΗ

ΑΤΛΑΝΤΙΣ ΣΥΜΒΟΥΛΕΥΤΙΚΗ Α.Ε.

Trans. D.A/Koss/LLM (EU Law) (UKC), MA (Soc. Sciences) (OU) 17 Ιουνίου

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ (Τ.Ε.Ι.) ΚΑΒΑΛΑΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΛΟΓΙΣΤΙΚΗΣ. Θέμα πτυχιακής εργασίας:

O ΑΓΩΝΑΣ ΤΟΥ ΕΦΗΒΟΥ ΓΙΑ ΑΝΕΞΑΡΤΗΣΙΑ

ΟΙ ΣΚΕΠΤΙΚΟΙ ΦΙΛΟΣΟΦΟΙ

ΣΥΜΒΑΣΗ ΔΠΑ/ΕΠ-6489/2012

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

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

Συνήγορος του Καταναλωτή Νομολογία ΕφΑθ 5253/2003

Σκοπός του παιχνιδιού. Περιεχόμενα

ΘΕΜΑ: «Παραθεριστικοί Οικοδοµικοί Συνεταιρισµοί. Μελέτη Περίπτωσης του «Βραχόκηπου» ήµου Γουβών Ηρακλείου Κρήτης»

Η Αγορά Ηλεκτρικής Ενέργειας στην Κύπρο έχει οργανωθεί σε τομείς που υπόκεινται στις ακόλουθες ρυθμίσεις:

ΟΜΑΔΑ 0.25 ΟΙΚΙΣΜΟΣ: ΑΓΙΟΣ ΣΠΥΡΙΔΩΝΑΣ ΠΡΟΓΡΑΜΜΑΤΙΚΗ ΣΥΜΒΑΣΗ ΤΕΕ/ΤΑΚ & ΝΟΜΑΡΧΙΑΚΗΣ ΑΥΤΟΔΙΟΙΚΗΣΗΣ ΛΑΣΙΘΙΟΥ

Κεφάλαιο Πέμπτο Εθνοπολιτισμική Ζωή και Εμπειρίες Ελληνικότητας των Ελληνοαυστραλών Εφήβων

Προβληματική σύνδεση αιτίων και φαινομένων ή πώς ο τζιχαντισμός σύμφωνα με τους έλληνες διανοούμενους είναι η τελευταία ελπίδα ενός νέου κόσμου

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

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

ΚΩΔΙΚΑΣ ΔΕΟΝΤΟΛΟΓΙΑΣ

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

ΚΕΦΑΛΑΙΟ 8 ΣΥΜΠΕΡΑΣΜΑΤΑ

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

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Πρώτες βοήθειες και αντιλήψεις του πληθυσμού στους Νομούς Χανίων, Ηρακλείου, Λασιθίου και Μεσσηνίας

Περιεχόμενα !"#$%&%'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( )!

ΠΟΛΙΤΙΚΉ ΠΑΙΔΕΙΑ. Α Γενικού Λυκείου και ΕΠΑ.Λ. Καζάκου Γεωργία, ΠΕ09 Οικονομολόγος

Περιεχόμενα. Εισαγωγή... 7 ΜΕΡΟΣ Α Κεφάλαιο 1. Κεφάλαιο 2. Κεφάλαιο 3. Κεφάλαιο 4. Κεφάλαιο 5. Κεφάλαιο 6. Κεφάλαιο 7. Κεφάλαιο 8.

(ΜΕ ΤΑ ΔΥΟ ΜΕΙΟΝΕΚΤΗΜΑΤΑ)

Σχέδιο Σύμβασης Διάσπασης

Η αξιολόγηση των εκπαιδευτικών το Π.Δ 152/2013, του Γιώργου Καλημερίδη

Έλλειψη εσωτερικής ελευθερίας

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

ΚΑΝΟΝΙΣΜΟΣ ΠΡΟΣΤΑΣΙΑΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΚΑΙ ΚΑΘΑΡΙΟΤΗΤΑΣ ΔΗΜΟΥ ΔΙΟΝΥΣΟΥ ΝΟΜΟΥ ΑΤΤΙΚΗΣ

ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΑΓΡΟΤΙΚΗΣ ΑΝΑΠΤΥΞΗΣ & ΤΡΟΦΙΜΩΝ

ΕΚΦΡΑΣΗ-ΕΚΘΕΣΗ Β ΛΥΚΕΙΟΥ 1 ο Λύκειο Καισαριανής ΕΠΑΓΓΕΛΜΑ: Κείμενα Προβληματισμού

ΟΡΓΑΝΩΣΗ ΕΝΟΤΗΤΩΝ Α ΤΑΞΗΣ ΕΝΟΤΗΤΑ 3

Τίτλος Ειδικού Θεματικού Προγράμματος: «Διοίκηση, Οργάνωση και Πληροφορική για Μικρο-μεσαίες Επιχειρήσεις»

Πρακτικό 6/2012 της συνεδρίασης της Επιτροπής Ποιότητας Ζωής, του Δήμου Λήμνου, της 4ης Μαΐου 2012.

Θεματική Ενότητα: ΠΑΙΔΕΙΑ ΠΟΛΙΤΙΣΜΟΣ - ΑΘΛΗΤΙΣΜΟΣ

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

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

ΤΜΗΜΑ ΤΕΧΝΙΚΩΝ ΥΠΗΡΕΣΙΩΝ ΣΧΕΔΙΟ ΑΣΦΑΛΕΙΑΣ ΚΑΙ ΥΓΕΙΑΣ (ΣAY) (Π.Δ. 305/96, άρθρο 3, παράγραφοι 3,4,5,6,8,9,10) ΤΜΗΜΑ Α

ΠΡΟΤΕΙΝΟΜΕΝΕΣ ΛΥΣΕΙΣ

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

Κωδ : Οι κωδικοί αυτοί συμπληρώνονται από την φορολογική διοίκηση. Κωδ. 003: Γράψτε τη Δ.Ο.Υ. της έδρας ή του κεντρικού της επιχείρησής σας.

ΑΚΡΟΒΑΤΗΣ-ΧΑΪΝΗΔΕΣ Οι Χαΐνηδες Ο Δημήτρης Αποστολάκης

Η συμβολή του Πλάτωνα στα Μαθηματικά

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

ΤΕΥΧΟΣ ΠΡΟΚΗΡΥΞΗΣ αριθμ /605/ ΔΗΜΟΣΙΟΥ ΑΝΟΙΚΤΟΥ ΔΙΑΓΩΝΙΣΜΟΥ ΓΙΑ ΤΗΝ ΑΝΑΚΗΡΥΞΗ ΑΝΑΔΟΧΟΥ ΓΙΑ ΤΗΝ ΥΛΟΠΟΙΗΣΗ ΤΟΥ ΕΡΓΟΥ

ΔΙΑΔΟΣΗ ΘΕΡΜΟΤΗΤΑΣ Φυσική Β' Γυμνασίου. Επιμέλεια: Ιωάννης Γιαμνιαδάκης

Στο άγαλμα της ελευθερίας που φωτίζει τον κόσμο

ΑΠΟΣΠΑΣΜΑ. Από τα πρακτικά της με αριθμό 13ης/2012, συνεδρίασης του Περιφερειακού Συμβουλίου το Σάββατο 29 Σεπτεμβρίου 2012 στην Κέρκυρα.

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

Εσωτερικοί Κανονισμοί Τοπικής Αυτοδιοίκησης

ΝΕΑ ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΑ ΠΡΟΪΟΝΤΑ- ΕΦΑΡΜΟΓΗ ΣΕ ΑΣΦΑΛΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΗ

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

ΑΝΑΚΟΙΝΩΣΗ ΣΟΧ 3/2015 για τη σύναψη ΣΥΜΒΑΣΗΣ ΕΡΓΑΣΙΑΣ ΟΡΙΣΜΕΝΟΥ ΧΡΟΝΟΥ. Η Κοινωφελής ηµοτική Επιχείρηση ήµου Αµπελοκήπων-Μενεµένης

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

Το εκκρεμές. (Μ. Νικολάου)

Ηράκλειο Αρ. Πρωτ.: 590

Ελληνική. ΠΡΑΚΤΙΚΟ ΤΗΣ ΜΕ ΑΡΙΘΜΟ 3/2011 ΣΥΝΕΔΡΙΑΣΗΣ ΤΗΣ ΟΙΚΟΝΟΜΙΚΗΣ ΕΠΙΤΡΟΠΗΣ ΔΗΜΟΥ ΤΡΙΠΟΛΗΣ ΤΗΣ 14 ης ΜΑΡΤΙΟΥ 2011

ΔΙΑΓΩΝΙΣΜΑ ΕΚΠ. ΕΤΟΥΣ

Ο Οδικός Χάρτης για την Ελλάδα της δημιουργίας

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

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

ΙΔ.Ε.Η. Α.Ε. ΕΤΗΣΙΑ ΟΙΚΟΝΟΜΙΚΗ ΕΚΘΕΣΗ

Υγιείς Εργασιακές Σχέσεις - Σύγχρονες Επιχειρήσεις

Ε.Ε. Π α ρ.ι(i), Α ρ.3646, 25/10/2002. ΤΗΣ ΕΠΙΣΗΜΗΣ ΕΦΗΜΕΡΙΔΑΣ ΤΗΣ ΔΗΜΟΚΡΑΤΙΑΣ Αρ της 25ης ΟΚΤΩΒΡΙΟΥ 2002

«Συλλογή, μεταφορά και διαχείριση επικίνδυνων στερεών αποβλήτων της Γ.Μ.Μ.Α.Ε. ΛΑΡΚΟ»

ΙΕΘΝΗΣ ΣΥΜΒΑΣΗ ΕΡΓΑΣΙΑΣ 183 «για την αναθεώρηση της (αναθεωρηµένης) σύµβασης για την προστασία της µητρότητας,»

ΧΕΙΜΕΡΙΝΟΣ ΤΟΥΡΙΣΜΟΣ ΣΤΗΝ ΕΛΛΑ Α

Προς συμπλήρωση των ανωτέρω σχετικών εγκυκλίων σας γνωρίζουμε τα ακόλουθα:

Α. ΚΑΤΑΣΤΑΤΙΚΟ ΚΟΙΝΟΠΡΑΞΙΑΣ ΜΕ ΤΗΝ ΕΠΩΝΥΜΙΑ

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

Αφήγηση. Βασικά στοιχεία αφηγηµατικού κειµένου:

Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών

«ΑΝΩ ΛΙΟΣΙΑ: ΤΟΠΙΚΗ ΙΣΤΟΡΙΑ, ΠΕΡΙΒΑΛΛΟΝ, ΠΡΟΚΛΗΣΕΙΣ, ΠΡΟΟΠΤΙΚΕΣ»

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

ΚΕΦΑΛΑΙΟ Β ΣΚΟΠΟΣ- ΜΕΣΑ ΑΡΘΡΟ 2 ο ΣΚΟΠΟΙ

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

Μια «γριά» νέα. Εύα Παπώτη

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

Transcript:

ι 3 ϋ f g ^ΞΞΞΞ 'J3 J ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΑΒΑΛΑΣ ΤΜΗΜΑ ΒΙΟ ΜΗΧΑΝΙΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Αναμόρφωση της σχεδίασης γραφικών εξομοίωσης του προγράμματος NEAPOLIS με βάση τις r r r r r a r αναμενόμενες μεσες τιμ ες από τα μοντέλα μόνιμης κατάστασης ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΤΟΥ ΣΠΟΥΔΑΣΤΗ ΔΡΑΓΟΥ ΣΩΤΗΡΙΟΥ ΑΕ Μ:1335 Επιβλέπων: Καθηγητής Γεώργιος Κυραναστάσης Καβάλα 2008

ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος... Κεφ.1: Περιήγηση στην Visual Basic... Κεφ.2: Περιήγηση στο NEAPOLIS... Σελ.3 Σελ.4 Σελ.27 Κεφ.3: Μοντέλο μόνιμης κατάστασης τριφασικού κινητήρα... Κεφ.4: Κώδικας που αναπτύχθηκε ή τροποποιήθηκε Κεφ.5: Αποτελέσματα... Βιβλιογραφία... Παράρτημα... Σελ.38 Σελ.46 Σελ.83.Σελ.90.Σελ.91-2 -

ΠΡΟΛΟΓΟΣ Η συγκεκριμένη πτυχιακή έχει σαν στόχο την τροποποίηση του περιβάλλοντος σχεδίασης των γραφικών στο οποίο θα γίνεται η εμφάνιση των αποτελεσμάτων κατά την εξομοίωση. Το περιβάλλον αυτό, θα τροποποιηθεί γενικά για κάθε είδος εξομοιούμενου συστήματος και θα δοκιμασθεί για την περίπτωση της εξομοίωσης ενός 3-φασικού επαγωγικού κινητήρα (ένα από τα πολλά εξομοιούμενα συστήματα). Βασικός στόχος της τροποποίησης είναι η απλοποίηση της σχεδίασης των γραφικών με την επιλογή μόνο των μεταβλητών που θα σχεδιασθούν σε μια ορισμένη περιοχή της οθόνης και όχι και των φυσικών τιμών μέγιστης και ελάχιστης τιμής κάθε μεταβλητής. Οι φυσικές τιμές της μέγιστης και ελάχιστης τιμής κάθε μεταβλητής θα υπολογίζονται με την χρήση των μοντέλων μόνιμης κατάστασης κάθε εξομοιούμενου συστήματος και αφού διαβασθούν οι τιμές των απαραίτητων παραμέτρων από σχετικά αρχεία παραμέτρων. Με τον τρόπο αυτό τα όρια των περιοχών σχεδίασης όμοιων μεταβλητών θα προσαρμόζονται αυτόματα στις τιμές των παραμέτρων που έχουν επιλεγεί και θα μειωθεί η πολυπλοκότητα τόσο της διαδικασίας επιλογής των γραφικών αλλά και η πολυπλοκότητα των αρχείων παραμέτρων του προγράμματος. - 3 -

ΚΕΦΑΛΑΙΟ 1 Visual Basic Για την ανάπτυξη του περιβάλλοντος, χρησιμοποιήθηκε η γλώσσα Visual Basic 6.0. Συνεπώς για να έχουμε μια πετυχημένη υλοποίηση της πτυχιακής χρειάστηκε η πολύ καλή γνώση της συγκεκριμένης γλώσσας. Στο παρόν κεφάλαιο θα αναφερθούν λίγα λόγια για τη Visual Basic 6.0 καθώς και χρήσιμες εντολές που χρησιμοποιήθηκαν στο συγκεκριμένο περιβάλλον. 1.1 Μ εταβλη^ Οι μεταβλητές στη Visual Basic όπως και σε κάθε γλώσσα προγραμματισμού αποθηκεύουν τιμές κατά την διάρκεια της εκτέλεσης του προγράμματος. Στη Visual Basic σε αντίθεση με άλλες γλώσσες προγραμματισμού μπορούμε να χρησιμοποιήσουμε μια μεταβλητή χωρίς να τη δηλώσουμε. Αυτό το χαρακτηριστικό δε βοηθάει στην αποσφαλμάτωση, αυτός είναι και ο λόγος που οι περισσότεροι επιλέγουν να δηλώνουν όλες τις μεταβλητές. Τα δεδομένα ανήκουν σε τρεις γενικές κατηγορίες: αριθμητικά, κειμένου και ειδικά. Για να εργαστούμε με ένα αριθμό, θα πρέπει να χρησιμοποιήσουμε τον τύπο αριθμητικής μεταβλητής της Visual Basic σύμφωνα με τις ανάγκες μας. Για δεδομένα κειμένου θα πρέπει να χρησιμοποιήσουμε ένα τύπο κειμένου και για ειδικού τύπους δεδομένων τις αντίστοιχες μεταβλητές. Πώς δηλώνουμε μια μεταβλητή; Χρησιμοποιούμε την πρόταση Dim ακολουθούμενη από το όνομα της μεταβλητής τη λέξη As και τον τύπο της μεταβλητής. Dim όνομα μεταβλητής As τύπος μεταβλητής 1.1.1 Τύποι Μεταβλητών Η Visual Basic αναγνωρίζει τους παρακάτω τύπους μεταβλητών: Numeric (αριθμητικός) String (κείμενο) Boolean (λογικός) Date (ημερομηνία) Object (αντικείμενο) Variant Οι δύο βασικοί τύποι είναι ο αριθμητικός και το κείμενο. Οι μεταβλητές numeric αποθηκεύουν αριθμούς, και οι μεταβλητές string αποθηκεύουν κείμενο. Οι μεταβλητές Variant μπορούν να αποθηκεύουν κάθε τύπο δεδομένων. Αρχικά αυτή η ιδέα φαίνεται καλή (ώστε να μην ασχολείται κάποιος με το τύπο των μεταβλητών) - 4 -

ωστόσο έχει πάρα πολλά μειονεκτήματα. Οι μεταβλητές Date αποθηκεύουν ημερομηνίες και οι μεταβλητές Object αντικείμενα. 1.1.1.1 Αριθμητικές Μεταβλητές Για να αποθηκεύουμε αριθμούς δε χρησιμοποιούμε ένα τύπο δεδομένων. Όλες οι γλώσσες προγραμματισμού παρέχουν αρκετούς τύπους δεδομένων, περιλαμβανομένων των εξής: Ακεραίων αριθμών Single, ή πραγματικών αριθμών με περιορισμένη ακρίβεια Double, ή πραγματικών αριθμών με μεγάλη ακρίβεια Ανάλογα με την τιμή που θα αποθηκεύσουμε πρέπει να είμαστε προσεκτικοί ποια μεταβλητή θα επιλέξουμε. Οι Αριθμητικοί τύποι Δεδομένων της Visual Basic Τύπος δεδομένων Περιγραφή τιμών και Περιοχή Τιμών Integer Αριθμητικές τιμές χωρίς δεκαδικά ψηφία ή κλάσματα από -32768 έως 32767. Long Ακέραιες τιμές με μια περιοχή πέρα των τιμών δεδομένων Integer. Οι τιμές δεδομένων Long είναι από -2147483648 έως 2147483647. Οι τιμές δεδομένων Long καταναλώνουν περισσότερο χρόνο μνήμης από τις ακέραιες τιμές, και είναι λιγότερο αποδοτικές. Ο τύπος δεδομένων Long συχνά καλείται μεγάλος ακέραιος. Single Αριθμητικές τιμές από -3.402823Ε+38 έως 3.402823Ε+38. Ο τύπος δεδομένων Single συχνά καλείται μονής ακρίβειας. Double Αριθμητικές τιμές από - 1.797693134786232Ε+308 έως 1.797693134786232Ε+308. Ο τύπος δεδομένων Double συχνά καλείται διπλής ακρίβειας. Currency Δεδομένα που περιέχουν χρηματικά ποσά σε δολάρια, από -922337203685477.5808 μέχρι $922337203685477.5808. Τα τέσσερα δεκαδικά ψηφία σιγουρεύουν ότι θα γίνει σωστή στρογγύλευση. Η VB ακολουθεί τις διεθνείς ρυθμίσεις των Windows και προσαρμόζει τα χρηματικά ποσά σύμφωνα με τις απαιτήσεις της κάθε χώρας. Μη βάζετε το σύμβολο δολαρίου, όταν εισάγετε τιμές Currency. - 5 -

1.1.1.1.1 Δήλωση Αριθμητικών Μεταβλητών Dim count As Integer Dim Length As Single Μπορούμε επίσης να συνδυάσουμε πολλές δηλώσεις στην ίδια γραμμή. Ας δούμε πως θα γράφαμε το προηγούμενο παράδειγμα σε μία γραμμή. Dim count As Integer, Length As Single Στην παρακάτω πρόταση: Dim A, B, C As Integer Μόνο η C θα δηλωθεί σαν Integer, ενώ τόσο η Α όσο και η Β θα δηλωθούν ως Variant. Αυτό θα συμβαίνει για κάθε μεταβλητή που δεν της δίνουμε τύπο. Η λέξη κλειδί Dim θα μπορούσε να αντικατασταθεί από άλλες λέξεις κλειδιά για τη δήλωση μεταβλητών όπως Private, Public και Static. Οι λέξεις αυτές έχουν σχέση με την εμβέλεια και το χρόνο ζωής μιας μεταβλητής. Τις λέξεις αυτές Θα τις μελετήσουμε αργότερα. Προς το παρόν, πρέπει να γνωρίζουμε ότι όσες μεταβλητές δηλώνουμε με την πρόταση Dim η εμβέλεια τους βρίσκεται μέσα στη συνάρτηση ή στη λειτουργική μονάδα στην οποία δηλώθηκαν. ΟΙ ΣΥΝΑΡΤΗΣΕΙΣ ΜΕΤΑΤΡΟΠΗΣ ΤΥΠΟΥ ΔΕΔΟΜΕΝΩΝ Όνομα συνάρτησης Περιγραφή CBool ( ) Μετατρέπει το όρισμα δεδομένων Boolean CByte ( ) Μετατρέπει το όρισμα δεδομένων Byte CCur ( ) Μετατρέπει το όρισμα δεδομένων Currency CDate ( ) Μετατρέπει το όρισμα δεδομένων Date CDbl ( ) Μετατρέπει το όρισμα δεδομένων Double CDec ( ) Μετατρέπει το όρισμα δεδομένων Decimal CInt ( ) Μετατρέπει το όρισμα δεδομένων Integer CLng ( ) Μετατρέπει το όρισμα δεδομένων Long CSng ( ) Μετατρέπει το όρισμα δεδομένων Single CStr ( ) Μετατρέπει το όρισμα δεδομένων String CVar ( ) Μετατρέπει το όρισμα δεδομένων Variant της στον τύπο της στον τύπο της στον τύπο της στον τύπο της στον τύπο της στον τύπο της στον τύπο της στον τύπο της στον τύπο της στον τύπο της στον τύπο - 6 -

Ένας άλλος τρόπος να δηλώσουμε μεταβλητές είναι βάζοντας τη λέξη Dim ακολουθούμενη από ένα ειδικό χαρακτήρα που αντιπροσωπεύει τον τύπο μεταβλητής που θέλουμε. Χαρακτήρες Ορισμού Τύπου Δεδομένων Χαρακτήρας Επιθέματος Τύπος δεδομένων Παράδειγμα $ String A$, messagetext$ % Integer counter%, var% & Long population&, colorvalue&! Single distance! # Double ExactDistance# @ Currency salary@ 1.1.1.2 Μεταβλητές String Ο τύπος δεδομένων String στα ελληνικά μεταφράζεται σαν αλφαριθμητικό, και ο λόγος αυτού, ότι μπορεί και αποθηκεύει κείμενο. Δηλαδή χαρακτήρες και αριθμούς. Οι μεταβλητές string δηλώνονται με την εξής πρόταση. Dim sometext As String Σε μια μεταβλητή τύπου string μπορούμε να αντιστοιχίσουμε οποιοδήποτε κείμενο το οποίο μπορεί να φτάνει περίπου τα 2 gigabytes. Ας εκχωρήσουμε μερικές τιμές στη μεταβλητή sometext. sometext = This is a Text. sometext = sometext = 15 Στη δεύτερη εκχώρηση ή αντιστοίχιση δημιουργεί ένα κενό string, ή συνήθως αποκαλείται αλφαριθμητικό μηδενικού μήκους, ενώ η τρίτη, ένα string που τυχαίνει να περιέχει αριθμητικά ψηφία, που είναι στην πραγματικότητα μία σειρά από χαρακτήρες. Dim i As Integer i = 15 sometext = 15 Η διαφορά των παραπάνω μεταβλητών είναι ότι η sometext περιλαμβάνει τους χαρακτήρες «1» και «5» ενώ η μεταβλητή i την αριθμητική τιμή 15. - 7 -

1.1.1.3 Η μεταβλητή Boolean Η μεταβλητή Boolean αποθηκεύει τιμές True/False. Μπορεί να χρησιμοποιηθεί ώστε να ελέγχει μία συνθήκη δύο καταστάσεων. Π.χ. για μία πόρτα, True θα έπαιρνε εάν ήταν ανοικτή, ενώ False εάν ήταν κλειστή. 1.1.1.4 Η μεταβλητή Object Μία μεταβλητή Object παραπέμπει σε οποιοδήποτε από τα ελεγκτήρια μπορούν να υπάρχουν στο project και υπάρχει η δυνατότητα να το χρησιμοποιήσουμε σε συναρτήσεις. 1.1.2 Η εμβέλεια μιας Μεταβλητής Εμβέλεια μιας μεταβλητής είναι το διάστημα εκείνο μέσα στο πρόγραμμα στο οποίο μπορούμε να χρησιμοποιήσουμε την εκάστοτε μεταβλητή. Σύμφωνα με τον ορισμό η εμβέλεια είναι προφανές ότι έχει σχέση με το που και πως δηλώνεται μια μεταβλητή. Όταν δηλώνεται μία μεταβλητή με Dim τότε αυτή θεωρείται τοπική μέσα στο χώρο στον οποίο δηλώθηκε. Για παράδειγμα, εάν δηλώσαμε μία μεταβλητή Dim i As Integer μέσα σε μία συνάρτηση τότε η εμβέλεια της συγκεκριμένης μεταβλητής βρίσκεται στη συγκεκριμένη συνάρτηση. Εάν όμως θέλουμε μία μεταβλητή να μπορεί να έχει εμβέλεια σε όλη τη φόρμα (σε όλες τις συναρτήσεις που χρησιμοποιεί) τότε τη δηλώνουμε, στη κορυφή του κώδικα, στο General όπως ακριβώς και πριν. Τέλος, μπορεί να χρειαστούμε μία μεταβλητή να έχει εμβέλεια σε όλες τις φόρμες του έργου, τότε δηλώνουμε τη μεταβλητή ως δημόσια με τη λέξη κλειδί Public αντί της Dim. Π.χ. Public i As Integer. 1.1.3 Η Διάρκεια Ζωής μιας Μεταβλητής Διάρκεια ζωής μιας μεταβλητής ονομάζεται η περίοδος κατά την οποία μία μεταβλητή διατηρεί την τιμή της. Όταν μία μεταβλητή βρίσκεται μέσα σε μία διαδικασία τότε τελειώνοντας η διαδικασία χάνεται και η τιμή της. Αυτό δεν ισχύει για τις δημόσιες μεταβλητές οι οποίες μέχρι το τέλος της εφαρμογής διατηρούν την τιμή τους. Για να επιτύχουμε το ίδιο και σε μία μεταβλητή η οποία βρίσκεται μέσα σε μία διαδικασία τότε αντί να τη δηλώσουμε με Dim αντικαθιστούμε τη λέξη αυτή με τη Static. Π.χ. Static i As Integer. - 8 -

1.2 Πίνακες Πίνακες είναι μία ακολουθία από μεταβλητές του ίδιου τύπου. Χρησιμοποιούνται συχνά όταν η κάθε μεταβλητή του πίνακα χρησιμοποιείται για την ίδια χρήση αλλά πολλές φορές αντιστοιχίζεται σε διαφορετική οντότητα. Ότι μάθαμε για την εμβέλεια και την διάρκεια ζωής μιας μεταβλητής ισχύουν ακριβώς τα ίδια και για τους πίνακες. 1.2.1 Δήλωση Πινάκων Οι πίνακες δηλώνονται εκτός από την πρόταση Dim και το όνομα όπως κάναμε στις μεταβλητές, ακολουθείται και από τον αριθμό των στοιχείων που μπορεί να περιέχει, σε παρενθέσεις. Έστω ότι θέλουμε να αποθηκεύσουμε τα ονόματα μίας μικροεπιχείρησης η οποία αποτελείται από 11 άτομα. Dim Names(10) As String Γιατί εδώ βάλαμε δέκα και όχι έντεκα; Επειδή στους πίνακες όταν θέλουμε να αποθηκεύσουμε το όνομα του πρώτου υπάλληλου Names(0) = Όνομα υπαλλήλου ενώ για να αποθηκεύσουμε το όνομα του δεύτερου υπάλληλου Names(1) = Όνομα υπαλλήλου και τέλος για του εντέκατου Names(10) = Όνομα υπαλλήλου. Αυτό το περίεργο χαρακτηριστικό μπερδεύει αρκετούς χρήστες αυτός είναι και ο λόγος που η Visual Basic δίνει τη δυνατότητα να καθορίσουμε τα όρια στα οποία θα κινείται ο πίνακας. Dim Names(1 To 10) As String Με τη δήλωση αυτή για να προσπελάσουμε τη πρώτη τιμή του πίνακα αναφερόμαστε στο Names(1) ενώ για τη δέκατη (τελευταία) τιμή αναφερόμαστε στο Names(10). Πολλές φορές μπορεί να μη ξέρουμε το πλήθος των τιμών το οποίο θέλουμε να αποθηκεύσουμε σε ένα πίνακα. Πολλοί κάνουν το λάθος και για το λόγο αυτό δηλώνουν ένα πίνακα με τεράστιο μέγεθος, γεγονός που σημαίνει ότι ένα μεγάλο μέρος του πίνακα δε χρησιμοποιείται. Η Visual Basic σου δίνει τη δυνατότητα να δηλώσεις ένα πίνακα σαν δυναμικό. Ένας δυναμικός πίνακας μπορεί να αλλάξει μέγεθος κατά τη διάρκεια εκτέλεσης του προγράμματος. Ένας δυναμικός πίνακας με ένα οποιοδήποτε πίνακα ξεχωρίζει από τη δήλωση του, όπου στο δυναμικό πίνακα η δήλωση γίνεται παρόμοια όπως μάθαμε αλλά αφήνουμε κενό το όρισμα μέσα στις παρενθέσεις. Dim Names ( ) As String - 9 -

Τώρα κατά την εκτέλεση, με την ReDim Names(10) αλλάξουμε το μέγεθος του πίνακα.δε μπορούμε να αλλάξουμε τις διαστάσεις αφού δοθούν για πρώτη φορά. Αν ο πίνακας δηλωθεί σαν μονοδιάστατος τότε θα μπορούμε να αλλάξουμε μόνο το μέγεθος του και όχι τις διαστάσεις. Ένα άλλο σημείο που πρέπει να προσέξουμε είναι ότι κάθε φορά που αλλάζουμε το μέγεθος ενός πίνακα οι τιμές του πίνακα χάνονται. Η τιμή τους αρχικοποιείται σαν να δηλώνουμε για πρώτη φορά τον πίνακα. Επιστρέφουν δηλαδή σε Null τιμή. Αυτό είναι χρήσιμο εάν θέλουμε να ετοιμάσουμε τον πίνακα για νέα στοιχεία. Αλλά αρκετές φορές θα θέλαμε να αλλάξουμε το μέγεθος του πίνακα χωρίς την απώλεια στοιχείων. Η Visual Basic μας δίνει μια λέξη κλειδί Preserve, με την οποία μπορούμε να αλλάξουμε το μέγεθος του πίνακα διατηρώντας όλες τις τιμές που έχουμε αντιστοιχιστεί στον πίνακα. Για παράδειγμα, μπορούμε να διευρύνουμε το μέγεθος του πίνακα κατά ένα στοιχείο χωρίς καμία απώλεια τιμών του πίνακα. Η συγκεκριμένη διαδικασία περιγράφεται με τις παρακάτω εντολές. ReDim Preserve DynArray (UBound (DynArray) + 1) Η συνάρτηση UBound μας επιστρέφει τον ανώτερο δείκτη του πίνακα, ο οποίος δείχνει στο τελευταίο στοιχείο του πίνακα. Υπάρχει επίσης και η LBound που επιστρέφει τον κατώτερο δείκτη του πίνακα ο οποίος δείχνει στο πρώτο στοιχείο του πίνακα. Με τη λέξη κλειδί Preserve του λέμε να διατηρήσει τις τιμές ο πίνακας και με την Ubound (DynArray) + 1 αυξάνουμε το μέγεθος του πίνακα κατά ένα. Αυτή η μέθοδος χρησιμοποιείται συχνά διότι απασχολούμε την ελάχιστη μνήμη. 1.3 String συναρτήσεις Η Visual Basic όπως και οι περισσότερες γλώσσες προγραμματισμού δίνουν μία σειρά από συναρτήσεις που χρησιμοποιούνται για τη διαχείριση των αλφαριθμητικών (string). Ο σκοπός της συγκεκριμένης ενότητας είναι να δούμε τη χρήση μερικών από εκείνες που χρησιμοποιούνται τακτικά. 1.3.1 Η συνάρτηση Len Η πιο βασική συνάρτηση στα αλφαριθμητικά είναι η συνάρτηση Len ( ), η οποία επιστρέφει το μέγεθος (πλήθος χαρακτήρων) μιας μεταβλητής αλφαριθμητικού, σταθεράς αλφαριθμητικού ή έκφρασης που δίνει σαν αποτέλεσμα ένα αλφαριθμητικό (την οποία τοποθετείτε μέσα στις παρενθέσεις). Εάν το αλφαριθμητικό περιέχει την τιμή Null, η Len ( ) επιστρέφει τιμή 0. Η επιστρεφόμενη αριθμητική τιμή πρέπει να είναι τύπου Long. Εάν η συνάρτηση Len ( ) δε παίρνει σαν όρισμα ένα αλφαριθμητικό αλλά ένα άλλο τύπο μεταβλητής τότε επιστρέφει, τον αριθμό των byte που καταλαμβάνει ο συγκεκριμένος τύπος. Πως συντάσσεται; Len(string) - 10 -

Παράδειγμα Το παράδειγμα αυτό χρησιμοποιεί τη Len για να επιστρέψει τον αριθμό χαρακτήρων ενός αλφαριθμητικού καθώς και τον αριθμό των byte τα οποία καταλαμβάνει ένας ακέραιος (Integer) αριθμός. Dim MyString As String, MyLen As Long Dim MyInt As Integer MyString = "Hello World" ' Initialize variable. MyLen = Len(MyInt) ' Returns 2. MyLen = Len(MyString) ' Returns 11. ΟΙ ΣΥΝΑΡΤΗΣΕΙΣ ΜΕΤΑΤΡΟΠΗΣ ΑΛΦΑΡΙΘΜΗΤΙΚΩΝ Όνομα συνάρτησης Περιγραφή CStr ( ) Αλλάζει το όρισμα της σε ένα αλφαριθμητικό Str ( ) Μετατρέπει το αριθμητικό όρισμα της σε ένα αλφαριθμητικό (στην πραγματικότητα, στον τύπο δεδομένων Variant τον οποίο μπορείτε να χρησιμοποιήσετε σαν αλφαριθμητικό) Val ( ) Μετατρέπει το όρισμα της (ένα αλφαριθμητικό) σε ένα αριθμό υποθέτοντας ότι της περνάτε σαν όρισμα ένα αλφαριθμητικό το οποίο δείχνει σαν αριθμός. Οι CStr ( ) και Str ( ) μετατρέπουν τα ορίσματα τους σε τιμές αλφαριθμητικών. Η μόνη διαφορά μεταξύ τους είναι ότι η CStr ( ) δεν προσθέτει ένα αρχικό κενό πριν από τους θετικούς αριθμούς που μετατρέπει σε αλφαριθμητικά, η Str το κάνει. 1.3.2 Η συνάρτηση Right Επιστρέφει ένα String ή μία Variant μεταβλητή περιλαμβάνοντας τον αριθμό των χαρακτήρων ενός String μετρώντας από τη δεξιά πλευρά. Πως συντάσσεται; Right(string, length) - 11 -

Ας δούμε τα ορίσματα της συνάρτησης. Όρισμα Περιγραφή string Υποχρεωτικό:Είναι το αλφαριθμητικό από το οποίο οι δεξιοί χαρακτήρες θα επιστραφούν.. Εάν το αλφαριθμητικό είναι Null και η επιστρεφόμενη τιμή θα είναι Null. length Υποχρεωτικό:Variant (Long). Είναι μια αριθμητική έκφραση που δείχνει πόσοι χαρακτήρες θα επιστραφούν. Εάν είναι 0 τότε ένα αλφαριθμητικό μηδενικού μήκους ("") θα επιστραφεί. Εάν είναι μεγαλύτερο ή ίσο με τον αριθμό των χαρακτήρων του πρώτου αλφαριθμητικού ορίσματος string, ολόκληρο το string θα επιστραφεί. Παράδειγμα Το παράδειγμα αυτό χρησιμοποιεί τη Right για να επιστρέψει ένα συγκεκριμένο αριθμό χαρακτήρων από τη δεξιά πλευρά ενός αλφαριθμητικού. Dim AnyString, MyStr AnyString = "Hello World" MyStr = Right(AnyString, 1) MyStr = Right(AnyString, 6) MyStr = Right(AnyString, 20) ' Define string. ' Returns "d". ' Returns " World". ' Returns "Hello World". 1.3.3 Η συνάρτηση Left Επιστρέφει ένα String ή μία Variant μεταβλητή περιλαμβάνοντας τον αριθμό των χαρακτήρων ενός String μετρώντας από την αριστερή πλευρά. Πώς συντάσσεται; Left(string, length) - 12 -

Ας δούμε τα ορίσματα της συνάρτησης. Όρισμα Περιγραφή string Υποχρεωτικό:Είναι το αλφαριθμητικό από το οποίο οι αριστεροί χαρακτήρες θα επιστραφούν.. Εάν το αλφαριθμητικό είναι Null και η επιστρεφόμενη τιμή θα είναι Null. length Υποχρεωτικό:Variant (Long). Είναι μια αριθμητική έκφραση που δείχνει πόσοι χαρακτήρες θα επιστραφούν. Εάν είναι 0 τότε ένα αλφαριθμητικό μηδενικού μήκους ("") θα επιστραφεί. Εάν είναι μεγαλύτερο ή ίσο με τον αριθμό των χαρακτήρων του πρώτου αλφαριθμητικού ορίσματος string, ολόκληρο το string θα επιστραφεί. Παράδειγμα Το παράδειγμα αυτό χρησιμοποιεί τη Left για να επιστρέψει ένα συγκεκριμένο αριθμό χαρακτήρων από την αριστερή πλευρά ενός αλφαριθμητικού. Dim AnyString, MyStr AnyString = "Hello World" MyStr = Left(AnyString, 1) MyStr = Left(AnyString, 7) MyStr = Left(AnyString, 20) ' Define string. ' Returns "H". ' Returns "Hello W". ' Returns "Hello World". 1.3.4 Η συνάρτηση Mid Επιστρέφει ένα String ή μία Variant μεταβλητή περιλαμβάνοντας τον αριθμό των χαρακτήρων ενός String. Της δίνουμε το αρχικό σημείο και ένα αριθμό που δηλώνει πόσους χαρακτήρες, συμπεριλαμβανομένου και του αρχικού σημείου, θα επιστρέψει. Πως συντάσσεται; Mid(string, start[, length]) - 13 -

Ας δούμε τα ορίσματα της συνάρτησης. Όρισμα string start length Περιγραφή Υποχρεωτικό: Είναι το αλφαριθμητικό από το οποίο οι χαρακτήρες θα επιστραφούν. Εάν το αλφαριθμητικό είναι Null και η επιστρεφόμενη τιμή θα είναι Null. Υποχρεωτικό: Long Είναι η θέση του χαρακτήρα από την οποία θα ξεκινήσει ο τεμαχισμός. Εάν η θέση αυτή είναι μεγαλύτερη από των αριθμό των χαρακτήρων του αλφαριθμητικού, ένα αλφαριθμητικό μηδενικού μήκους ("") θα επιστραφεί. Προαιρετικό:Variant (Long). Ο αριθμός των χαρακτήρων προς επιστροφή. Εάν παραλειφθεί ή υπάρχουν λιγότεροι χαρακτήρες από ότι ορίζει το συγκεκριμένο όρισμα, (συμπεριλαμβανομένου και του χαρακτήρα που βρίσκεται στη θέση start), όλοι οι χαρακτήρες από τη θέση start μέχρι το τέλος του string θα επιστραφούν. Παράδειγμα Το παράδειγμα αυτό χρησιμοποιεί τη Mid για να επιστρέψει ένα συγκεκριμένο αριθμό χαρακτήρων ενός αλφαριθμητικού. Dim MyString, FirstWord, LastWord, MidWords MyString = "Mid Function Demo" ' Create text string. FirstWord = Mid(MyString, 1, 3) ' Returns "Mid". LastWord = Mid(MyString, 14, 4) ' Returns "Demo". MidWords = Mid(MyString, 5) ' Returns "Function Demo". - 14 -

1.4 Πλαίσια μηνυμάτων MsqBoxQ Επιδεικνύει ένα μήνυμα σε ένα πλαίσιο μηνύματος, αναμένοντας από το χρήστη να πατήσει ένα κουμπί, και επιστρέφει έναν ακέραιο αριθμό που προσδιορίζει πιο κουμπί πάτησε ο χρήστης. Πώς συντάσσεται; MsgBox (prompt,[, buttons] [, title] [, helpfile, context]) Όρισμα prompt buttons title Περιγραφή Υποχρεωτικό: Είναι το αλφαριθμητικό το οποίο εμφανίζεται ως μήνυμα στο πλαίσιο μηνύματος. Το μέγιστο μήκος αυτού του μηνύματος είναι 1024 χαρακτήρες. Προαιρετικό: Είναι ο αριθμός ο οποίος ορίζει πόσα και ποια κουμπιά θα εμφανιστούν. Εάν το παραλείψουμε η προκαθορισμένη τιμή θα είναι 0. Προαιρετικό: Είναι το αλφαριθμητικό το οποίο εμφανίζει τον τίτλο στο πλαίσιο μηνύματος. Εάν το παραλείψουμε σαν τίτλος εμφανίζεται το όνομα της εφαρμογής. helpfile Προαιρετικό: Είναι το αλφαριθμητικό που προσδιορίζει το αρχείο που θα χρησιμοποιεί για να παρέχει εξαρτώμενη βοήθεια στο πλαίσιο μηνύματος. Εάν δοθεί το helpfile τότε πρέπει και το context να δοθεί. context Προαιρετικό: Είναι το αλφαριθμητικό που προσδιορίζει το αρχείο που θα χρησιμοποιεί για να παρέχει εξαρτώμενη βοήθεια στο πλαίσιο μηνύματος. Τα κουμπιά που εμφανίζονται σε ένα πλαίσιο μηνύματος Επώνυμο Κυριολεκτικό Τιμή Περιγραφή vbokonly 0 Εμφανίζει το κουμπί OK. vbokcancel 1 Εμφανίζει τα κουμπιά OK και Cancel. vbabortretryignore 2 Εμφανίζει τα κουμπιά Abort, Retry και Cancel. vbyesnocancel 3 Εμφανίζει τα κουμπιά Yes, No και Cancel. vbyesno 4 Εμφανίζει τα κουμπιά Yes και No. vbretrycancel 5 Εμφανίζει τα κουμπιά Retry και Cancel. - 15 -

Τα εικονίδια που εμφανίζονται σε ένα πλαίσιο μηνύματος Επώνυμο Κυριολεκτικό Τιμή Περιγραφή vbcritical 16 Εμφανίζει το εικονίδιο Κρίσιμου Μηνύματος. vbquestion 32 Εμφανίζει το εικονίδιο Ερωτήματος Προειδοποίησης. vbexclamation 48 Εμφανίζει ένα εικονίδιο Μηνύματος Προειδοποίησης. vbinformation 64 Εμφανίζει ένα εικονίδιο Μηνύματος Πληροφοριών. vbsystemmodal 4096 Εμφανίζει ένα παράθυρο διαλόγου SystemModal. Ο χρήστης πρέπει να αποδεκτεί ένα παράθυρο διαλόγου SystemModal πριν να κάνει οτιδήποτε άλλο. Τα προεπιλεγμένα κουμπιά που εμφανίζονται σε ένα πλαίσιο μηνύματος. Επώνυμο Κυριολεκτικό Τιμή 'Περιγραφή vbdefaultbutton1 0 Το πρώτο κουμπί είναι το προεπιλεγμένο. vbdefaultbutton2 256 Το δεύτερο κουμπί είναι το προεπιλεγμένο. vbdefaultbutton3 512 Το τρίτο κουμπί είναι το προεπιλεγμένο. Επιστρεφόμενες τιμές της MsgBox() Επώνυμη Σταθερά Τιμή Περιγραφή vbok 1 Ο χρήστης έκανε κλικ στο κουμπί OK. vbcancel 2 Ο χρήστης έκανε κλικ στο κουμπί Cancel. vbabort 3 Ο χρήστης έκανε κλικ στο κουμπί Abort. vbretry 4 Ο χρήστης έκανε κλικ στο κουμπί Retry. vbignore 5 Ο χρήστης έκανε κλικ στο κουμπί Ignore. vbyes 6 Ο χρήστης έκανε κλικ στο κουμπί Yes. vbno 7 Ο χρήστης έκανε κλικ στο κουμπί No. - 16 -

Παράδειγμα Dim Msg, Style, Title, Help, Ctxt, Response, MyString Msg = "Do you want to continue?" Define message. Style = vbyesno + vbcritical + vbdefaultbutton2 Define buttons. Title = "MsgBox Demonstration" Define title. Help = "DEMO.HLP" Define Help file. Ctxt = 1000 Define topic context. Display message. Response = MsgBox(Msg, Style, Title, Help, Ctxt) If Response = vbyes Then User chose Yes. MyString = "Yes" Perform some action. Else User chose No. MyString = "No" Perform some action. Το αποτέλεσμα του παραπάνω κώδικα φαίνεται στο Σχήμα 1.1. Σχήμα 1.1: Πλαίσιο μηνύματος - 17 -

1.5 Τελεστές Τελεστές ονομάζονται τα σύμβολα εκείνα που μας βοηθάνε είτε να λαμβάνουμε αποφάσεις είτε σε αριθμητικές πράξεις. Ο κάθε τελεστής κατηγοριοποιείται ανάλογα με η χρήση του: Αριθμητικοί τελεστές Τελεστές σύγκρισης (σύγκριση μίας τιμής ή μιας έκφρασης με μία άλλη) Λογικοί τελεστές (συνδυάζουν δύο ή περισσότερους ελέγχους) 1.5.1 Τελεστές σύγκρισης Οι τελεστές σύγκρισης καθορίζουν το πώς συγκρίνονται τα δεδομένα. Τελεστής Χρήση Περιγραφή > X > Y Ο τελεστής μεγαλύτερο επιστρέφει True αν η τιμή στα αριστερά του > είναι αριθμητικά μεγαλύτερη από την τιμή στα δεξιά. < Salary < 1200 Ο τελεστής μικρότερο επιστρέφει True αν η τιμή στα αριστερά του < είναι αριθμητικά μικρότερη από την τιμή στα δεξιά. A = B Ο τελεστής ισότητας επιστρέφει True αν οι τιμές και στις δύο πλευρές του = είναι ίσες μεταξύ τους. >= I >= ULimit Ο τελεστής μεγαλύτερο ή ίσο επιστρέφει True αν η τιμή στα αριστερά του >= είναι αριθμητικά ή αλφαβητικά μεγαλύτερη ή ίση από την τιμή στα δεξιά. <= I <= DLimit Ο τελεστής μικρότερο ή ίσο επιστρέφει True αν η τιμή στα αριστερά του <= είναι αριθμητικά ή αλφαβητικά μικρότερη ή ίση από την τιμή στα δεξιά. <> Cmd1.Caption <> Yes Ο τελεστής όχι ίσο επιστρέφει True αν η τιμή στα αριστερά του <> είναι αριθμητικά ή αλφαβητικά όχι ίση από την τιμή στα δεξιά. - 18 -

1.5.2 Λογικοί τελεστές Τελεστής Χρήση Περιγραφή And If (A > B) And (C < D) Παράγει True αν και οι δύο πλευρές του And είναι αληθείς. Έτσι, το A πρέπει να είναι μεγαλύτερο του B και το C μικρότερο του D. Αλλιώς η έκφραση παράγει αποτέλεσμα False. Or If (A > B) Or (C < D) Παράγει True αν τουλάχιστον μια από τις δύο πλευρές του Or είναι αληθείς. Έτσι, το A πρέπει να είναι μεγαλύτερο του B ή το C μικρότερο του D. Αν και οι δύο πλευρές του Or είναι ψευδείς, τότε όλη η έκφραση παράγει False. Not If Not (strans = Yes ) Παράγει το αντίθετο αποτέλεσμα true ή false. Έτσι, αν η strans περιέχει Yes, το Not μετατρέπει το αληθές σε ψευδές. 1.5.3 Ιεραρχία τελεστών της Visual Basic Αριθμητικοί Σύγκρισης Λογικοί Ύψωση σε δύναμη (Λ) Ισότητα (=) Not Αρνητικός (-) Ανισότητα (<>) And Πολλαπλασιασμός και Μικρότερο του (<) Or διαίρεση (*, /) Ακέραια διαίρεση (\) Μεγαλύτερο του (>) Xor Υπόλοιπο ακέραιας Μικρότερο ή ίσο (<=) Eqv διαίρεσης (Mod) Πρόσθεση και Αφαίρεση Μεγαλύτερο ή ίσο (>=) Imp (+, -) Συνένωση κειμένου (&) Like, Is - 19 -

1.6 Λήψη αποφάσεων Η Visual Basic έχει τη δυνατότητα να ελέγχει συνθήκες και έπειτα ανάλογα με το αποτέλεσμα αυτού του ελέγχου να εκτελεί διάφορες λειτουργίες. Οι εντολές με τις οποίες μπορούμε να λαμβάνουμε με αποφάσεις είναι οι ακόλουθες: If... Then I f. Then.Else Select Case 1.6.1 If... Then Χρησιμοποιούμε την εντολή If... Then για να εκτελέσουμε μία ή περισσότερες προτάσεις. Η σύνταξη της συγκεκριμένης εντολής μπορεί να αποτελείτε είτε από μία γραμμή είτε από πολλές γραμμές. If συνθήκη Then πρόταση If συνθήκη Then προτάσεις Η συνθήκη συνήθως είναι μια σύγκριση, αλλά μπορεί να είναι κάθε έκφραση η οποία φέρει ως αποτέλεσμα μία αριθμητική τιμή. Η Visual Basic ερμηνεύει την τιμή αυτή, σαν True ή False. Μία μηδενική αριθμητική τιμή είναι False, και κάθε μη μηδενική αριθμητική τιμή θεωρείται True. Αν η συνθήκη είναι True, η Visual Basic εκτελεί όλες τις προτάσεις που έπονται της λέξης κλειδί Then. Για να εκτελέσουμε μόνο μία πρόταση μπορούμε να χρησιμοποιήσουμε την εντολή είτε με μία είτε με πολλές γραμμές (τα παραδείγματα είναι ίσα). If anydate < Now Then anydate = Now If anydate < Now Then anydate = Now Θα πρέπει να δώσουμε προσοχή στο τύπο μονής γραμμής της If. Then στο ότι δεν μπορεί να χρησιμοποιηθεί η δήλωση. Εάν θέλουμε να εκτελέσουμε περισσότερες από μία γραμμή κώδικα όταν η συνθήκη είναι True, θα πρέπει να χρησιμοποιήσουμε τον τύπο πολλαπλής γραμμής. If anydate < Now Then anydate = Now Timerl.Enabled = False ' Disable timer control. - 20 -

1.6.2 If... Then... Else Χρησιμοποιούμε την εντολή If... Then... Else ώστε να ορίσουμε αρκετά μπλοκ προτάσεων, ένα από τα οποία, θα εκτελεσθεί. If συνθήκη 1 Then [μπλοκ προτάσεων-1] [Elself συνθήκη 2 Then [μπλοκ προτάσεων -2]]... [Else [μπλοκ προτάσεων -n]] Η Visual Basic πρώτα ελέγχει τη πρώτη συνθήκη. Αν είναι False η Visual Basic συνεχίζει τον έλεγχο με τη συνθήκη2 και αυτό μέχρι να βρει μια True συνθήκη. Όταν βρει τη True συνθήκη, η Visual Basic εκτελεί το αντίστοιχο μπλοκ προτάσεων και έπειτα εκτελεί το κώδικα που ακολουθεί κάτω από το. Μια επιπλέον επιλογή θα ήταν να συμπεριλάβουμε μία Else με ένα μπλοκ προτάσεων το οποίο η Visual Basic θα εκτελέσει αν καμία από τις συνθήκες δεν είναι True. If. Then... Elself είναι μια ειδική περίπτωση του If. Then... Else. Μπορεί να έχει κάποιο αριθμό από ElseIf προτάσεις, ή καμία. Μπορούμε να συμπεριλάβουμε μία Else πρόταση άσχετα εάν έχουμε ElseIf πρόταση. Για παράδειγμα, η εφαρμογή μας μπορεί να υλοποιήσει διαφορετικές ενέργειες ανάλογα με ποια επιλογή ενός μενού έγινε. Private Sub mnucut Click(Index As Integer) If Index = 0 Then ' Cut command. CopyActiveControl ' Call general procedures. ClearActiveControl ElseIf Index = 1 Then ' Copy command. CopyActiveControl ElseIf Index = 2 Then ' Clear command. ClearActiveControl Else ' Paste command. PasteActiveControl End Sub Δίνουμε προσοχή ότι, μπορούμε πάντα να προσθέτουμε περισσότερα ElseIf κομμάτια στην εντολή If. Then. Ωστόσο, η σύνταξη αυτή μπορεί να γίνει κουραστική όταν κάθε κομμάτι ElseIf συγκρίνει την ίδια έκφραση με διαφορετική τιμή. Για αυτή τη κατάσταση είναι προτιμότερο να χρησιμοποιήσουμε τη Select Case. - 21 -

1.6.3 Select case Η Visual Basic παρέχει τη Select case σαν μία εναλλακτική της If... Then... Else για να εκτελεί επιλεκτικά ένα μπλοκ προτάσεων ανάμεσα σε πολλά μπλοκ προτάσεων. Η εντολή select case παρέχει ικανότητα παρόμοια με την If. Then... Else, αλλά κάνει τον κώδικα περισσότερο ευανάγνωστο όταν υπάρχουν αρκετές επιλογές. Μία εντολή select case δουλεύει με ένα έλεγχο της έκφρασης, η οποία υπολογίζεται μία φορά, στη κορυφή της εντολής. Η Visual Basic έπειτα συγκρίνει το αποτέλεσμα αυτής της έκφρασης με τις τιμές για κάθε case μέσα στην εντολή. Εάν ταιριάζει εκτελεί το μπλοκ προτάσεων που αντιστοιχεί με αυτό το case. Select Case έλεγχος έκφρασης [Case λίστα έκφρασης 1 [μπλοκ προτάσεων-1]] [Case λίστα έκφρασης 2 [μπλοκ προτάσεων -2]] [Case Else [μπλοκ προτάσεων -n]] End Select Κάθε λίστα έκφρασης είναι μία λίστα από μία ή περισσότερες τιμές. Εάν υπάρχουν περισσότερες από μία τιμές σε μία λίστα, οι τιμές χωρίζονται με κόμμα. Κάθε μπλοκ προτάσεων περιλαμβάνει μηδέν ή περισσότερες προτάσεις. Αν περισσότερες από μία Case ταιριάζει με μια έκφραση, μόνο το μπλοκ προτάσεων που αντιστοιχεί στο πρώτο case που ταιριάζει θα εκτελεστεί. Η Visual Basic εκτελεί προτάσεις σε μία Case Else (Προαιρετική) αν καμία από τις τιμές στις εκφράσεις λιστών δεν ταιριάζει με αυτή στον έλεγχο έκφρασης. Για παράδειγμα, υποθέτουμε ότι προσθέτουμε μία εντολή σε ένα μενού με τη χρήση της If... Then... Else. Θα μπορούσαμε να προσθέσουμε μία άλλη Elself πρόταση, ή θα μπορούσαμε να γράψουμε τη συνάρτηση με τη Select Case: Private Sub mnucut Click(Index As Integer) Select Case Index Case 0 ' Cut command. CopyActiveControl ' Call general procedures. ClearActiveControl Case 1 ' Copy command. CopyActiveControl Case 2 ' Clear command. ClearActiveControl Case 3 ' Paste command. PasteActiveControl Case Else frmfind.show ' Show Find dialog box. End Select End Sub - 22 -

Να προσέχουμε ότι η εντολή Select case υπολογίζει μία έκφραση μία φορά στην κορυφή, εν αντιθέσει, η If... Then... Else μπορεί να υπολογίσει διαφορετική έκφραση για κάθε Elself. Μπορούμε να αντικαταστήσουμε την εντολή If... Then... Else με τη Select case μόνο αν η εντολή If και κάθε Elself υπολογίζουν την ίδια έκφραση. 1.7 Βρόγχοι Στη Visual Basic όπως και στις περισσότερες γλώσσες προγραμματισμού για να επαναλάβουν ορισμένες προτάσεις χρησιμοποιούν τους λεγόμενους βρόγχους. Υπάρχουν διάφοροι τύποι βρόγχων οι περισσότεροι από τους οποίους αναφέρονται σε αυτή την ενότητα. 1.7.1 Bpoyyoc Do... Loop Επαναλαμβάνει ένα μπλοκ προτάσεων όσο μία συνθήκη είναι True ή μέχρι μία συνθήκη γίνει True. Πώς συντάσσεται; Do [{While Until} συνθήκη] [προτάσεις] [Exit Do] [προτάσεις] Loop Μπορεί επίσης να συντάσσεται: Do [προτάσεις] [Exit Do] [προτάσεις] Loop [{While Until} συνθήκη] Η διαφορά της πρώτης σύνταξης με τη δεύτερη είναι ότι στη πρώτη κάνει τον έλεγχο και αν ισχύει εκτελεί τις προτάσεις. Ενώ στη δεύτερη εκτελεί για μία φορά τις προτάσεις, ύστερα κάνει τον έλεγχο αν ισχύει εκτελεί για δεύτερη φορά τις προτάσεις. Και στις δύο περιπτώσεις όταν ο έλεγχος παύει να ισχύει το πρόγραμμα συνεχίζει με τις προτάσεις μετά το Loop. - 23 -

Η σύνταξη της Do Loop έχει τα εξής μέρη: Μέρος Περιγραφή Συνθήκη Προαιρετικό. Αριθμητική ή αλφαριθμητική έκφραση η οποία είναι True ή False. Αν η συνθήκη είναι Null, συνθήκη θεωρείται False. Προτάσεις Μία ή περισσότερες προτάσεις οι οποίες είναι επαναλαμβάνονται όσο, ή μέχρι, η συνθήκη είναι True. Όσες Exit Do εντολές θα χρειαστούμε, πρέπει να τοποθετούνται κάπου μέσα στο Do... Loop. Σαν εναλλακτικός τρόπος να βγούμε από ένα Do... Loop. Exit Do συχνά χρησιμοποιείται μετά από τον υπολογισμό συνθήκης, για παράδειγμα, If... Then μέσα στις προτάσεις της εντολής αυτής το Exit Do μεταφέρει τον έλεγχο στη πρόταση αμέσως μετά το Loop. Παράδειγμα Το παράδειγμα αυτό δείχνει πώς η εντολή Do... Loop μπορεί να χρησιμοποιηθεί. Η εσωτερική εντολή Do... Loop, οι προτάσεις της οποίας εκτελούνται 10 φορές, βάζει τη τιμή της σημαίας σε False, και βγαίνει πρόωρα χρησιμοποιώντας την εντολή Exit Do. Ο εξωτερικός βρόγχος βγαίνει άμεσα ελέγχοντας τη τιμή της σημαίας. Dim Check, Counter Check = True: Counter = 0 ' Initialize variables. Do ' Outer loop. Do While Counter < 20 ' Inner loop. Counter = Counter + 1 ' Increment Counter. If Counter = 10 Then ' If condition is True. Check = False ' Set value of flag to False. Exit Do ' Exit inner loop. Loop Loop Until Check = False ' Exit outer loop immediately. - 24 -

1.7.2 Η Βρόγχος For... Next Επαναλαμβάνει συγκεκριμένες φορές μία σειρά από προτάσεις. Πώς συντάσσεται; For counter = start To end [Step step] [προτάσεις] [Exit For] [προτάσεις] Next [Counter] Η σύνταξη της For... Next έχει τα εξής μέρη: Μέρος counter start end step statements Περιγραφή Υποχρεωτικό. Αριθμητική μεταβλητή, χρησιμοποιείται σαν μετρητής στο βρόγχο. Η μεταβλητή δε μπορεί να είναι Boolean ή ένας πίνακας. Υποχρεωτικό. Ορίζει την αρχική τιμή στο μετρητή. Υποχρεωτικό. Ορίζει την τελική τιμή του μετρητή. Προαιρετικό. Ορίζει το βήμα με το οποίο θα αλλάζει η τιμή του μετρητή. Εάν δεν οριστεί τότε το βήμα θεωρείται μονάδα. Προαιρετικό. Μία ή περισσότερες προτάσεις ανάμεσα στα For και Next τα οποία εκτελούνται συγκεκριμένες φορές. Παρατηρήσεις Το όρισμα step μπορεί να είναι θετικό ή αρνητικό. Η τιμή του ορίσματος step αποφασίζει την επεξεργασία του βρόγχου ως ακολούθως: Τιμή Θετικό ή 0 Αρνητικό Ο βρόγχος εκτελείται αν counter <= end counter >= end Αφού όλες οι προτάσεις μέσα στο βρόγχο εκτελεστούν το βήμα προστίθεται στο μετρητή. Στο σημείο αυτό, είτε οι προτάσεις θα εκτελεστούν ξανά, ή θα έχουμε έξοδο από το βρόγχο και η εκτέλεση θα συνεχιστεί με τις προτάσεις κάτω από το Next. Υπόδειξη Αλλάζοντας τη τιμή του μετρητή όσο βρίσκεσαι μέσα στο βρόγχο είναι πιο δύσκολο να διαβάσει και να κάνει debug το κώδικα μας. - 25 -

Όσες Exit For εντολές θα χρειαστούμε, πρέπει να τοποθετούνται κάπου μέσα στο βρόγχο, σαν εναλλακτικός τρόπος να βγούμε από αυτόν. Exit For συχνά χρησιμοποιείται μετά από τον υπολογισμό συνθήκης, για παράδειγμα, If... Then μέσα στις προτάσεις της εντολής αυτής το Exit For μεταφέρει τον έλεγχο στη πρόταση αμέσως μετά το Next. Μπορούμε να φωλιάσουμε For... Next βρόγχους τοποθετώντας ένα For... Next βρόγχο μέσα σε ένα άλλο. Καλό είναι να δίνουμε σε κάθε βρόγχο μία μοναδική μεταβλητή όπως αυτή του μετρητή. Η σωστή δομή είναι η ακόλουθη: For I = 1 To 10 For J = 1 To 10 For K = 1 To 10 Next K Next J Next I Σημείωση Αν παραλείψουμε το μετρητή στη Next, η εκτέλεση συνεχίζεται όπως εάν υπήρχε ο μετρητής. Αν μία Next πρόταση συναντήσουμε, πριν της αντιστοιχηθεί μία For πρόταση, ένα σφάλμα θα συμβεί. Παράδειγμα Αυτό το παράδειγμα χρησιμοποιεί τη For... Next για να δημιουργήσουμε ένα string που να περιέχει 10 περιπτώσεις των αριθμών 0 μέχρι 9, κάθε string χωρίζεται από ένα άλλο στο οποίο ανήκει ένα κενό διάστημα. Ο εξωτερικός βρόχος χρησιμοποιεί διαφορετική μεταβλητή για το μετρητή. Dim Words, Chars, MyString For Words = 10 To 1 Step -1 ' Set up 10 repetitions. For Chars = 0 To 9 ' Set up 10 repetitions. MyString = MyString & Chars ' Append number to string. Next Chars ' Increment counter MyString = MyString & " " ' Append a space. Next Words - 26 -

ΚΕΦΑΛΑΙΟ 2 ΠΕΡΙΗΓΗΣΗ ΣΤΟ NEAPOLIS 2.1 Εισαγωγή Το Neapolis είναι ένα πρόγραμμα εξομοίωσης ηλεκτρικών κυκλωμάτων (π.χ. κινητήρες, μετατροπείς κ.α.). Το πρόγραμμα αυτό απαρτίζεται από τρία κύρια μέρη. Στο πρώτο μέρος γίνεται η επιλογή της γλώσσας με την οποία θα εμφανίζονται τα μενού, τα μηνύματα, οι λεζάντες των κουμπιών και όλων των ελεγκτηρίων. Επίσης, στο πρώτο μέρος γίνεται τόσο η επιλογή του εξομοιούμενου συστήματος όσο και ο προσδιορισμός του συστήματος αυτού (ορίζοντας τις αρχικές τιμές και μερικές φορές οριακές τιμές). Στο δεύτερο μέρος γίνεται η εξομοίωση του επιλεγμένου συστήματος, όπου μπορούμε να δούμε τις κυματομορφές του συστήματος σύμφωνα με τις αρχικές τιμές που έχουμε δώσει κατά τον προσδιορισμό και να αλλάξουμε ορισμένες από τις τιμές ώστε να δούμε πως ανταποκρίνεται σε αυτές τις αλλαγές το σύστημα. Τέλος, στο τρίτο μέρος γίνεται η επεξεργασία αποτελεσμάτων ανάλογα με τα αποτελέσματα που είχαμε κατά την εξομοίωση. Σε αυτή την ενότητα θα δούμε πως λειτουργεί το Neapolis, αλλά θα σταθούμε περισσότερο στο δεύτερο μέρος, επειδή είναι και αυτό στο οποίο θα γίνει η παρέμβαση. 2.2 Κεντρική Σελίδα Η φόρμα αυτή είναι η κεντρική σελίδα και ονομάζεται έτσι γιατί είναι και το μέρος από το οποίο μπορείς να μεταβείς στα άλλα μέρη (εξομοίωση και επεξεργασία αποτελεσμάτων). Η σελίδα αυτή σου δίνει τη δυνατότητα να επιλέξεις τη γλώσσα και το σύστημα εξομοίωσης. Ας δούμε πως γίνεται αυτή η διαδικασία. Σχήμα 2.1: Σελίδα Επιλογής κυκλώματος. - 27 -

2.2.1 Επιλογή Γλώσσας Για την επιλογή της γλώσσας υπάρχουν διάφορα κουμπιά επιλογής από τα οποία παρατηρούμε ότι τα κουμπιά Deutsch και Nederlands είναι απενεργοποιημένα. Αυτό συμβαίνει διότι προς το παρόν το Neapolis δεν υποστηρίζει τις δύο αυτές γλώσσες. Επίσης, μία άλλη παρατήρηση είναι ότι σαν προεπιλεγμένη γλώσσα είναι η αγγλική. Ε π ιλ έ ξ τ ε γ λ ώ σ σ α : S e le c t la n g u a g e : 9 Ε λληνικά 9 E nglish W a e le s p ra c h e : 9 D eultsch S e le c te e r ta a l : 9 N ttd u ta n d s S e le c c io n a el idiom a: 9 C a ste lla n o Σχήμα 2.2: Πλαίσιο επιλογής γλώσσας 2.2.2 Πλαίσιο εμφάνισης επιλεγμένου συστήματος Σαν προεπιλεγμένο σύστημα, δηλαδή το σύστημα που είναι επιλεγμένο με την εκτέλεση του Neapolis είναι το 3-Ph Induction Motor (3-φασικός επαγωγικός κινητήρας). Το επιλεγμένο σύστημα μπορούμε να το δούμε στο παρακάτω πλαίσιο. Σχήμα 2.3: Πλαίσιο εμφάνισης επιλεγμένου συστήματος 2.2.3 Μενού κεντρικής σελίδας Στο μενού κεντρικής σελίδας από ότι βλέπουμε μπορούμε να επιλέξουμε ποιο θα είναι το εξομοιούμενο σύστημα. Για να επιλέξουμε ένα σύστημα μπορούμε να κινηθούμε ανάμεσα στα υπομενού των Motors, Converters και Motor Drives. Το μενού της κύριας σελίδας φαίνεται στο Σχήμα 2.4. Neapolis ν5 - Main Menu Motors Converters Motor Drives Action Help Σχήμα 2.4: Μενού κεντρικής σελίδας. - 28 -

2.2.4 Πλαίσιο εμφάνισης επιλεγμένου οδηγού αποθήκευσης Ο επιλεγμένος οδηγός αποθήκευσης φαίνεται στο Σχήμα 2.5. Σαν προεπιλεγμένος δίσκος είναι ο c: Σχήμα 2.5: Πλαίσιο επιλεγμένου οδηγού αποθήκευσης. 2.3 Σελίδα Προσδιορισμού του Συστήματοc Κάνοντας κλικ στο κουμπί Define System ο χρήστης μεταβαίνει στην επόμενη σελίδα η οποία είναι η σελίδα Προσδιορισμού Συστήματος στην οποία γίνεται η εισαγωγή παραμέτρων του συστήματος. Η σελίδα αυτή φαίνεται στο Σχήμα 2.6. Σχήμα 2.6: Σελίδα εισαγωγής των παραμέτρων. Ο χρήσης μέσω αυτής της σελίδας μπορεί να δώσει τιμές στο σύστημα του πριν την εξομοίωση. Αυτό που μόλις αναφέρθηκε μπορεί να γίνει κάνοντας κλικ σε διάφορες επιλογές εμφανίζοντας νέες σελίδες. Βλέπουμε στη φόρμα ότι υπάρχουν μερικές απενεργοποιημένες επιλογές. Οι συγκεκριμένες επιλογές είναι απενεργοποιημένες διότι δε μας είναι χρήσιμες. Σαν εξομοιούμενο σύστημα εδώ έχει επιλεγεί 1-φ Ανορθωτής, παρατηρούμε όμως ότι η επιλογή Μετατροπείς μπορεί να χρησιμοποιηθεί ενώ οι Κινητήρες και τα Συστήματα είναι απενεργοποιημένα. Αυτό συμβαίνει διότι δε μας αφορούν. - 29 -

2.3.1 Μενού Σελίδας προσδιορισμού του συστήματος Στο μενού στο πάνω μέρος της φόρμας υπάρχουν οι επιλογές file, supply, motor, converters, drives, load, program, graphics, help. Το μενού φαίνεται στο Σχήμα 2.7. Φ ίί Neapolis ν5 - System Definition o f3 -P h Induction M o to r File Supply M otors Converters Drives Load Program Graphics Help Σχήμα 2.7: Μενού Σελίδας εισαγωγής των παραμέτρων. 2.3.2 Το υπομενού της επιλογής file Επιλέγοντας το file εμφανίζεται ένα υπομενού στο οποίο υπάρχουν οι επιλογές Default values, Select values from file, Save current values to file. Το υπομενού φαίνεται στο Σχήμα 2.8. Σχήμα 2.8: Υπομενού επιλογής file. H Default values θέτει στο σύστημα όλες τις προεπιλεγμένες τιμές. Με την Select values from file μπορούμε να επιλέξουμε ένα αρχείο στο οποίο είναι αποθηκευμένες οι τιμές που θέλουμε να φορτώσουμε. Με την Save current values to file ο χρήστης αποθηκεύει τις τρέχουσες τιμές των παραμέτρων σε ένα αρχείο. Με τις επιλογές Supply, Motors, Load, Converters, Drives ο χρήστης μπορεί να αλλάξει τις τιμές των παραμέτρων του συστήματος. Οι επιλογές Converters, Drives είναι ανενεργές γιατί στην περίπτωση μας έχουμε 3- φασικό επαγωγικό κινητήρα ενώ αυτές αναφέρονται σε άλλα κινητήρια συστήματα. Θα δούμε όλες τις επιλογές του μενού με επιλεγμένο το σύστημα 3-φ Κινητήρα. - 30 -

2.3.3 Επιλογή Supply Εδώ ο χρήστης ορίζει τις παραμέτρους της τροφοδοσίας του συστήματος. Η φόρμα φαίνεται στο Σχήμα 2.9. Σχήμα 2.9: Φόρμα επιλογής παραμέτρων τροφοδοσίας. Πατώντας συνέχεια αποθηκεύονται οι τιμές που έχουμε δώσει ή έχουμε επιλέξει. Ενώ πατώντας το Default values, αν έχουμε αλλάξει τις τιμές, επαναφέρει στις προκαθορισμένες. 2.3.4 Επιλογή Motors Διαλέγουμε τον τύπο του κινητήρα που θέλουμε να γίνει εξομοίωση. Εμείς θα ασχοληθούμε με τον τριφασικό επαγωγικό κινητήρα οπότε αυτόν θα επιλέξουμε. Η επιλογή φαίνεται στο Σχήμα 2.10. Σχήμα 2.10: επιλογή τύπου κινητήρα. - 31 -

Διαλέγουμε τα χαρακτηριστικά του κινητήρα που θέλουμε. Η επιλογή φαίνεται στο Σχήμα 2.11 Σχήμα 2.11: Φόρμα επιλογής παραμέτρων κινητήρα. 2.3.6 Επιλογή Load Εδώ ο χρήστης ορίζει τις παραμέτρους του φορτίου του συστήματος. Η φόρμα φαίνεται στο Σχήμα 2.12. Σχήμα 2.12: Φόρμα επιλογής παραμέτρων φορτίου. - 32 -

2.3.7 Επιλογή program Επίσης στο μενού υπάρχει η επιλογή program με την οποία μπορεί ο χρήστης να αλλάξει τις μεταβλητές του προγράμματος (Περίοδοι προσομοίωσης και βήματα χρόνου / περίοδο). Η φόρμα φαίνεται στο Σχήμα 2.13. Σχήμα 2.13: Φόρμα επιλογής των μεταβλητών του προγράμματος. 2.3.8 Επιλογή graphics Μία άλλη επιλογή είναι η graphics. Όταν ο χρήστης την επιλέξει εμφανίζεται στην οθόνη η φόρμα στο Σχήμα 2.14. Σχήμα 2.14: Φόρμα επιλογής graphics. - 33 -

2.3.8 Επιλογή help Η τελευταία επιλογή του μενού της σελίδας εισαγωγής των παραμέτρων του NEAPOLIS είναι η επιλογή help. Όταν ο χρήστης την επιλέξει στην οθόνη εμφανίζεται η φόρμα στο Σχήμα 2.15. Σχήμα 2.15: Φόρμα επιλογής Βοήθειας. Όπως παρατηρούμε εμφανίζονται όλες οι επιλογές του μενού. Πατώντας πάνω σε κάθε επιλογή εμφανίζονται αναλυτικές οδηγίες που σχετίζονται με αυτή την επιλογή. Ανάλογα με την επιλογή μας η συγκεκριμένη φόρμα μπορεί να εμφανίσει διαφορετική βοήθεια (φορτώνοντας html αρχεία στη φόρμα). Αυτές ήταν οι επιλογές που υπάρχουν στο μενού της σελίδας εισαγωγής των παραμέτρων του Neapolis. Πηγαίνοντας πίσω στην κεντρική σελίδα του Neapolis, υπάρχουν και άλλες επιλογές εκτός αυτής του προσδιορισμού συστήματος. - 34 -

2.4 Επιλογή Simulate system Με αυτή την επιλογή εκτελείται το δεύτερο μέρος του Neapolis. Στο μέρος αυτό η κύρια φόρμα είναι η φόρμα με τις γραφικές παραστάσεις του συστήματος η οποία εμφανίζεται σύμφωνα με τις παραμέτρους που έχει ορίσει ο χρήστης. Η φόρμα φαίνεται στο Σχήμα 2.16. Σχήμα 2.16: Σελίδα Εμφάνισης γραφικών παραστάσεων. Κατά την αρχικοποίηση και κάνοντας τη συγκεκριμένη επιλογή σχεδιάζονται σύμφωνα με τις αρχικές τιμές και με διάφορους υπολογισμούς οι άξονες x, y για κάθε γραφική παράσταση.. Στη συγκεκριμένη φόρμα υπάρχει η δυνατότητα να εμφανιστούν μέχρι και 12 γραφικές παραστάσεις παραγόμενων μεταβλητών. - 35 -

2.4.1 Μενού σελίδας Προσομοίωση συστήματος Στο μενού της φόρμας Προσομοίωση συστήματος υπάρχουν οι επιλογές File, Change, Print, Experiment, Simulation Speed και η Help (βλέπε Σχήμα 2.17). Όλες οι επιλογές του μενού με εξαίρεση αυτή της βοήθειας έχουν και τα αντίστοιχα υπομενού τους. 2.4.2 Το υπομενού της επιλογής File Επιλέγοντας File εμφανίζεται το υπομενού με τις επιλογές Start, Show Circuit, Pause και Exit. Το υπομενού φαίνεται στο Σχήμα 2.19 Σχήμα 2.17: Υπομενού επιλογής File. Η επιλογή Start κάνει το ίδιο ακριβώς σαν να κάναμε κλικ στο κουμπί Start της φόρμας προσομοίωσης. Με τις δύο αυτές επιλογές αρχίζει η προσομοιωση του συστήματος. Η επιλογή Show Circuit εμφανίζει μία φόρμα στην οποία φορτώνεται μία εικόνα από το δίσκο στην οποία έχει σχεδιαστεί το κύκλωμα του επιλεγμένου συστήματος προσομοίωσης. Με την επιλογή Exit βγαίνει από τη σελίδα προσομοίωσης. 2.4.3 Το υπομενού της επιλογής Change Επιλέγοντας Change εμφανίζεται το υπομενού με τις επιλογές Supply Voltage, Frequency, Load Angle, Firing Angle και Load Emf. Το υπομενού φαίνεται στο Σχήμα 2.18 Σχήμα 2.18: Υπομενού επιλογής Change. Το υπομενού Change ανάλογα με το επιλεγμένο σύστημα προσομοίωσης έχει και τις αντίστοιχες επιλογές. Επομένως για διαφορετικό σύστημα προσομοίωσης πιθανότατα να είναι διαφορετικό το υπομενού Change. Οι συγκεκριμένες επιλογές (Supply Voltage, Frequency, Load Angle, Firing Angle και Load Emf) εμφανίζονται στη περίπτωση που το σύστημα προσομοίωσης το οποίο έχει επιλεγεί είναι ο 3-φ κινητήρας. Οποιαδήποτε επιλογή κι αν κάνουμε στο συγκεκριμένο υπομενού, μας δίνει τη δυνατότητα, να αλλάξουμε την τρέχουσα τιμή της συγκεκριμένης μεταβλητής. - 36 -

2.4.4 Το υπομενού της επιλογής Print Επιλέγοντας Print εμφανίζεται το υπομενού με μία και μοναδική επιλογή, Whole Screen. Το υπομενού φαίνεται στο Σχήμα 2.19 Σχήμα 2.19: Υπομενού επιλογής Print. Με την επιλογή Whole Screen εκτυπώνεται όλη η φόρμα με εξαίρεση το μενού και τη λεζάντα της φόρμας. 2.4.5 Το υπομενού της επιλογής Experiments Επιλέγοντας Experiments εμφανίζεται το υπομενού με μία και μοναδική επιλογή, Autoloading. Το υπομενού φαίνεται στο Σχήμα 2.20 Σχήμα 2.20: Υπομενού επιλογής Experiments. Με την επιλογή Autoloading αλλάζουμε το βήμα της γωνίας έναυσης. 2.4.6 Το υπομενού της επιλογής Simulation Speed Επιλέγοντας Simulation Speed εμφανίζεται το υπομενού με δύο επιλογές, μία για γρήγορη και μία για αργή προσομοίωση. Το υπομενού φαίνεται στο Σχήμα 2.21 Σχήμα 2.21: Υπομενού επιλογής Simulation Speed. Σαν προεπιλογή είναι η αργή προσομοίωση. Πως επιτυγχάνονται όμως η αργή και η γρήγορη εξομοίωση. Στη αργή προσομοίωση όλες οι περιοχές για τη σχεδίαση δηλώνονται σαν AutoRedraw = True ενώ κατά τη γρήγορη εξομοίωση σαν AutoRedraw = False. Αυτός ο τρόπος βοηθάει πολύ στη ταχύτητα αλλά έχουμε ένα σοβαρό μειονέκτημα κατά την προσομοίωση. Έχοντας επιλεγμένη τη γρήγορη εξομοίωση, το μειονέκτημα είναι ότι αν μία φόρμα ή οποιαδήποτε εφαρμογή των windows τοποθετηθεί μπροστά από τη φόρμα προσομοίωσης τότε μέρη των κυματομορφών χάνονται. - 37 -

ΚΕΦΑΛΑΙΟ 3 Μοντέλο u0viunc κατάστασης 3-φασικού κινητήρα 3.1 Τριφασικόc Kiv^xtioac Οι τριφασικοί ασύγχρονοι κινητήρες χρησιμοποιούνται σε μεγάλη έκταση σε κινητήρια συστήματα ρυθμιζόμενης ταχύτητας και έχουν τριφασικά τυλίγματα στον στάτη και τον δρομέα. Τα τυλίγματα του στάτη τροφοδοτούνται με συμμετρικές τριφασικές εναλλασσόμενες τάσεις, οι οποίες δημιουργούν επαγόμενες τάσεις στα τυλίγματα του δρομέα λόγο της δράσης μετασχηματιστή. Είναι δυνατό να διαμορφωθούν τα τυλίγματα του στάτη ώστε να δημιουργηθούν πολλαπλοί πόλοι στο στρεφόμενο μαγνητικό πεδίο που δημιουργείται στο διάκενο και περιστρέφεται με μιά ταχύτητα που λέγεται σύγχρονη ταχύτητα και είναι ω s 2ω Ρ όπου p είναι ο αριθμός πόλων και ω η συχνότητα τροφοδοσίας σε rad/s. Εάν μιά φασική τάση στάτη με την μορφή us = 42vs sin ^ t), παράγει μια ροή στον δρομέα που δίνεται από την σχέση φ(ΐ) = φ cos^ mt + δ - ω 81), τότε η ανά φάση επαγόμενη τάση στον δρομέα είναι e r N d_ \φη cos^ J + δ dt ω5ί)] = - N A (ω5 - ω η )sin\o s - ω η )t - δ ) = -se msin(s^ t - δ) = -s4 2 E r sin( sω s t - δ) όπου Ν ο αριθμός σπειρών της φάσης του δρομέα ωω η γωνιακή ταχύτητα του δρομέα δ η σχετική θέση του δρομέα Ε η ενεργός τιμή της επαγόμενης τάσης στο δρομέα ανά φάση s η ολίσθηση που ορίζεται σαν _ ω ζ - ω m ω 8 και δίνει την ταχύτητα του δρομέα σαν ωη = ω5 (1 - s). To ισοδύναμο κύκλωμα μιας φάσης του δρομέα φαίνεται στο Σχήμα 2.1α, όπου R' είναι η ανά φάση ωμική αντίσταση του δρομέα, X ' είναι η ανά φάση επαγωγική αντίσταση του δρομέα στην συχνότητα τροφοδοσίας και η Ε! παριστάνει την επαγόμενη ενεργό φασική τάση δρομέα όταν η ταχύτητα είναι μηδέν. Το ρεύμα δρομέα δίνεται από την σχέση - 38 -

I = ' se, r K 1 + (sx?) s x / i x ' r, ixr' >»./V V V > ----------A V ----- + + +»r SEr ; r, v, Ε N. N, - - E : (a) Rotor circuit (b) Stator and rotor circuit o------*»-----r w v > ----------- 1, ix» Rs jx,, v, ixn-5 ;R m! Vm - E, (c) Equivalent circuit Σχήμα 3.1 Κυκλωματικό μοντέλο επαγωγικού κινητήρα To ανά φάση ισοδύναμο κύκλωμα του επαγωγικού κινητήρα φαίνεται στο Σχήμα 2.1β και το πλήρες ισοδύναμο κύκλωμα φαίνεται στο Σχήμα 2.1γ παίρνοντας υπόψη το ισοδύναμο κύκλωμα του μετασχηματιστή, όπου Rm και Xm η ισοδύναμη ωμική αντίσταση των απωλειών πυρήνα και η επαγωγική αντίσταση μαγνήτισης αντίστοιχα. Θα υπάρχουν ωμικές απώλειες στάτη όταν τροφοδοτείται ο κινητήρας και οι ωμικές απώλειες δρομέα θα εξαρτώνται από την ολίσθηση. Οι απώλειες τριβών και αντίστασης του αέρα υπάρχουν όταν η μηχανή περιστρέφεται ενώ οι απώλειες πυρήνα (μαγνητικές απώλειες) μπορεί να εκφράζονται σαν τμήμα των απωλειών χωρίς φορτίο Pol. Τα ρεύματα στάτη και δρομέα μπορούν να υπολογισθούν από το ισοδύναμο κύκλωμα του Σχήματος 2.1γ και στην περίπτωση αυτή οι παράμετροι απόδοσης ενός τριφασικού ασύγχρονου κινητήρα μπορούν να υπολογισθούν ως εξής : Απώλειες χαλκού (ωμικές) στάτη ρ = 312SRs Απώλειες χαλκού δρομέα : P2 = 3Ε) Rr Απώλειες πυρήνα : V r R_ Ισχύς διακένου (περνά από στάτη σε δρομέα μέσω διακένου) : Pg 3I s Αναπτυσσόμενη ισχύς : Pd = Pg - P2 X ) K (1 - s) = Pg (1 - s) s - 39 -

Αναπτυσσόμενη ροπή : Td = pg Q - s) ω5 (1 - s) PL ω5 Ισχύς εισόδου : P = 3VSI S cos^, P + P + P με θω την γωνία μεταξύ VS και IS. Ισχύς εξόδου : Ρα = pd - pol P P - P Βαθμός απόδοσης : n = - = d 01 = 1 - s μ_ς----------^ ' P Pc + Pi + Pg Η τιμή της Xm είναι μεγάλη και εκείνη της Rmπολύ μεγαλύτερη, οπότε μπορεί να αφαιρεθεί από το κύκλωμα για να απλοποιηθούν οι υπολογισμοί. Αν ακόμα είναι και X 2 >> (R 2 + X 2), τότε ο κλάδος μαγνήτισης μπορεί να μετακινηθεί και το κύκλωμα να απλοποιηθεί περισσότερο με αποτέλεσμα εκείνο του Σχήματος 2.2. jxs jx, I,-I, 0---»---< rv>'v\ prrw.^. 1, V, \ * jxm S Σχήμα 3.2 Προσεγγιστικό ισοδύναμο κύκλωμα Από την σύνθετη αντίσταση εισόδου μπορεί να υπολογισθεί η γωνία του συντελεστή ισχύος του κινητήρα που είναι θη = π - tan 1 R S + R r / s X s + X r + tan 1 X m + X S + X r R + R r / s και από το Σχήμα 2.2 το ενεργό ρεύμα δρομέα είναι J = V s [(R s + R r / s )2 + (X s + Xr ) 2]1 Αντικαθιστώντας το ρεύμα δρομέα στον τύπο της ισχύος διακένου και αυτήν στον τύπο της αναπτυσσόμενης ροπής προκύπτει η σχέση T = Td 3RV2 sωs [(Rs + Rr / s)2 + (X s + Xr )2] Αν ο κινητήρας τροφοδοτείται από μιά σταθερή τάση σε μιά σταθερή συχνότητα, η αναπτυσσόμενη ροπή είναι συνάρτηση της ολίσθησης και η χαρακτηριστική ροπής - ταχύτητας μπορεί να προσδιορισθεί από την προηγούμενη εξίσωση. Μιά τυπική μορφή της αναπτυσσόμενης ροπής συναρτήσει της ολίσθησης ή της ταχύτητας φαίνεται στο Σχήμα 2.3. Η λειτουργία κινητήρα με αντίθετη φορά περιστροφής και η - 40 -