; Ex_06_GR.txt : ΠΑΡΑΔΕΙΓΜΑ #06 (12/9/10, EDY electronics)
;--------------------------------------------------------
;
ΑΥΤΟΜΑΤΙΣΜΟΣ ΚΕΝΤΡΙΚΗΣ ΠΟΡΤΑΣ Ή ΓΚΑΡΑΖΟΠΟΡΤΑΣ
;
ΜΕ ΤΗΛΕΧΕΙΡΙΣΜΟ ΜΕΣΩ ΤΗΛΕΦΩΝΙΚΩΝ ΚΛΗΣΕΩΝ
;----------------------------------------------------------
;
ΠΑΡΟΥΣΙΑΖΟΝΤΑΙ:
;
ΕΝΤΟΛΕΣ ΡΥΘΜΙΣΗΣ ΠΑΡΑΜΕΤΡΩΝ: RN, IT
;
ΕΝΤΟΛΗ ΑΜΕΣΗΣ ΕΚΤΕΛΕΣΗΣ: RS
;
ΠΡΟΓΡΑΜΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ
;--------------------------------------------------------

;ΣΕΝΑΡΙΟ: "ΑΥΤΟΜΑΤΙΣΜΟΣ ΚΕΝΤΡΙΚΗΣ ΠΟΡΤΑΣ / ΓΚΑΡΑΖΟΠΟΡΤΑΣ ΜΕ ΤΗΛΕΧΕΙΡΙΣΜΟ ΜΕΣΩ ΤΗΛΕΦΩΝΙΚΩΝ ΚΛΗΣΕΩΝ"

;ΣΥΝΔΕΣΕΙΣ:
; Η ΕΙΣΟΔΟΣ 1 ΣΥΝΔΕΕΤΑΙ ΜΕ ΚΛΕΙΔΟ-ΔΙΑΚΟΠΤΗ (Ή ΜΠΟΥΤΟΝ) ΓΙΑ ΧΕΙΡΟΚΙΝΗΤΗ ΛΕΙΤΟΥΡΓΙΑ
; Η ΕΙΣΟΔΟΣ 2 ΣΥΝΔΕΕΤΑΙ ΜΕ ΑΙΣΘΗΤΗΡΙΟ ΕΜΠΟΔΙΟΥ (N.C. contact)
; Η ΕΙΣΟΔΟΣ 3 ΣΥΝΔΕΕΤΑΙ ΜΕ ΤΕΡΜΑΤΙΚΟ ΔΙΑΚΟΠΤΗ ΑΝΟΙΧΤΗΣ ΠΟΡΤΑΣ (N.C. contact)
; Η ΕΙΣΟΔΟΣ 4 ΣΥΝΔΕΕΤΑΙ ΜΕ ΤΕΡΜΑΤΙΚΟ ΔΙΑΚΟΠΤΗ ΚΛΕΙΣΤΗΣ ΠΟΡΤΑΣ (N.C. contact)
; Η ΕΞΟΔΟΣ 1 ΕΛΕΓΧΕΙ ΤΟ ΑΝΟΙΓΜΑ ΤΗΣ ΠΟΡΤΑΣ
; Η ΕΞΟΔΟΣ 2 ΕΛΕΓΧΕΙ ΤΟ ΚΛΕΙΣΙΜΟ ΤΗΣ ΠΟΡΤΑΣ
; Η ΕΞΟΔΟΣ 3 ΕΛΕΓΧΕΙ ΤΟ ΦΑΡΟ ΠΡΟΕΙΔΟΠΟΙΗΣΗΣ
;

