Σχήµα 5.1: Εισαγωγή της δοµής formula node στο Block Diagram.

Σχετικά έγγραφα
Σχήµα 4.1: Εισαγωγή βρόγχου while-loop.

Σχήµα 3.1: Εισαγωγή shift register σε βρόγχο for-loop.

Σχήµα 2.1: Εισαγωγή array στο Front Panel.

Σχήµα 6.1: Εισαγωγή της εντολής Read From Spreadsheet File στο Block Diagram.

3. Στο Block Diagram αναπτύσουµε το υπολογιστικό µέρος του προγράµµατος. Σχήµα 1.1: Το Front Panel του LabVIEW.

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΠΡΑΞΕΙΣ. Παράδειγμα #1. Πράξεις μεταξύ ακεραίων αριθμών

Σχήµα 7.1: Εισαγωγή της δοµής stacked sequence στο Block Diagram.

Ρητή μετατροπή αριθμητικής τιμής σε άλλο τύπο. Τι θα τυπωθεί στον παρακάτω κώδικα;

Λογικός τύπος Τελεστές σύγκρισης Λογικοί τελεστές Εντολές επιλογής Εμβέλεια Μαθηματικές συναρτήσεις Μιγαδικός τύπος ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ

Σύντομες εισαγωγικές σημειώσεις για την. Matlab

Υπολογιστές Ι. Άδειες Χρήσης. Τύποι δεδομένων. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

επιµέλεια Θοδωρής Πιερράτος

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ. Ακέραιοι αριθμοί (int) Πράξεις μεταξύ ακεραίων αριθμών

Σ η μ ε ι ώ σ ε ι ς γ ι α τ ο υ π ο λ ο γ ι σ τ ι κ ό φ ύ λ λ ο

3) το παράθυρο Πίνακας τιμών όπου εμφανίζονται οι τιμές που παίρνουν οι παράμετροι

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 9 Ανάλυση Fourier: Από τη Θεωρία στην Πρακτική Εφαρμογή των Μαθηματικών

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 2 - Εργαστήριο

Οι εντολές του MaLT+

Τα αλφαριθμητικά αποτελούνται από γράμματα, λέξεις ή άλλους χαρακτήρες (π.χ. μήλο, Ιούλιος 2009, You win!).

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Τύποι δεδομένων, μεταβλητές, πράξεις. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Εισαγωγή στο Πρόγραμμα Maxima

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 1 Γνωριμία με το περιβάλλον LabVIEW. Γνωριμία με το περιβάλλον LabVIEW.

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι χρειάζεται η εντολή if ; Εντολή if. Παράδειγμα #1. Παράδειγμα #1

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

Πρόβλημα 29 / σελίδα 28

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

Γνωρίστε το Excel 2007

Εισαγωγή στην Αριθμητική Ανάλυση

a = 10; a = k; int a,b,c; a = b = c = 10;

Κεφάλαιο 5ο: Εντολές Επανάληψης

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

Βασικές έννοιες προγραμματισμού

του προγράμματος diagrama_rohs.zip )

Διαδικασιακός Προγραμματισμός

Κεφάλαιο 1. Τι θα μάθουμε σήμερα: -AND, OR, NOT. -Ενσωματωμένες συναρτήσεις. -Μαθηματικοί τελεστές -ΤΕΛΕΣΤΕΣ DIV ΚΑΙ MOD. -Προτεραιότητα πράξεων

SMART Notebook Math Tools

Εισαγωγή στη Matlab Βασικές Συναρτήσεις

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

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

Σημαντικές δυνατότητες των σύγχρονων υπολογιστικών μηχανών: Αξιόπιστη καταγραφή πολύ μεγάλου όγκου δεδομένων

Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Πάτρας Τομέας Συστημάτων και Αυτομάτου Ελέγχου. Εργαστήριο Αναλογικού και Ψηφιακού Ελέγχου Ι

