Ανώσασο Σεφνολογικό Εκπαιδετσικό Ίδπτμα Κπήσηρ φολή Σεφνολογικών Ευαπμογών Σμήμα Ηλεκσπολογίαρ Βιομηφανικοί Ατσομασιςμοί Δπ Απιςσείδηρ Κτππάκηρ kiprakis@staff.teicrete.gr Σύπορ Εύπορ Σιμέρ (μη πποςημαςμένερ) Σιμέρ (πποςημαςμένερ) B: Byte 8 bits 0 255-128 +127 I: Integer 2 bytes 16 bits 0 65535-32768 +32767 DI: Double Integer 4 bytes - 32 bits 0 4294967295-2147483648 +2147483647 R: Real (floating point) 4 bytes - 32 bits +1.175495E-38 +3.402823E+38-1.175495E-38-3.402823E+38 και +1.175495E-38 +3.402823E+38 Εκσόρ σων παπαπάνω τπάπφοτν και άλλοι σύποι δεδομένων όπωρ HEX (δεκαεξαδικόρ), BCD (δεκαδικόρ κωδικοποιημένορ ςε δταδικό), ASCII (φαπακσήπαρ), String (ακολοτθία φαπακσήπων), οι οποίοι φπηςιμοποιούνσαι κασά πεπίπσωςη. Δρ Αριςτείδησ Ε. Κυπράκησ 1
Οι μεσαβλησέρ μποπούν να αποθηκεύονσαι ςσιρ πεπιοφέρ μνήμηρ: M (Memory), π.φ. ΜD11 V (Variable, πποςβάςιμη από ολόκληπο σο ππόγπαμμα), π.φ. VB100 L (Local Variable, πποςβάςιμη μόνο από σην ποτσίνα ςσην οποία δηλώθηκε), π.φ. LW21 Σο PLC δίδει ση δτνασόσησα απλών αλλά και πιο ςύνθεσων μαθημασικών ππάξεων μεσαξύ σων μεσαβλησών. Απαπαίσηση πποϋπόθεςη οι μεσαβλησέρ να είναι σοτ ιδίοτ σύποτ (π.φ. Integer με Integer, Real με Real κοκ.) Για ση μεσασποπή σων δεδομένων από έναν σύπο ςε κάποιο άλλο, τπάπφοτν εξειδικετμένα block (ενσολέρ) Με ςτνδταςμό σων κασάλληλων block καθίςσασαι δτνασή η μεσασποπή από και ππορ οποιοδήποσε σύπο δεδομένων Σα διαθέςιμα block μεσασποπήρ μεσαξύ σων βαςικών σύπων είναι σα εξήρ: B I, I DI, DI R, καθώρ και σα ανσίςσπουά σοτρ: I B, DI I, TRUNCATE και ROUND (R DI) Άπα έναρ Integer για να μεσασπαπεί π.φ. ςε Real, θα ππέπει ππώσα να γίνει Double Integer (I DI) και κασόπιν Real (DI R) Δρ Αριςτείδησ Ε. Κυπράκησ 2
Οι μεσασποπέρ μεσαξύ σύπων δεδομένων γίνονσαι πάνσα ςύμυωνα με σοτρ παπακάσω κανόνερ: Για σιρ μεσασποπέρ αύξηςηρ σοτ εύποτρ (B I, I DI), η απφική σιμή αποθηκεύεσαι ςσο δεξί μιςό (Less Significant Bits) σηρ νέαρ μεσαβλησήρ, ενώ σο απιςσεπό μιςό γεμίζει μηδενικά Οι μεσασποπέρ μείωςηρ σοτ εύποτρ (I B, DI I) γίνονσαι μόνο αν η απφική σιμή είναι απκεσά μικπή ώςσε να φωπά ςση νέα μεσαβλησή, (δηλαδή σο απιςσεπό μιςό σηρ είναι μηδέν) διαυοπεσικά εμυανίζεσαι ςυάλμα Η μεσασποπή DI R απλά αναπαπιςσά σον ακέπαιο ωρ δεκαδικό Η μεσασποπή TRUNCATE (R DI) αποκόπσει σο δεκαδικό και κπασά μόνο σο ακέπαιο σμήμα σηρ απφικήρ σιμήρ Η μεσασποπή ROUND (R DI) ςσπογγτλοποιεί σην απφική σιμή ςσην πληςιέςσεπη ακέπαια Δρ Αριςτείδησ Ε. Κυπράκησ 3
Οι ενσολέρ ςύγκπιςηρ 2 μεσαβλησών (ή μεσαβλησήρ και ςσαθεπάρ) ποτ είναι διαθέςιμερ ςσο S7-200 είναι οι παπακάσω: Var1 == Var2 (ιςόσησα) Var1 <> Var2 (ανιςόσησα) Var1 > Var2 (μεγαλύσεπο) Var1 >= Var2 (μεγαλύσεπο ή ίςο) Var1 < Var2 (μικπόσεπο) Var1 <= Var2 (μικπόσεπο ή ίςο) ΠΡΟΟΧΗ: Οι παπαπάνω ενσολέρ είναι διαθέςιμερ για όλοτρ σοτρ σύποτρ δεδομένων, αλλά διαυοπεσικέρ από σύπο ςε σύπο. Π.φ. τπάπφοτν ενσολέρ ιςόσησαρ byte, integer, double integer και real, διαυοπεσικέρ μεσαξύ σοτρ! Άπα ππέπει να επιλέγεσαι η κασάλληλη ανά πεπίπσωςη, ανάλογα με σον σύπο σων μεσαβλησών ππορ ςύγκπιςη. Δρ Αριςτείδησ Ε. Κυπράκησ 4
Έλεγφορ ειςόδοτ εξόδοτ γκαπάζ Να τλοποιηθεί εξ απφήρ ο ατσομασιςμόρ σηρ Άςκηςηρ 6 (Έλεγφορ πληπόσησαρ γκαπάζ) με ση βοήθεια ενσολών ςύγκπιςηρ και φπηςιμοποιώνσαρ μόνο έναν απαπιθμησή. Έλεγφορ ειςόδοτ εξόδοτ γκαπάζ σοιφείο Πεπιγπαυή I0.0 Γενικόρ διακόπσηρ ON/OFF I0.1 Αιςθησήπαρ ειςόδοτ (NO) Ι0.2 Αιςθησήπαρ εξόδοτ (NO) Ι0.3 Reset (NO) Q0.0 Ππάςινη λτφνία Q0.1 Ποπσοκαλί λτφνία Q0.2 Κόκκινη λτφνία C10 Counter σύποτ CTUD με πποππύθμιςη ςσο +50 Δρ Αριςτείδησ Ε. Κυπράκησ 5
Έλεγφορ ειςόδοτ εξόδοτ γκαπάζ Έλεγφορ ειςόδοτ εξόδοτ γκαπάζ Η σπέφοτςα σιμή σων απαπιθμησών έφει εύπορ 16 bit, άπα φπηςιμοποιούνσαι οι ανσίςσοιφερ ενσολέρ ςύγκπιςηρ Πώρ αλλιώρ θα μποπούςαμε να ενεπγοποιήςοτμε σην Q0.2; Δρ Αριςτείδησ Ε. Κυπράκησ 6
Οι μαθημασικέρ ππάξειρ ςσα PLC σηρ οικογένειαρ S7-200 φωπίζονσαι ςε 2 κασηγοπίερ: (1) Μαθημασικά ακεπαίων (Integer Math) ποτ πεπιλαμβάνοτν σιρ εξήρ ππάξειρ: ADD_I, ADD_DI (ππόςθεςη) SUB_I, SUB_DI (αυαίπεςη) MUL_I, MUL_DI (πολλαπλαςιαςμόρ) MUL (πολλαπλαςιαςμόρ 16 bit με αποσέλεςμα 32 bit) DIV_I, DIV_DI (διαίπεςη) DIV (διαίπεςη 16 bit με αποσέλεςμα 32 bit) INC_B, INC_W, INC_DW (αύξηςη σιμήρ κασά 1) DEC_B, DEC_W, DEC_DW (μείωςη σιμήρ κασά 1) Όπωρ και με σιρ ενσολέρ ςτγκπίςεων, θα ππέπει να δίδεσαι ιδιαίσεπη πποςοφή ςση φπήςη σων ενσολών με σοτρ ςωςσούρ σύποτρ δεδομένων Οι μαθημασικέρ ππάξειρ ςσα PLC σηρ οικογένειαρ S7-200 φωπίζονσαι ςε 2 κασηγοπίερ: (2) Μαθημασικά κινησήρ τποδιαςσολήρ (Floating Point Math) ποτ πεπιλαμβάνοτν σιρ εξήρ ππάξειρ: ADD_R (ππόςθεςη) SUB_R (αυαίπεςη) MUL_R (πολλαπλαςιαςμόρ) DIV_R (διαίπεςη) SQRT (σεσπαγωνική πίζα) SIN (ημίσονο) COS (ςτνημίσονο) TAN (ευαπσομένη) LN (υτςικόρ λογάπιθμορ) EXP (δύναμη σοτ e) PID (τλοποίηςη βπόφοτ PID) Δρ Αριςτείδησ Ε. Κυπράκησ 7
Δρ Αριςτείδησ Ε. Κυπράκησ 8
Έλεγφορ πληπόσησαρ γκαπάζ 2 ειςόδων - εξόδων Να τλοποιηθεί ξανά ο ατσομασιςμόρ σηρ Άςκηςηρ 6 (Έλεγφορ πληπόσησαρ γκαπάζ) αν τποσεθεί όσι σο γκαπάζ διαθέσει 2 ειςόδοτρ και 2 εξόδοτρ. Σο κάθε ζεύγορ ειςόδοτ εξόδοτ να έφει σον δικό σοτ απαπιθμησή, αλλά οι λτφνίερ να απεικονίζοτν σο ςτνολικό πλήθορ σων οφημάσων. Οι σιμέρ σων 2 απαπιθμησών θα ππέπει να πποςσίθενσαι και η λεισοτπγία σων λτφνιών θα εξαπσάσαι από σο άθποιςμά σοτρ (ςτνολικά οφήμασα ενσόρ σοτ γκαπάζ) Έλεγφορ πληπόσησαρ γκαπάζ 2 ειςόδων - εξόδων σοιφείο Πεπιγπαυή I0.0 Γενικόρ διακόπσηρ ON/OFF I0.1 Αιςθησήπαρ ειςόδοτ Α (NO) Ι0.2 Αιςθησήπαρ εξόδοτ Α (NO) Ι0.3 Reset (NO) I0.4 Αιςθησήπαρ ειςόδοτ Β (NO) Ι0.5 Αιςθησήπαρ εξόδοτ Β (NO) Q0.0 Ππάςινη λτφνία Q0.1 Ποπσοκαλί λτφνία Q0.2 Κόκκινη λτφνία C10 Counter σύποτ CTUD με πποππύθμιςη ςσο +50 (A) C11 Counter σύποτ CTUD με πποππύθμιςη ςσο +50 (B) Δρ Αριςτείδησ Ε. Κυπράκησ 9
Έλεγφορ πληπόσησαρ γκαπάζ 2 ειςόδων - εξόδων Έλεγφορ πληπόσησαρ γκαπάζ 2 ειςόδων - εξόδων Δρ Αριςτείδησ Ε. Κυπράκησ 10