Σημείωση από τον Συντάκτη:
Αυτό το άρθρο είναι το Μέρος 2 μιας σειράς. Το Μέρος 1 μπορείτε να το βρείτε εδώ.
Ακολουθεί ένας σύντομος πίνακας περιεχομένων για όλα τα άρθρα:
- Μέρος 1: Εισαγωγή
- Μέρος 2: Χρονοδιακόπτες
- Μέρος 3: Αυτόματο Σύστημα Αναπλήρωσης Νερού (ATK)
- Μέρος 4: Παρακολούθηση Κατανάλωσης Ρεύματος
- Μέρος 5: Εικονικές Έξοδοι
- Μέρος 6: Συναγερμοί
- Μέρος 7: Κύκλοι Ταΐσματος
- Μέρος 8: Σεληνιακό Πρόγραμμα και Ρυθμίσεις Φωτισμού (Συμπέρασμα)
Όλα τα άρθρα της σειράς, γραμμένα από τον ίδιο συγγραφέα, προέρχονται αρχικά από παρουσιάσεις που έγιναν σε ένα τοπικό σύλλογο ενυδρείων σχετικά με τον προγραμματισμό του ελεγκτή Neptune Apex. Το άρθρο αναδημοσιεύεται με άδεια του συγγραφέα.
Δεδομένου ότι αυτό το θέμα θα ενδιαφέρει πολύ κάποιους αναγνώστες, αλλά καθόλου όσους δεν έχουν αυτοματοποιήσει τα συστήματά τους, το R2R θα δημοσιεύει αυτά τα άρθρα προγραμματισμού κάθε Παρασκευή μέχρι να ολοκληρωθεί η σειρά.
Όλες οι φωτογραφίες, εικόνες και διαγράμματα που περιλαμβάνονται σε αυτό το άρθρο προέρχονται από τον συγγραφέα, @SuncrestReef ©2019, Με Επιφύλαξη Παντός Δικαιώματος.
Χρονοδιακόπτες: OSC, If Time, DOW, Defer, When και Min Time
Ένα από τα πιο συνηθισμένα καθήκοντα στον κόσμο των ενυδρείων είναι να ενεργοποιείται και να απενεργοποιείται μια συσκευή σε συγκεκριμένο πρόγραμμα. Αυτό μπορεί να βασίζεται στην ώρα της ημέρας, σε έναν επαναλαμβανόμενο κύκλο λεπτών ή ωρών ή σε συγκεκριμένες ημέρες της εβδομάδας.
Ο Apex σας προσφέρει πολλές επιλογές για τον προγραμματισμό των εξόδων με βάση τους χρονοδιακόπτες, κάθε μία με ξεχωριστό σκοπό:
- OSC: Επαναλαμβανόμενα διαστήματα ενεργοποίησης/απενεργοποίησης, όπου καθορίζετε τα λεπτά & δευτερόλεπτα που θα είναι ενεργοποιημένο και τα λεπτά & δευτερόλεπτα που θα είναι απενεργοποιημένο.
- If Time: Ενεργοποίηση ή απενεργοποίηση μεταξύ συγκεκριμένων ωρών της ημέρας, με ακρίβεια λεπτού.
- DOW: Ενεργοποίηση ή απενεργοποίηση βάσει της ημέρας της εβδομάδας.
- Defer: Καθυστέρηση σε λεπτά και δευτερόλεπτα πριν από την ενεργοποίηση ή απενεργοποίηση.
- When: Δικλείδα ασφαλείας που απενεργοποιεί μια έξοδο αν είναι ενεργοποιημένη ή απενεργοποιημένη για περισσότερο χρόνο από το καθορισμένο όριο. Απαιτεί χειροκίνητη παρέμβαση για να επανέλθει ο προγραμματισμός.
- Min Time: Καθυστέρηση σε λεπτά και δευτερόλεπτα πριν επιτραπεί η ενεργοποίηση ή απενεργοποίηση της εξόδου, ανεξάρτητα από τις υπόλοιπες συνθήκες προγραμματισμού.
Μπορείτε να συνδυάσετε κάποιους από αυτούς τους χρονοδιακόπτες για να πετύχετε συγκεκριμένες απαιτήσεις, όπως η ενεργοποίηση μιας αντλίας κάθε μέρα από τις 12:00 έως τις 13:00, εκτός από τα Σαββατοκύριακα.
Ας δούμε παραδείγματα για τον καθένα από αυτούς τους χρονοδιακόπτες:
OSC
Η εντολή OSC (Oscillation – Ταλάντωση) είναι ιδανική για την ενεργοποίηση και απενεργοποίηση συσκευών σε επαναλαμβανόμενο κύκλο.
Συντακτικό:
OSC MMM:SS/MMM:SS/MMM:SS Then [ON/OFF/Profile]
Όπου τα τρία χρονικά διαστήματα σημαίνουν:
- Καθυστέρηση πριν από την πρώτη εκτέλεση
- Διάρκεια ενεργοποίησης
- Καθυστέρηση πριν από την επόμενη εκτέλεση
Η μέγιστη τιμή για κάθε χρονικό διάστημα είναι 999:99 (16 ώρες, 39 λεπτά, 59 δευτερόλεπτα).
Παραδείγματα:
- OSC 000:00/005:00/005:00 Then ON
- Ενεργοποιεί την έξοδο για 5 λεπτά.
- Στη συνέχεια την απενεργοποιεί για 5 λεπτά.
- Επαναλαμβάνει αυτόν τον κύκλο επ’ αόριστον.
- OSC 000:00/007:00/002:00 Then ON
- Ενεργοποιεί την έξοδο για 7 λεπτά.
- Στη συνέχεια την απενεργοποιεί για 2 λεπτά.
- Επαναλαμβάνει αυτόν τον κύκλο επ’ αόριστον.
- OSC 007:00/002:00/000:00 Then ON
- Καθυστερεί την πρώτη ενεργοποίηση κατά 7 λεπτά.
- Έπειτα, ενεργοποιεί την έξοδο για 2 λεπτά.
- Μετά την απενεργοποιεί αμέσως (0 λεπτά απενεργοποίησης).
- Επαναλαμβάνει τον κύκλο 7 λεπτών απενεργοποίησης και 2 λεπτών ενεργοποίησης.
Ένας λόγος για να χρησιμοποιήσετε την αρχική καθυστέρηση είναι για να εναλλάξετε τη λειτουργία δύο διαφορετικών εξόδων, ώστε να μην λειτουργούν ταυτόχρονα (π.χ. αντλίες δοσολογίας).
Ένα ενδιαφέρον χαρακτηριστικό της αρχικής καθυστέρησης είναι ότι υπολογίζεται από τα μεσάνυχτα της 1ης Ιανουαρίου 1996.
Εάν το άθροισμα των τιμών του OSC διαιρείται ακριβώς με 1440 (λεπτά σε 24 ώρες), η έξοδός σας θα ενεργοποιείται πάντα στις ίδιες ώρες κάθε μέρα. Αν όχι, οι χρόνοι ενεργοποίησης θα αλλάζουν ελαφρώς κάθε μέρα.
Προσωπικό παράδειγμα χρήσης του OSC:
Χρησιμοποιώ την εντολή OSC για να ενεργοποιώ το Swabbie, μια αυτόματη συσκευή καθαρισμού λαιμού σκίμμερ, κάθε έξι ώρες. Η συσκευή αυτή περιστρέφει αργά μια λεπίδα καθαρισμού, οπότε πρέπει να λειτουργεί για 2 λεπτά ώστε να καθαρίσει σωστά.
Πρόγραμμα εξόδου:
Fallback OFF
OSC 000:00/002:00/358:00 Then ON
If Output EB_3_Skimmer = OFF Then OFF
Αυτό το πρόγραμμα:
- Ενεργοποιεί το Swabbie κάθε 6 ώρες για 2 λεπτά.
- Εάν το σκίμμερ είναι κλειστό, το Swabbie δεν θα λειτουργήσει.
- Το πρόγραμμα εκτελείται στις 00:00, 06:00, 12:00 και 18:00 καθημερινά.
If Time
Η εντολή If Time χρησιμοποιείται για να ενεργοποιήσει ή να απενεργοποιήσει μια έξοδο εντός ενός συγκεκριμένου χρονικού διαστήματος.
Συντακτικό:
If Time HH:MM to HH:MM Then [ON/OFF/Profile]
Η εντολή If Time είναι πιο απλή από την OSC, αλλά έχει κάποιες σημαντικές λεπτομέρειες που πρέπει να γνωρίζετε:
- Μπορείτε να καθορίσετε μόνο ώρες και λεπτά (σε 24ωρη μορφή), ενώ η OSC υποστηρίζει λεπτά και δευτερόλεπτα.
- Το If Time περιλαμβάνει τόσο την ώρα έναρξης όσο και την ώρα λήξης (inclusive).
Παράδειγμα:
Set OFF
If Time 10:00 to 10:01 Then ON
Αυτό θα ενεργοποιήσει την έξοδο στις 10:00 και θα την απενεργοποιήσει στις 10:02.
Σημαντική Παρατήρηση:
Το μικρότερο χρονικό διάστημα που μπορείτε να χρησιμοποιήσετε με If Time είναι 2 λεπτά. Δεν μπορείτε να ορίσετε 10:00 έως 10:00, καθώς αυτή η εντολή θεωρείται άκυρη.
Αν θέλετε να ενεργοποιήσετε μια έξοδο για λιγότερο από 2 λεπτά, πρέπει να χρησιμοποιήσετε την εντολή Defer:
Set OFF
If Time 10:00 to 10:01 Then ON
Defer 001:00 Then ON
Αυτό σημαίνει ότι η έξοδος θα περιμένει 1 λεπτό πριν ενεργοποιηθεί και στη συνέχεια θα απενεργοποιηθεί στις 10:02, δημιουργώντας έναν χρονοδιακόπτη 1 λεπτού.
Ένα ακόμα tip για το If Time: Μπορεί να εκτείνεται πέρα από τα μεσάνυχτα.
Για παράδειγμα, αν θέλετε να ανάβει ο φωτισμός του φυτοφίλτρου (refugium) τη νύχτα, αντίθετα από το κύριο ενυδρείο:
Set OFF
If Time 18:00 to 08:00 Then ON
Αυτό το πρόγραμμα θα ενεργοποιήσει τα φώτα του φυτοφίλτρου στις 18:00 και θα τα απενεργοποιήσει στις 08:00 την επόμενη μέρα.
DOW (Day of Week – Ημέρα της Εβδομάδας)
Η εντολή DOW χρησιμοποιείται για να ενεργοποιήσει ή να απενεργοποιήσει μια έξοδο με βάση την ημέρα της εβδομάδας.
Συντακτικό:
If DOW SMTWTFS Then [ON/OFF/Profile]
Κάθε γράμμα αντιπροσωπεύει μια ημέρα της εβδομάδας:
- S (Sunday – Κυριακή)
- M (Monday – Δευτέρα)
- T (Tuesday – Τρίτη)
- W (Wednesday – Τετάρτη)
- T (Thursday – Πέμπτη)
- F (Friday – Παρασκευή)
- S (Saturday – Σάββατο)
Αντικαθιστώντας ένα γράμμα με παύλα (-), απενεργοποιείτε το πρόγραμμα για εκείνη την ημέρα.
Παράδειγμα:
Set OFF
If DOW SM-W-FS Then ON
Αυτό θα ενεργοποιήσει την έξοδο κάθε μέρα εκτός από Τρίτη και Πέμπτη.
Συνδυασμός DOW και If Time
Μπορείτε να συνδυάσετε τις εντολές DOW και If Time για να ενεργοποιείτε μια αντλία κάθε μέρα εκτός από το Σάββατο:
Set OFF
If Time 12:00 to 12:59 Then ON
If DOW ------S Then OFF
Αυτό θα ενεργοποιεί την αντλία από τις 12:00 έως τις 12:59, εκτός από το Σάββατο.
Defer (Καθυστέρηση Εκτέλεσης Εντολής)
Η εντολή Defer καθυστερεί την ενεργοποίηση ή απενεργοποίηση μιας εξόδου για συγκεκριμένο χρονικό διάστημα.
Συντακτικό:
Defer MMM:SS Then [ON/OFF]
Αυτή η εντολή είναι ιδιαίτερα χρήσιμη σε συνδυασμό με αισθητήρες, ώστε να μην ενεργοποιείται ή απενεργοποιείται η έξοδος λόγω παροδικών αλλαγών.
Παράδειγμα:
Έχετε έναν αισθητήρα στάθμης νερού (float switch) στο σαμπ και θέλετε να ενεργοποιείται η αντλία ΑΤΟ (Αυτόματη Αναπλήρωση) όταν η στάθμη είναι χαμηλή. Όμως, λόγω των κυματισμών, ο αισθητήρας μπορεί να ενεργοποιείται και να απενεργοποιείται πολύ συχνά.
Set OFF
If Float1 Open Then ON
Defer 000:10 Then ON
Πώς λειτουργεί:
- Ο αισθητήρας Float1 πρέπει να παραμείνει ανοιχτός (Open) για 10 δευτερόλεπτα προτού η αντλία ενεργοποιηθεί.
- Αν ο αισθητήρας αλλάξει σε κλειστό (Closed) πριν περάσουν τα 10 δευτερόλεπτα, η αντίστροφη μέτρηση ξεκινάει από την αρχή.
Αυτό εμποδίζει την αντλία ΑΤΟ από το να ενεργοποιείται λόγω μικρών κυματισμών στο σαμπ.
When (Διακοπή εξόδου λόγω υπέρβασης ορίου χρόνου)
Η εντολή When απενεργοποιεί μια έξοδο εάν παραμείνει ενεργή για περισσότερο από τον προκαθορισμένο χρόνο.
Συντακτικό:
When ON > MMM:SS Then OFF
Αυτή η εντολή είναι ιδανική για προστασία από δυσλειτουργίες, όπως όταν μια ΑΤΟ αντλία μένει ενεργή για υπερβολικά πολύ χρόνο, λόγω κολλημένου αισθητήρα.
Παράδειγμα:
Set OFF
If Float1 Open Then ON
Defer 000:10 Then ON
When ON > 003:00 Then OFF
- Η αντλία ΑΤΟ ενεργοποιείται μόνο αν ο αισθητήρας Float1 είναι ανοιχτός για τουλάχιστον 10 δευτερόλεπτα.
- Αν η αντλία παραμείνει ενεργή για περισσότερο από 3 λεπτά, θα απενεργοποιηθεί αυτόματα.
Μετά από αυτό, η έξοδος θα πρέπει να ενεργοποιηθεί χειροκίνητα από το χρήστη.
Min Time (Ελάχιστος Χρόνος Λειτουργίας μιας Εξόδου)
Η εντολή Min Time διασφαλίζει ότι μια έξοδος θα παραμείνει σε συγκεκριμένη κατάσταση (ON ή OFF) για ελάχιστο χρονικό διάστημα, ανεξάρτητα από τις άλλες συνθήκες.
Συντακτικό:
Min Time MMM:SS Then [ON/OFF]
Αυτό είναι ιδιαίτερα χρήσιμο για ΑΤΟ αντλίες, ώστε να μην ενεργοποιούνται πολύ συχνά.
Παράδειγμα:
Set OFF
If Float1 Open Then ON
Defer 000:10 Then ON
When ON > 003:00 Then OFF
Min Time 060:00 Then OFF
- Η αντλία δεν θα ενεργοποιηθεί ξανά για τουλάχιστον 60 λεπτά, ακόμα κι αν ο αισθητήρας ανιχνεύσει χαμηλή στάθμη νερού.
Συμπέρασμα
Αυτός ο οδηγός καλύπτει τις βασικές λειτουργίες χρονοδιακόπτη στον Neptune Apex Controller. Στο επόμενο άρθρο, θα συζητήσουμε τον προγραμματισμό και την αντιμετώπιση προβλημάτων του ATK (Αυτόματη Αναπλήρωση Νερού).
Μείνετε συντονισμένοι! 😊

7 thoughts on “Neptune Apex: Μαθήματα Προγραμματισμού, Μέρος 2: Χρονοδιακόπτες”