ΚΕΦΑΛΑΙΟ 7 ο. Έτσι ο προγραµµατισµός µε τη ΓΛΩΣΣΑ εστιάζεται στην ανάπτυξη του αλγορίθµου και τη µετατροπή του σε σωστό πρόγραµµα.

Κεφάλαιο 4ο: Εντολές επιλογής

1 η Εργαστηριακή Άσκηση MATLAB Εισαγωγή

Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB

Πληρουορική Γ Γσμμασίοσ

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

Συστήματα SCADA Εισαγωγή στη Λήψη Δεδομένων (DAQ) Μέρος 3 β

Ψευδοκώδικας. November 7, 2011

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Εντολή if. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

3 ο Εργαστήριο Μεταβλητές, Τελεστές

Εισαγωγή στον Προγραμματισμό

Μαθηματική Εισαγωγή Συναρτήσεις

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ )

Οι εντολές ελέγχου της ροής ενός προγράμματος.

Παράδειγμα «Ημίτονο και ζωγραφική!»: Έχει δει στα μαθηματικά τη γραφική παράσταση της συνάρτησης του ημιτόνου; Σας θυμίζει κάτι η παρακάτω εικόνα;

2.1. Εντολές Σχόλια Τύποι Δεδομένων

Επιµέλεια Θοδωρής Πιερράτος

Τυπικές χρήσεις της Matlab

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. 2o Εργαστήριο Σ.Α.Ε. Ενότητα : Εισαγωγή στο Labview

o AND o IF o SUMPRODUCT

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

Μαθηματική Εισαγωγή Συναρτήσεις

Γενικό πλαίσιο. Απαιτήσεις Μοντέλο εδοµένων. MinusXLRequirements. Απόστολος Ζάρρας

Χρήσεις Η/Υ και Βάσεις Βιολογικών Δεδομένων : ΒΙΟ109 [4] Επεξεργασία Δεδομενων σε λογιστικα φυλλα

> μεγαλύτερο <= μικρότερο ή ίσο < μικρότερο == ισότητα >= μεγαλύτερο ή ίσο!= διαφορετικό

Πρώτη επαφή με το μαθηματικό πακέτο Mathematica

Κεφάλαιο Πέµπτο: Η Εξάσκηση

Πρακτικές συμβουλές κατά την πληκτρολόγηση ., ; :! ( ) " " Άνοιγμα και αποθήκευση εγγράφου Αρχείο, Άνοιγμα. Αρχείο / Αποθήκευση

1ο Κεφάλαιο: Συστήματα

1. Εισαγωγή στο Sage.