;ΑΠΟΤΕΛΕΣΜΑ:
;Τα άτομα που έχουν πρόσβαση μπορούν να ανοιξουν την πόρτα με αναπάντητη τηλεφωνική κλήση.
;Η πόρτα κλείνει αυτόματα μετά από προγραμματισμένο χρόνο ή μετά από χρήση του κλειδοδιακόπτη.
;Όποτε λειτουργεί ο κινητήρας, ενεργοποιείται και ο φάρος προειδοποίησης.
;Η πόρτα σταματάει να κινείται όταν ανοίξει η επαφή στην είσοδο εμποδίου,
;ή ο αντίστοιχος τερματικός διακόπτης κίνησης.
;
;Ο χειρισμός μπορεί να γίνει και χειροκίνητα απο τον κλειδοδιακόπτη.
;Με έναν πρώτο χειρισμό (παλμό) του κλειδοδιακόπτη η πόρτα ανοίγει,
;με δεύτερο σταματάει, και με τρίτο χειρισμό κλείνει.
;Μετά απο χειροκίνητο άνοιγμα η πόρτα ΔΕΝ κλείνει αυτόματα μετά από τον χρόνο παραμονής.
;
;Για να προγραμματιστούν οι χρόνοι ανοίγματος/κλεισίματος και παραμονής
;της πόρτας, πρέπει να αποσταλεί το μήνυμα:
;
;
DOOR TIMES 30, 120
;
;Με το παραπάνω μήνυμα ο χρόνος ανοίγματος/κλεισίματος ρυθμίζεται στα 30 δευτερόλεπτα,
;και ο χρόνος που η πόρτα παραμένει ανοικτή στα 2 λεπτά (120 δευτερόλεπτα).
;Η συσκευή θα απαντήσει με μήνυμα επιβεβαίωσης:
;
;
DOOR TIMES SET TO:
;
30 sec MOVE
;
120 sec WAIT
;
;Για να ρωτησουμε τις τρεχουσες ρυθμισεις, πρεπει να στειλουμε το μηνυμα:
;
;
DOOR TIMES
;
;Η συσκευή θα απαντήσει με το μήνυμα επιβεβαίωσης.
;

;--------------------------------------------------------
;ΥΛΟΠΟΙΗΣΗ

; ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΛΕΙΤΟΥΡΓΙΩΝ
;-----------------------------

RS;Αρχικοποιηση (συνισταται οταν χρησιμοποιουνται λειτουργιες αποθηκευσης μεταβλητων)

RN 6911111111 6922222222 6933333333; 1ος, 2ος, 3ος παραληπτης

IT 1 3;χρόνος αντίδρασης κλειδοδιακόπτη: 0.3 δευτερόλεπτο
IT 2 0;χρόνος αντίδρασης αισθητήριου εμποδίων: 0.02 δευτερόλεπτο
IT 3 0;χρόνος αντίδρασης τερματικού διακόπτη ανοίγματος: 0.02 δευτερόλεπτο
IT 4 0;χρόνος αντίδρασης τερματικού διακόπτη κλεισίματος: 0.02 δευτερόλεπτο

;ΠΡΟΓΡΑΜΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ
;-----------------------

__;χρηση μεταβλητων
__;----------------
__;Ν1: χρόνος ανοίγματος/κλεισίματος σε δευτερόλεπτα
__;Ν2: χρόνος αναμονής (στο αυτόματο κλείσιμο) σε δευτερόλεπτα
__;N10: επιθυμητή λειτουργία αυτοματισμού: 0=ηρεμία, 1=άνοιγμα, 2=κλείσιμο..
__;N11: τρέχουσα λειτουργία αυτοματισμού: 0=ηρεμία, 1=άνοιγμα, 2=κλείσιμο..
__;B10: σημαία αλλαγής κατάστασης
__;B11: όταν γίνει 1 εκτελείται το αυτόματο κλείσιμο

P(__;ΠΡΟΛΟΓΟΣ
__NVV N1 N2 8 1;οι μεταβλητες Ν1 εως Ν2 θα αποθηκευονται το πολυ 4 δευτερολεπτα μετα απο αλλαγη τιμης, με αντοχη 100.000 εγγραφές

__N12=1;αρχική τιμή βοηθητικής μεταβλητής
__TE1=1;ενεργοποίηση χρονικού 1
)

