; Ex_05_GR.txt : ΠΑΡΑΔΕΙΓΜΑ #05 (8/5/10, EDY electronics)
;--------------------------------------------------------
;
ΧΡΗΣΗ ΤΟΥ ΡΟΛΟΓΙΟΥ ΠΡΑΓΜΑΤΙΚΟΥ ΧΡΟΝΟΥ
;
ΓΙΑ ΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΝΕΡΓΕΙΩΝ
;--------------------------------------------------------
;
ΠΑΡΟΥΣΙΑΖΟΝΤΑΙ:
;
ΕΝΤΟΛΕΣ ΡΥΘΜΙΣΗΣ ΠΑΡΑΜΕΤΡΩΝ: RN, HD, IC, ICS
;
ΠΡΟΓΡΑΜΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ
;--------------------------------------------------------

;ΣΕΝΑΡΙΟ: "ΑΥΤΟΜΑΤΟ ΠΟΤΙΣΜΑ ΜΕ ΔΥΝΑΤΟΤΗΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ 24-ΩΡΟΥ ΧΡΟΝΟΥ ΚΑΙ ΔΙΑΡΚΕΙΑΣ ΠΟΤΙΣΜΑΤΟΣ"

;ΣΥΝΔΕΣΕΙΣ:Η ΕΞΟΔΟΣ 1 ΕΛΕΓΧΕΙ ΤΗΝ ΗΛΕΚΤΡΟΒΑΝΑ ΠΟΤΙΣΜΑΤΟΣ

;ΑΠΟΤΕΛΕΣΜΑ:
;
;Για να προγραμματισουμε το ποτισμα να ξεκιναει στις 20:30 και να διαρκει 30 λεπτα,
;μπορουμε να στειλουμε:
;
;
WATER SET 20:30 30
;
;Η συσκευη θα απαντησει με το μηνυμα:
;
;
WATERING 2010/05/08 10:15:36
;
TIME 20:30 DUR=30
;
;Καθε ημερα θα ξεκιναει το ποτισμα στις 20:30 και θα το σταματαει 30 λεπτα μετα.
;Για να ρωτησουμε τις τρεχουσες ρυθμισεις, πρεπει να στειλουμε το μηνυμα:
;
;
WATER SET
;
;Η συσκευη θα απαντησει με το μηνυμα:
;
;
WATERING 2010/05/08 10:17:32
;
TIME 20:30 DUR=30
;
;Για να σταματησει το αυτοματο ποτισμα, πρεπει να στειλουμε το μηνυμα:
;
;
WATER STOP
;
;Η συσκευη θα απαντησει με το μηνυμα:
;
;
WATERING 2010/05/08 10:20:15
;
STOPPED
;
;Για να ξεκινησουμε αμεσα το ποτισμα, πρεπει να στειλουμε το μηνυμα:
;
;
WATER ON
;
;Το ποτισμα θα ξεκινησει αμεσα, με διαρκεια αυτη του αυτοματου ποτισματος ή 1 ωρα.
;Η συσκευη θα απαντησει με το μηνυμα:
;
;
O.K.
;
WATER ON
;
;Για να σταματησουμε αμεσα το ποτισμα, πρεπει να στειλουμε το μηνυμα:
;
;
WATER OFF
;
;Το ποτισμα θα σταματησει αμεσα, και η συσκευη θα απαντησει με το μηνυμα:
;
;
O.K.
;
WATER OFF
;

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

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

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

HD "WATERING %D %T"__;επικεφαλιδα εξερχομενων μηνυματων: "WATERING ΗΜΕΡΟΜΗΝΙΑ ΩΡΑ"

OP 1 7200__;μεγιστη διαρκεια ενεργοποιησης εξοδου 1 = 120 λεπτα (120*60 δευτερολεπτα)

OC 1 "WATER ON" "WATER OFF"__;εντολες αμεσου ελεγχου της εξοδου 1

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