for for for for( . */

Επίλυση της πρωτοβάθμιας εξίσωσης με χρήση πλαισίων κειμένου και κουμπιών. Με το σετ αυτών των 4 εντολών τι κάνω ; Διαβάζω τις 2 μεταβλητές α και β.

ΕισαγωγήστουςΗ/Υ. PHP Hypertext Preprocessor

Όταν το πρόγραμμα φτάσει σε αυτή την εντολή και ο καταχωρητής PINA έχει την τιμή

I. ΑΛΓΟΡΙΘΜΟΣ II. ΠΡΑΞΕΙΣ - ΣΥΝΑΡΤΗΣΕΙΣ III. ΕΠΑΝΑΛΗΨΕΙΣ. 1. Τα πιο συνηθισμένα σενάρια παραβίασης αλγοριθμικών κριτηρίων είναι:

7. Βασικά στοιχεία προγραµµατισµού.

Ηλεκτρονικοί Υπολογιστές

if(συνθήκη) {... // οµάδα εντολών } C: Από τη Θεωρία στην Εφαρµογή 5 ο Κεφάλαιο

Εισαγωγή - Βασικές έννοιες. Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος A Εξάμηνο

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

ΗΥ-150. Προγραμματισμός

Εργαστήριο Μαθηματικής Ανάλυσης Ι. Εισαγωγή στη Matlab Βασικές Συναρτήσεις-Γραφικές παραστάσεις. Πανεπιστήμιο Θεσσαλίας. Σχολή Θετικών Επιστημών

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

SMART Notebook 11.1 Math Tools

Κεφάλαιο : Επαναλήψεις (o βρόγχος While) (Διάλεξη 9) Δομές Έλεγχου Προγράμματος

Web page: Συνοπτική Θεωρία Μαθηματικών Γ Γυμνασίου Γεωμετρία-Τριγωνομετρία

ΣΤΗΛΗ Β ΑΠΟΤΕΛΕΣΜΑ 1. float(10) α pow(2,3) β abs(-10) γ int(5.6) δ. 10 ε. 5.6 Μονάδες 8 ΣΤΗΛΗ Α ΣΥΝΑΡΤΗΣΗ

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:

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

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

ιαδικαστικός Προγραμματισμός

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επανάληψης. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Ανάπτυξη και Σχεδίαση Λογισμικού

Transcript:

Η δοµή Formula Node 1. Η δοµή Formula Node επιτρέπει την εισαγωγή αναλυτικών σχέσεων στο Block Diagram µε πληκτρολόγηση, αποφεύγοντας έτσι την εισαγωγή των εικονίδιων συναρτήσεων απλών αλγεβρικών πράξεων και την εξοικονόµηση χώρου. 2. Εισάγουµε τη δοµή formula node στο Block Diagram µε δεξί κλικ, επιλογή της δοµής από το µενού Structures (σχήµα 5.1) και χαράζοντας ένα ορθόγωνιο στην επιφάνεια του Block Diagram. Σχήµα 5.1: Εισαγωγή της δοµής formula node στο Block Diagram. 3. Η σύνταξη των αλγεβρικών σχέσεων εντός της δοµής formula node ακολουθεί τους συνήθεις κανόνες που ισχύουν στις κοινές γλώσσες προγραµµατισµού (C, Fortran κλπ). Τα σύµβολα των τεσσάρων πράξεων είναι τα «+»,, «*» και «/». Η ύψωση σε δύναµη είναι «**» µε τη βάση αριστερά από τον εκθέτη. Προτεραιτότητα έχουν πάντα οι πράξεις που είναι µέσα σε παρενθέσεις, µε τις εσωτερικές παρενθέσεις να εκτελούνται πρώτα από τις εξωτερικές. Για πράξεις εκτός παρενθέσεων ή εντός της ίδιας παρένθεσης, η προτεραιότητα εκτέλεσης των πράξεων έχει ως εξής: ύψωση σε δύναµη, πολλαπλασιασµός ή διαίρεση και, τελευταία, πρόσθεση ή αφαίρεση. 4. Σε µία formula node πρέπει να ορίσουµε όλες τις µεταβλητές που θα εισάγουµε στις σχέσεις εντός της formula node εκ των προτέρων. Τα δεδοµένα δηλώνονται ως «input» και τα αποτελέσµατα δηλώνονται ως «output». Η δήλωση δεδοµένων και αποτελεσµάτων σε µία formula node γίνεται µε δεξί κλικ πάνω στο αριστερό ή δεξί περίγραµµα της formula node και επιλογή των εντολών «Add input» και «Add output» αντίστοιχα (σχήµα 5.2). Η δήλωση της µεταβλητής ολοκληρώνεται µε την εισαγωγή του ονόµατός της στο τετραγωνάκι που εµφανίζεται στο σηµείο του περιγράµµατος της formula node που έγινε το δεξί κλικ. Μπορούµε να δώσουµε ό,τι όνοµα θέλουµε µε λατινικούς χαρακτήρες και χωρίς να επαναλαµβάνεται κάποιο όνοµα στην ίδια formula node.

Σχήµα 5.2: ήλωση δεδοµένων και αποτελεσµάτων σε µία formula node. 5. Με τη δήλωση των δεδοµένων και των αποτελεσµάτων σε µία formula node, είναι δυνατή πλέον η εισαγωγή των αναλυτικών σχέσεων. Μία σχέση µπορεί να συνεχίζεται αυτόµατα και σε περισσότερες από µία γραµµές, αν δεν χωράει. Το τέλος κάθε σχέσης είναι υποχρεωτικό να δηλώνεται µε ένα ελληνικό ερωτηµατικό «;» (αγγλική άνω τελεία). 6. Όλα τα δεδοµένα σε µία formula node πρέπει να λαµβάνουν εισόδους από τιµές έξω από αυτήν, δηλαδή πρέπει να είναι καλωδιωµένα µε τιµές από το υπόλοιπο Block Diagram. 7. Στο σχήµα 5.3 παρουσιάζεται παράδειγµα χρήσης της formula node. Στο παράδειγµα αυτό έχουν εισαχθεί τρεις σχέσεις. Η τρίτη από αυτές συνεχίζεται σε δύο γραµµές. Κάθε σχέση ολοκληρώνεται µε την εισαγωγή του συµβόλου «;». Όλα τα δεδοµένα εισόδου είναι καλωδιωµένα µε numeric controls έξω από τη formula node. Το αποτέλεσµα Output1 χρησιµοποιείται ως εισαγωγή στη δεύτερη σχέση, όµως για τη formula node παραµένει αποτέλεσµα, καθώς δεν εισάγεται εξωτερικά στη formula node, αλλά υπολογίζεται εντός αυτής. Με την τρίτη σχέση υπολογίζεται το µέτρο C του διανυσµατικού αθροίσµατος δύο διανυσµάτων µε µέτρα Α και Β και µεταξύ τους γωνία FI, µέσω της σχέσης: C= A 2 + B 2 + 2 A B cos ( φ) Οι συναρτήσεις της τετραγωγικής ρίζας και του συνηµιτόνου στη formula node εισάγονται αντίστοιχα ως «sqrt» και «cos». Άλλες συναρτήσεις διαθέσιµες µε τη formula node είναι οι: abs: απόλυτη τιµή acos: τόξο συνηµιτόνου asin: τόξο ηµιτόνου atan: τόξο εφαπτοµένης cot: συνεφαπτοµένη exp: εκθετική µε βάση το e int: ακέραιο µέρος πραγµατικού αριθµού

ln: φυσικός λογάριθµος log: λογάριθµος µε βάση το 10 log2: λογάριθµος µε βάση το 2 max: µέγιστη τιµή από ένα πλήθος µεταβλητών min: ελάχιστη τιµή από ένα πλήθος µεταβλητών sin: ηµίτονο tan: εφαπτοµένη. Σχήµα 5.3: Παράδειγµα χρήσης Formula node. 8. Οι µεταβλητές που ορίζονται ως inputs ή outputs σε µία formula node πρέπει να εισάγονται στις πράξεις εντός αυτής ακριβώς όπως έχουν δηλωθεί, µε αντιστοιχία ακόµα και µεταξύ κεφαλαίων και µικρών γραµµάτων. Σε περίπτωση λάθους εισαγωγής η formula node δεν αναγνωρίζει τις µεταβλητές και τις θεωρεί ως µη δηλωµένες, µε αποτέλεσµα τη µη εκτέλεσή της και, κατ επέκταση, τη µη εκτέλεση του vi. 9. Τέλος στο παράδειγµα του σχήµατος 5.4 έχει εισαχθεί µία formula node για τον υπολογισµό της γραµµικής συνάρτησης Υ(Χ) = ΑΧ + Β. Το παράδειγµα, κατά τα λοιπά, είναι το ίδιο ακριβώς που παρουσιάζεται στο σχήµα 4.13 (Μάθηµα 4). Η εναλλακτική σύνταξη στο σχήµα 5.4 δίνεται για λόγους σύγκρισης µεταξύ της σύνταξης µε τις συναρτήσεις εκτέλεσης πράξεων και της formula node.

Σχήµα 5.4: Παράδειγµα χρήσης Formula node σε βρόγχο while-loop. Η δοµή Case Structure 1. Η δοµή case structure επιτρέπει την εκτέλεση διαφορετικών εναλλακτικών εργασιών ανάλογα µε το αν κάποια συνθήκη ελέγχου που εκτελείται πριν από τη δοµή έχει τιµή true ή false. 2. Εισάγουµε µία δοµή case structure µε δεξί κλικ στο Block Diagram, επιλογή της δοµής αυτής από το µενού Structures και χαράζοντας ένα ορθογώνιο µε τις διαστάσεις που θέλουµε να έχει η δοµή (σχήµα 5.5). Σχήµα 5.5: Εισαγωγή δοµής case structure στο Block Diagram.

3. Στο αριστερό κάθετο όριο της δοµής case structure υπάρχει µία λογική είσοδο (πράσινο αγγλικό ερωτηµατικό σε πράσινο πλαίσιο). Η είσοδος αυτή πρέπει να καλωδιωθεί µε το κριτήριο που θα καθορίσει ποια περίπτωση της case structure θα υλοποιηθεί. Αν η λογική αυτή είσοδος παραµείνει µη καλωδιωµένη, τότε η case structure, και κατ επέκταση, όλο το vi, δεν µπορεί να εκτελεστεί. 4. Εντός στο χώρο της κάθε περίπτωσης της case structure εισάγουµε τις εργασίες που πρέπει να εκτελεστούν αν ικανοποιείται η εκάστοτε δοµή. Εναλλασσόµαστε µεταξύ των περιπτώσεων TRUE και FALSE της case structure µε τα αριστερά και δεξιά βέλη που βρίσκονται εκατέρωθεν του τίτλου της κάθε περίπτωσης, στην κορυφή της δοµής. 5. Στο παράδειγµα του σχήµατος 5.6, αν το control «Numeric 1» είναι µη µηδενικός αριθµός, τότε θα εκτελεστεί η περίπτωση TRUE της case structure, µε βάση την οποία στο indicator «Numeric 3» θα αποδοθεί η τιµή: Numeric 2/Numeric 1. Αν το control «Numeric 1» είναι ίσο µε το µηδέν, τότε θα εκτελεστεί η περίπτωση FALSE της case structure, µε βάση την οποία θα αποδοθεί η τιµή 0 στο Numeric 3. Σχήµα 5.6: Παράδειγµα χρήσης της δοµής case structure. 6. Αν δηµιουργείται µία έξοδος αποτελέσµατος από µία περίπτωση TRUE ή FALSE σε µία case structure, τότε θα πρέπει υποχρεωτικά να υπάρξει έξοδος προς την ίδια έξοδο και από την άλλη περίπτωση της case structure. Αν δεν ικανοποιείται η προϋπόθεση αυτή, η case structure και, κατ επέκταση, όλο το vi, δεν µπορεί να εκτελεστεί. Για παράδειγµα, στο σχήµα 5.7 έχει καλωδιωθεί η έξοδος από την πράξη διαίρεσης µόνο στην περίπτωση TRUE. Η έξοδος αυτή έχει παραµείνει ασύνδετη στην περίπτωση FALSE. Η έξοδος παρουσιάζεται χωρίς γέµισµα στο εσωτερικό της (λευκό χρώµα) και το vi δεν µπορεί να εκτελεστεί. Ας παρατηρηθεί στο παράδειγµα του σχήµατος 5.6, όπου η έξοδος από την case structure έχει πορτοκαλί γέµισµα, λόγω της µεταφοράς πραγµατικού αριθµού, καθώς έχει δεχθεί είσοδο και στις δύο περιπτώσεις της δοµής.

Σχήµα 5.7: Παράδειγµα καλωδίωσης µιας εξόδου σε δοµή case structure µόνο στη µία περίπτωση της δοµής.το vi είναι µη εκτελέσιµ., 7. Η δοµή case structure χρησιµοποιείται συνήθως για πιο σύνθετες εργασίες από την παρουσιαζόµενη στο ανωτέρω παράδειγµα. Για απλές περιπτώσεις, όπως αυτή του σχήµατος 5.6, δύναται να χρησιµοποιηθεί η συνάρτηση «Select» από το µενού Comparison, στο οποίο, υπενθυµίζεται, περιέχονται όλες οι συναρτήσεις λογικού ελέγχου. Η εισαγωγή και το µενού βοήθειας της συνάρτησης Select στο Block Diagram παρουσιάζονται στο σχήµα 5.8. Στη λογική είσοδο της συνάρτησης εισάγεται το λογικό κριτήριο ελέγχου. Στην άνω είσοδο της συνάρτησης καλωδιώνεται η τιµή που θέλουµε να επιστρέψει αν το κριτήριο ελέγχου είναι αληθές, ενώ στην κάτω είσοδο της συνάρτησης Select καλωδιώνεται τη τιµή που θα επιστρέψει αν το κριτήριο ελέγχου είναι ψευδές. Σχήµα 5.8: Παράδειγµα χρήσης της δοµής case structure. 8. Με βάση τα ανωτέρω, η υλοποίηση του σχήµατος 5.9 θα έχει ακριβώς το ίδιο αποτέλεσµα µε την υλοποίηση του σχήµατος 5.6, όπου χρησιµοποιήθηκε η case structure.

Σχήµα 5.9: Χρήση της συνάρτησης Select. 9. Με τη δοµή case structure είναι εφικτή η εκτέλεση πολλών εναλλακτικών περιπτώσεων, ανάλογα µε την τιµή που θα πάρει µία ανεξάρτητη µεταβλητή ελέγχου. Στην περίπτωση αυτή οι εναλλακτικές περιπτώσεις της case structure δεν είναι πλέον οι TRUE και FALSE, αλλά περισσότερες των δύο, ανάλογα µε τη συνθήκη ελέγχου της δοµής. Ως παράδειγµα θα χρησιµοποιηθεί η σύνδεση µιας case structure µε ένα ring menu. 10. Εισάγουµε ένα ring menu στο Front Panel µε δεξί κλικ και επιλογή του «Ring Menu» από το µενού «Ring & Enum». Μπορούµε να αλλάξουµε το µέγεθος του ring menu µε τις οκτώ διαθέσιµες λαβές. Σχήµα 5.10: Εισαγωγή ring menu στο Front Panel. 11. Στη συνέχεια θα πρέπει να δωθεί περιγραφή των εναλλακτικών περιπτώσεων που θα είναι δυνατές µέσω του συγκεκριµένου ring menu. Τούτο επιτυγχάνεται µε δεξί κλικ πάνω στο ring menu και επιλογή της εντολής «Edit Items» από το αναδυόµενο µενού. Στο παράθυρο διαλόγου που ανοίγει µπορούµε να πληκτρολογήσουµε απευθείας τις περιγραφές των επιλογών του

ring menu, να εισάγουµε ενδιάµεσα ήδη υφιστάµενων επιλογών κάποια καινούργια µε το κουµπί Insert, να διαγράψουµε κάποια µε το κουµπί Delete και να αλλάξουµε τις θέσεις τους µε τα κουµπιά Move Up και Move Down (σχήµα 5.11). ίπλα στον τίτλο κάθε εισαγωγής εµφανίζεται ο αύξων αριθµός που τις αποδίδεται και µε το οποίο θα είναι προσβάσιµη από το υπόλοιπο vi. Για παράδειγµα, στο 5.11 η επιλογή «Γραµµική συνάρτηση» έχει την τιµή 0, η επιλογή «ιώνυµο» έχει την τιµή 1 και η επιλογή «Εκθετική» έχει την τιµή 2. Το αποτέλεσµα της παραπάνω εργασίας θα είναι η κατασκευή ενός dropdown µενού µε τις εισαχθείσες επιλογές. Σχήµα 5.11: Εισαγωγή επιλογών σε ring menu µε το πλαίσιο διαλόγου Edit Items 12. Ένα παράδειγµα συνδυασµένης χρήσης του ring menu µε τη δοµή case structure παρουσιάζεται στο σχήµα 5.12. Στο παράδειγµα αυτό το menu ring που ορίστηκε στο παράδειγµα του σχήµατος 5.11 έχει καλωδιωθεί στη µεταβλητή ελέγχου µιας case structure. Το αποτέλεσµα είναι η case structure να αλλάξει τους τίτλους των περιπτώσεών της από TRUE και FALSE σε 0 και 1 αντίστοιχα. Ταυτόχρονα το χρώµα της εισόδου της case structure από πράσινο που ήταν έγινε µπλε, κάτι που υποδηλώνει ότι η τιµή στη µεταβλητή εισόδου της case structure µπορεί πλέον να είναι ακέραιος αριθµός και όχι λογική τιµή. Καθώς το ring menu που κατασκευάστηκε περιέχει µία επιλογή ακόµα, εισάγουµε στην case structure µία ακόµα περίπτωση µε δεξί κλικ πάνω στο περίγραµµά της και επιλογή της εντολής «Add Case After» ή «Add Case Before» από το αναδυόµενο µενού. Θα εισαχθεί µία νέα περίπτωση στη δοµή case structure αντίστοιχα µετά ή πριν από την περίπτωση που ήταν ορατή όταν δόθηκε η εν λόγω εντολή. Στο ίδιο µενού είναι διαθέσιµες επιπλέον επιλογές, όπως η διαγραφή της τρέχουσας ορατής περίπτωσης (Delete This Case), η διαγραφή όλων των περιπτώσεων µιας δοµής που είναι κενές (Remove Empty Cases), η αντιγραφή και η προσθήκη της τρέχουσας ορατής περίπτωσης (Duplicate Case), ο ορισµός µιας περίπτωσης ως η περίπτωση 0 (Make This Case 0, Default) κλπ.

Σχήµα 5.12: Εισαγωγή πρόσθετης περίπτωσης στη δοµή case structure. 13. Στο σχήµα 5.13 παρουσιάζονται οι τρεις περιπτώσεις case structure οι οποίες αναπτύχθηκαν για τη συνδυασµένη χρήση µε το ring menu που κατασκευάστηκε πριν. Με τις συγκεκριµένες δοµές σε κάθε ξεχωριστή περίπτωση της case structure αναπτύσσονται τα arrays Χ και Υ(Χ) για τρεις εναλλακτικές συναρτήσεις: στην περίπτωση 0 για τη γραµµική συνάρτηση: Υ(Χ) = ΑΧ +Β στην περίπτωση 1 για την πολυωνυµική συνάρτηση δευτέρου βαθµού: Υ(Χ) = ΑΧ 2 + ΒΧ + Γ στην περίπτωση 2 για την εκθετική συνάρτηση: Υ(Χ) = Αe x. Τα arrays αυτά εξάγονται στα κοινά tunnels εξόδου για τις τρεις περιπτώσεις της case structure. Στη συνέχεια, από τα tunnels αυτά δίνονται σε bundle τα arrays Χ και Υ που αντιστοιχούν στην επιλογή του ring menu. Από το bundle τελικά το cluster που δηµιουργείται οδηγείται σε ΧΥ Graph για τη γραφική παράσταση της συνάρτησης που έχει επιλεγεί. Αν σηµειωθούν ακόµα τα εξής: καθώς το πεδίο τιµών για τις τρεις συναρτήσεις είναι κοινό, τα numeric controls µε τα οποία ορίζεται τούτο X min και X max έχουν τοποθετηθεί έξω από την case structure. Με αυτό τον τρόπο ορίζονται µία φορά τα συγκεκριµένα controls και αποφεύγεται η επανάληψή τους σε κάθε περίπτωση της case structure. Όλη η κατασκευή έχει τοποθετηθεί σε ένα βρόγχο while-loop µε τη συνθήκη Stop if True να έχει καλωδιωθεί µε ένα κουµπί STOP. Έτσι το vi εκτελείται συνεχώς και η γραφική παράσταση αλλάζει αυτόµατα µε την αλλαγή της επιλογής στο ring menu ή των τιµών των παραµέτρων των συναρτήσεων.

Σχήµα 5.13: Συνδυασµένη χρήση δοµής case structure και ring menu.