M(__;ΚΕΝΤΡΙΚΗ ΕΝΟΤΗΤΑ

__;έλεγχος για εισερχόμενο μήνυμα ρύθμισης/ερώτησης
__IF RMS "DOOR TIMES"
__(__;ληψη μηνυματος που ξεκιναει με "DOOR TIMES"
____RMN N1 N2;συλλογη των αριθμων που ακολουθουν μεσα στο μηνυμα σε Ν1 και Ν2
____;αν το μηνυμα δεν περιεχει αριθμους, οι μεταβλητες μενουν αναλλοιωτες

____;απαντηση στον αποστολεα
____SM 0 "DOOR TIMES SET TO:%n%N1 sec MOVE%n%N2 sec WAIT"
__)
__IF N1<5__( N1=5 )__;προφύλαξη: ο ελάχιστος χρόνος κίνησης ειναι 5 δευτερόλεπτα
__IF N2<10__( N2=10 )__;προφύλαξη: ο ελάχιστος χρόνος αναμονής ειναι 10 δευτερόλεπτα

__B10=0__;μηδενισμός σημαίας αλλαγής κατάστασης

__;έλεγχος για τηλεχειρισμό ανοίγματος πόρτας
__IF TCR 9
__(__;Εισερχόμενη τηλ. κλήση από κάποιον στη λίστα
____N10=1__;αίτηση για άνοιγμα πόρτας
____B10=1__;ενεργοποίηση σημαίας αλλαγής κατάστασης
____B11=1__;ενεργοποίηση σημαίας αυτόματου κλεισίματος
__)

__;έλεγχος για χειρισμό κλειδοδιακόπτη
__B2=0__;προσωρινή χρήση, για την ανίχνευση χειρισμού
__IF !I1__;εαν ΟΧΙ Είσοδος 1 ...
__(
____B1=0__;μηδενισμός βοηθητικής μνήμης B10 (χρησιμοποιείται στον έλεγχο της I1)
__)
__ELIF I1 a !B1__;αλλιως, εαν Είσοδος 1 ΚΑΙ ΟΧΙ Β1...
__(
____B1=1__;για να εκτελεστεί η υπο-ενότητα μόνο 1 φορά σε κάθε παλμό από I1
____B2=1__;χειρισμός = αληθής
____B10=1__;ενεργοποίηση σημαίας αλλαγής κατάστασης αυτοματισμού
____B11=0__;ακύρωση αυτόματου κλεισίματος
__)
____;αλλαγή κατάστασης βάσει της προηγούμενης...
__IF N11==0 a B2__( N10=N12 )
__ELIF N11 a B2__( N10=0 )

__IF N10==1 a B2__( N12=2 )
__ELIF N10==2 a B2__( N12=1 )

__;αυτοματισμός κίνησης πόρτας

__IF N10==0 a B10
__(__;επιθυμητή κατάσταση: ηρεμία
____TC1=0__;μηδενισμός του χρονικού 1
____N11=0__;τρέχουσα κατάσταση: ηρεμία
__)

__;άνοιγμα της πόρτας
__B2= N10==1______;η B2 γίνεται 1 εάν η N10 ισούται με 1
__B2= N11==0 a B2__;η B2 γίνεται 1 εάν η N11 ισούται με 0 ΚΑΙ η B2 ήταν ήδη 1
__;
__IF B2 a B10
__(__;αιτηση για άνοιγμα πόρτας ΚΑΙ πόρτα σε ηρεμία
____TC1=0__;μηδενισμός του χρονικού 1
____N11=1__;τρέχουσα κατάσταση: άνοιγμα πόρτας
__)

__;κλείσιμο της πόρτας
__B2= N10==2______;η B2 γίνεται 1 εάν η N10 ισούται με 2
__B2= N11==0 a B2__;η B2 γίνεται 1 εάν η N11 ισούται με 0 ΚΑΙ η B2 ήταν ήδη 1
__;
__IF B2 a B10
__(__;αιτηση για κλείσιμο πόρτας ΚΑΙ πόρτα σε ηρεμία
____TC1=0__;μηδενισμός του χρονικού 1
____N11=2__;τρέχουσα κατάσταση: κλείσιμο πόρτας
__)

__;αυτόματο κλείσιμο μετά από αναμονή
__B2= N11==0 a B11__;η B2 γίνεται 1 εάν N11==0 (τρέχουσα κατάσταση:ηρεμία) και B11==1 (αυτόματο κλείσιμο)
__B2= TC1>N2 a B2__;η B2 γίνεται 1 εάν το χρονικό 1 είναι μεγαλύτερο της N2 (χρόνος αναμονής) ΚΑΙ η B2 ήταν ήδη 1
__IF B2
__(
____B11=0__;μηδενισμός σημαίας αυτοματου κλεισίματος
____TC1=0__;μηδενισμός του χρονικού 1
____N11=2__;τρέχουσα κατάσταση: κλείσιμο πόρτας
__)

__;έλεγχος για αλλαγή κατεύθυνσης της κίνησης
__B2= N10==1______;η B2 γίνεται 1 εάν η N10 ισούται με 1
__B2= N11==2 a B2__;η B2 γίνεται 1 εάν η N11 ισούται με 2 ΚΑΙ η B2 ήταν ήδη 1
__;
__B3= N10==2______;η B3 γίνεται 1 εάν η N10 ισούται με 2
__B3= N11==1 a B3__;η B3 γίνεται 1 εάν η N11 ισούται με 1 ΚΑΙ η B3 ήταν ήδη 1
__;
__IF B2 o B3 a B10
__(__;αιτηση για αλλαγή κατεύθυνσης της πόρτας
____N11=0__;σταμάτημα της πόρτας
____TC1=0__;μηδενισμός του χρονικού 1
__)

__;χρόνος κίνησης της πόρτας
__IF TC1>N1 a N11
__(__;η πόρτα κινείται ΚΑΙ ο χρόνος κίνησης έχει παρέλθει
____N11=0__;σταμάτημα της πόρτας
____TC1=0__;μηδενισμός του χρονικού 1
__)

__;τερματικοί διακόπτες
__B2= N11==1 a !I3__;η B2 γίνεται 1 εάν η πόρτα ανοίγει και έχει ανοίξει ο αντίστοιχος τερματικός διακόπτης
__B3= N11==2 a !I4__;η B3 γίνεται 1 εάν η πόρτα κλείνει και έχει ανοίξει ο αντίστοιχος τερματικός διακόπτης
__B4= N11 a !I2____;η B4 γίνεται 1 εάν η πόρτα κινείται και έχει ανοίξει ο τερματικός διακόπτης εμποδίου
__;
__IF B2 o B3 o B4
__(__;η πόρτα κινείται και ο αντίστοιχος τερματικός Ή ο τερματικός εμποδίου έχει ανοίξει
____N11=0__;σταμάτημα της πόρτας
____TC1=0__;μηδενισμός του χρονικού 1
__)
__IF B4
__(__;ο τερματικός εμποδίου έχει ανοίξει
____B11=0__;ακύρωση αυτόματου κλεισίματος
__)

__;έλεγχος εξόδων
__IF N11==1
__(
____O1=1__;ενεργοποίηση του ανοίγματος πόρτας
__)
__ELIF N11==2
__(
____O2=1__;ενεργοποίηση του κλεισίματος πόρτας
__)
__ELSE__;N11==0
__(
____O1=0 O2=0__;σταμάτημα της κίνησης πόρτας
__)

__O3= N11 o B11__;ο φάρος ανάβει όταν η πόρτα κινείται Ή είναι ενεργό το αυτόματο κλείσιμο
)

APR 1__;Αμεση εναρξη εκτελεσης του προγραμματος αυτοματισμου

;Τελος προγραμματος
;