__;χρηση μεταβλητων
__;----------------
__;Ν1: χρονος εναρξης ποτισματος, 24-ωρη ωρα
__;Ν2: χρονος εναρξης ποτισματος, λεπτα
__;Ν3: χρονος ποτισματος σε λεπτα (1...120, 0 σημαινει οχι ποτισμα)
__;

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

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

__IF RMS "WATER SET"
__(__;ληψη μηνυματος που ξεκιναει με "WATER SET"
____RMN N1 N3__;συλλογη των αριθμων που ακολουθουν μεσα στο μηνυμα στις μεταβλητες Ν1, Ν2, Ν3
____;αν το μηνυμα δεν περιεχει αριθμους, οι μεταβλητες μενουν αναλλοιωτες

____SM 0 "TIME %N1:%N2 DUR=%N3"__;απαντηση στον αποστολεα
__)

__IF RMS "WATER STOP"
__(__;ληψη μηνυματος που ξεκιναει με "WATER STOP"
____N3=0____;μηδενισμος της Ν3 (διαρκεια ποτισματος)
____O1=0____;διακοπη ποτισματος
____SM 0 "STOPPED"____;απαντηση στον αποστολεα
__)

__;η Β2 χρησιμοποιειται σαν προσωρινη μεταβλητη
__;για την ληψη αποφασης ενεργοποιησης της εξοδου 1
__B2= N3__;η Β2 θα γινει 1 εαν υπαρχει (ειναι διαφορη του 0) η Ν3
__B2= N1==RTHO a B2__;η Β2 θα γινει 1 εαν η προγραμματισμενη ωρα του αυτοματου ποτισματος ισουται με αυτη του ρολογιου και εαν η Β2 ηταν ηδη 1
__B2= N2==RTMI a B2__;η Β2 θα γινει 1 εαν τα προγραμματισμενα λεπτα του αυτοματου ποτισματος ισουνται με τα λεπτα του ρολογιου και εαν η Β2 ηταν ηδη 1
__IF B2 a !O1
__(__;η Β2 ειναι 1 και η εξοδος 1 ειναι απενεργοποιημενη
____O1 = 1;ενεργοποιησε την εξοδο 1
__)

__;η Β1 θα χρησιμοποιηθει σα μνημη εναρξης χρονομετρησης ποτισματος
__IF O1 a !B1
__(__;η εξοδος 1 ειναι ενεργοποιημενη και η Β1 ειναι 0
____B1 = 1____;μνημη εναρξης χρονομετρησης ποτισματος = αληθης
____TC1 = 0__;μηδενισμος της τιμης του χρονικου 1
____TE1 = 1__;ενεργοποιηση του χρονικου 1
__)

__IF N3!=0
__(__;η Ν3 (προγραμματισμενος χρονος ποτισματος) υπαρχει
____N10 = N3 * 60____;η Ν10 τωρα περιεχει τον προγραμματισμενο χρονο ποτισματος σε δευτερολεπτα
__)
__ELSE
__(__;η Ν3 (προγραμματισμενος χρονος ποτισματοσ) ισουται με 0
____N10 = 3600;60*60 δευτερολεπτα = 1 ωρα
__)

__IF N10<120
__(__;η Ν10 ειναι μικροτερη του 120 (2 λεπτα)
____N10 = 120__;ελαχιστος επιτρεπτος χρονος ποτισματος: 2 λεπτα
__)

__
IF TC1 > N10
__(__;το χρονικο 1 εφτασε (και ξεπερασε κατα 1 δευτερολεπτο) την τιμη Ν10
____B1 = 0____;μνημη εναρξης χρονομετρησης ποτισματος = ψευδης
____O1 = 0____;διακοπη του ποτισματος
____TC1 = 0____;μηδενισμος της τιμης του χρονικου 1, για να μην ξανα-εκτελεστει αυτη η υπο-ενοτητα
____TE1 = 0____;απενεργοποιηση του χρονικου 1
__)
)

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

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