Καλωσήρθατε στο Eleclub.gr

Το Club Ηλεκτρονικής ΗΜΜΥ τερματίζει τις συναντήσεις του. Ευχαριστούμε για τις όμορφες στιγμές που μοιραστήκατε μαζί μας.

Το παρόν φόρουμ θα συνεχίσει να λειτουργεί αυτόνομα. Οι διαχειριστές πλέον δε θα παρακολουθούν τακτικά τα θέματα και δεν εγγυώνται απαντήσεις.

Autonomous Automatic Watering

Διάφορα projects με τα οποία ασχοληθήκαμε, ασχολούμαστε ή σκοπεύουμε να ασχοληθούμε εκτός του Club.

#1 Autonomous Automatic Watering

Postby Βύρωνας » Sat Mar 17, 2012 7:52 am

Πρόβλημα: Τα φυτά στο μπαλκόνι ξεραίνονται γιατί ποτέ δε θυμάμαι να τα ποτίζω.
Λύση: Μηχανισμός αυτόματου ποτίσματος.

  • Υποδομή σωλήνων
    Ξεκινώντας, θεωρώ δεδομένο ότι θα έχω ένα σύστημα σωλήνων που θα πηγαίνουν από τη βρύση στα φυτά.
    That's the easy part: Σε φυτώρια πουλάνε όλα τα parts που χρειάζεται κανείς. Πάω λοιπόν κι εγώ και παίρνω σωλήνες, γωνίες, ακροφύσια, μετατροπείς κλπ από δω: http://www.antemisaris.gr/productList.aspx?iid=20
    Σύνολο πρέπει να βγήκαν κάτω από 15 ευρώ (περίπου 10 γλάστρες με μέγιστη απόσταση καμιά 10αριά μέτρα από τη βρύση). Οκ, οπότε έχουμε την υποδομή έτοιμη, που σημαίνει ότι ανοίγουμε τη βρύση και ποτίζονται όλες οι γλάστρες ταυτόχρονα.
  • Ηλεκτροβάνα
    Μετά που έσπασα το κεφάλι μου να βρω ένα τρόπο να ελέγχω μηχανικά τη βάνα της βρύσης, κατέληξα στο ότι η ροπή που χρειάζεται θα απαιτούσε έναν απαράδεκτα μεγάλο κινητήρα, ή actuator ακόμα χειρότερα. Τότε σκέφτηκα ότι δε μπορεί, πρέπει να υπάρχει κάποιο έτοιμο εξάρτημα ελέγχου της ροής του νερού σε μια βρύση. Το μαγικό εξάρτημα λέγεται ηλεκτροβάνα και η αρχή λειτουργίας του βασίζεται στον ηλεκτρομαγνητισμό. Περισσότερα θα διαβάσετε εδώ http://en.wikipedia.org/wiki/Solenoid_valve .
  • Προγραμματιστής
    Τελευταίο αλλά σημαντικότερο εξάρτημα είναι ο προγραμματιστής. Αυτός θα αποφασίσει πότε και για πόση ώρα πρέπει να ποτιστούν τα φυτά. Προφανώς υπάρχουν έτοιμες λύσεις, αλλά μου φάνηκαν υπερβολικά ακριβές (πχ ο φτηνότερος στο site του φυτωρίου που πήρα και τους σωλήνες κοστίζει 42€ - εννοείται ότι θα υπάρχουν και φτηνότεροι, αλλά ήθελα αξιόπιστη λύση). Ένα τελευταίο θέμα που ήθελα να λύσω είναι αυτό της αυτονομίας, δηλαδή θέλω ο προγραμματιστής μου να μην χρειάζεται αλλαγή μπαταρίας για πολύ πολύ καιρό (της τάξεως του 1+ έτους).

Όπως καταλαβαίνετε, δε γουστάρω να πρέπει να θυμάμαι να ποτίζω τα φυτά. ΌΜΩΣ από τότε που σκέφτηκα να κάνω αυτό το project, έχω ποτίσει τα φυτά άπειρες φορές, ακριβώς γιατί δεν επέλεξα να πάρω έτοιμο προγραμματιστή και δεν έχω τελειώσει ακόμα τον δικό μου.
Spoiler :
Αυτό για να βλέπετε και τα παράπλευρα οφέλη της ενασχόλησης με ηλεκτρονική/μικροϋπολογιστές. :badgrin:


Ξεκινώντας, έπρεπε να επιλέξω έναν μικροελεγκτή που θα αποτελέσει την καρδιά του προγραμματιστή μου. Η εύκολη λύση θα ήταν ένας Arduino, ακριβώς γιατί προγραμματίζεται πολύ εύκολα, έχει έτοιμες διεπαφές επικοινωνίας, έχει pinouts και είναι εύκολος στο debugging κλπ. Όμως στην τελική μου υλοποίηση δε θα τον αξιοποιούσα πλήρως, και θα ήταν overkill να χαραμίσω έναν arduino γι'αυτή τη δουλειά μόνο. Επίσης, δεν είναι και ο,τι πιο μικρό από άποψη μεγέθους και τέλος, σε σχέση με low power τσιπάκια, μπορεί να χαρακτηριστεί αδηφάγος όσον αφορά την κατανάλωση ενέργειας.
Μιας λοιπόν κι εκείνο τον καιρό είχα ασχοληθεί λίγο με PIC (θα ανεβάσω και αυτά τα project κάποια στιγμή), αποφάσισα να του δώσω μια ευκαιρία.

Αρχικά ξεκίνησα με έναν PIC16F628A που είχα πρόχειρο, τον οποίο προγραμμάτισα σε assembly γιατί δεν κατάφερα να βρω πώς θα τον προγραμματίσω σε C. Έφτιαξα πρόχειρα ένα συστηματάκι που δούλευε, αλλά δεν ήταν αξιόπιστο (όσοι δε βαριέστε, μπορείτε να διαβάσετε την περιγραφή του στο spoiler).

Spoiler :
Το συστηματάκι αυτό λοιπόν είχε ως κύριο γνώμονα την εξοικονόμηση ενέργειας. Αυτό το πετυχαίνουμε βάζοντας τον μικροεπεξεργαστή μας σε sleep mode, όπου το ρολόι του σταματάει να δουλεύει και δεν εκτελεί καμία λειτουργία μέχρι κάποιος να τον ξυπνήσει με κάποιο εξωτερικό σήμα. Το εξωτερικό σήμα τώρα θα έπρεπε με κάποιο τρόπο να έρχεται 1 φορά κάθε μέρα (όχι απαραίτητα 1 φορά, όπως θα φανεί παρακάτω). Το θέμα είναι λοιπόν πώς μπορείς να ξυπνάς τον μικροεπεξεργαστή 1 φορά κάθε μέρα, χωρίς να τρως ενέργεια?

Η λύση είναι ένα φωτοβολταϊκό panel και η αρχή λειτουργίας του συστήματος είναι τόσο απλή: Όσο δεν υπάρχει ήλιος, το φωτοβολταϊκό βγάζει χαμηλή ή μηδενική τάση. Όταν σηκωθεί ο ήλιος το πρωί, βγάζει έως και 5 6 volt. Και όταν ρωτήσετε πώς θα δουλέψει αυτό, αφού πρακτικά όλη μέρα το φωτοβολταϊκό θα ξυπνάει τον μικροεπεξεργαστή στέλνοντάς του το σήμα των 5V, θα σας εξηγήσω ότι ο μικροεπεξεργαστής (τουλάχιστον οι PIC που δούλεψα) έχουν και interrupt-on-change mode, δηλαδή ξυπνάνε όταν η κατάσταση σε κάποιο συγκεκριμένο pin τους αλλάξει (δηλαδή πάει από high σε low ή το αντίστροφο) και όχι λόγω επιπέδου τάσης.

Με βάση τα παραπάνω, ο μικροεπεξεργαστής θα ξυπνούσε 2 φορές κάθε μέρα: 1 το πρωί και 1 το βράδυ. Μετρώντας την είσοδό που τον ξύπνησε θα μπορούσε να δει αν είναι πρωί ή βράδυ, και να πράξει ανάλογα.

Τα προβλήματα δεν άργησαν να εμφανιστούν, και συνοψίζονταν στο εξής 1: ΣΚΙΑ. Αν για οποιονδήποτε λόγο κατά τη διάρκεια της μέρας δεν έφτανε αρκετό φως στην επιφάνεια του panel υπήρχε πρόβλημα. Η κατάσταση καλυτέρευσε με πατέντες όπως καθυστέρηση και πολλαπλός επανέλεγχος της τάσης όταν ο μικροελεγκτής ξυπνήσει, ώστε να είναι πιο robust η μέτρηση, αλλά παρέμεινε αναξιόπιστη και μη ακριβής ως προς το χρόνο. Shit happens. Κι επίσης ήταν τόσο πρόχειρα κατασκευασμένο που ο Γιώργος νομίζω θα έχει πάντα εφιάλτες με την εικόνα που του είχα δείξει.


Μετά που αποφάσισα να κάνω σοβαρή δουλειά (πριν κάτι μήνες) βρήκα εύκολα έναν PIC16F88 (στο Φανό), που γενικά θεωρείται ευρέως χρησιμοποιούμενος PIC με αρκετές δυνατότητες, και μάλιστα έχει μέγιστη κατανάλωση σε ρεύμα ίση με 1μΑ, όταν βρίσκεται σε sleep mode. Όταν όμως δεν βρίσκεται, τρώει κι αυτός κάμποσο ρεύμα, οπότε δεν θα μπορούσα να τον χρησιμοποιήσω για να μετρήσω πραγματικό χρόνο (και να ξέρω πότε έχουν περάσει 24 ώρες).

Έτσι βρήκα τη λύση του RTC (Real Time Clock). Αυτά είναι τσιπάκια που η δουλειά τους είναι να μετράνε χρόνο σε πραγματική κλίμακα, έχοντας πολύ μικρή κατανάλωση ρεύματος. Το DS3234 που πήρα εγώ, είχε και 2 προγραμματιζόμενα alarms και μου έκανε τη ζωή πολύ εύκολη (δηλαδή δε χρειαζόταν να ξυπνάω τον PIC ανά τακτά χρονικά διαστήματα για να ελέγχω την ώρα).

Το σύστημα ολοκληρώνεται με 1 on/off switch, 3 pushbuttons, ένα 7 segment display μαζί με τον driver του, ένα led, 2 τρανζίστορ, 1 2 αντιστάσεις κι ένα ρελέ για να ανοιγοκλείνει την ηλεκτροβάνα που είναι στα 9V. Από τροφοδοσία έχει μια μπαταρία 3.7V που ανεβαίνει στα 5 μέσω ενός step up converter (το πακέτο έχει και φορτιστή πάνω για να φορτίζει από solar panel), ένα solar panel για τη φόρτιση της μπαταρίας (που θεωρητικά δε θα την αφήνει να αποφορτιστεί σημαντικά, και άρα θα χρειάζεται αλλαγή όταν πλέον έχει ψοφήσει λόγω ηλικίας) και μια 9V μπαταρία για την ηλεκτροβάνα (πιθανώς να αντικατασταθεί από έναν DC/DC boost converter που θα βγάζει 9V, έτσι ώστε να αποφεύγεται η αλλαγή της 9V κάθε 3 και λίγο).

Περισσότερες λεπτομέρειες και υλικό (φωτογραφίες, κώδικας) θα ποστάρω αργότερα, καθώς είχε αρκετή διαδικασία η υλοποίησή του.
Βύρωνας
Moderator
 
Posts: 140
Joined: Sat Jan 21, 2012 3:46 pm
Has thanked: 1 time
Been thanked: 7 times

#2 Re: Autonomous Automatic Watering

Postby Baxev » Sat Mar 17, 2012 9:32 am

Μ' αρέσει, μ' αρέσει. :wink:
Spoiler :
Και νομίζω ότι θα αρέσει ιδιαίτερα και στην μαμά μου. :P

Βύρωνας wrote:Όπως καταλαβαίνετε, δε γουστάρω να πρέπει να θυμάμαι να ποτίζω τα φυτά. ΌΜΩΣ από τότε που σκέφτηκα να κάνω αυτό το project, έχω ποτίσει τα φυτά άπειρες φορές, ακριβώς γιατί δεν επέλεξα να πάρω έτοιμο προγραμματιστή και δεν έχω τελειώσει ακόμα τον δικό μου.

Απορία: τόσες φορές που τα πότισες, δεν σου έχει πλέον αυτοματοποιηθεί η ενέργεια του ποτίσματος την σωστή ώρα; :badgrin: :P
Fate rarely calls upon us at a moment of our choosing.
Baxev
Moderator
 
Posts: 67
Joined: Sun Jan 22, 2012 1:02 am
Location: Αθήνα, Κυψέλη
Has thanked: 1 time
Been thanked: 0 time

#3 Re: Autonomous Automatic Watering

Postby aris93 » Sat Mar 17, 2012 11:29 am

hahhah Μπραβο Βυρωνα πολυ δημιουργικο project!
aris93
NTUA EleClub Member
 
Posts: 70
Joined: Sat Jan 21, 2012 11:05 pm
Location: N.Ιωνια-Περισσος
Has thanked: 0 time
Been thanked: 0 time

#4 Re: Autonomous Automatic Watering

Postby Βύρωνας » Sat Mar 17, 2012 2:00 pm

Baxev wrote:Απορία: τόσες φορές που τα πότισες, δεν σου έχει πλέον αυτοματοποιηθεί η ενέργεια του ποτίσματος την σωστή ώρα; :badgrin: :P

Ημι-αυτοματοποιηθεί. Πέφτει παντόφλα πριν την έναρξη του ποτίσματος. :rolleyes: (δεν είναι πλέον για τα δικά μου φυτά, αλλά της συζύγου).
Βύρωνας
Moderator
 
Posts: 140
Joined: Sat Jan 21, 2012 3:46 pm
Has thanked: 1 time
Been thanked: 7 times

#5 Re: Autonomous Automatic Watering

Postby Baxev » Sat Mar 17, 2012 4:43 pm

Βύρωνας wrote:Ημι-αυτοματοποιηθεί. Πέφτει παντόφλα πριν την έναρξη του ποτίσματος. :rolleyes: (δεν είναι πλέον για τα δικά μου φυτά, αλλά της συζύγου).


Oh... :rolleyes:
Spoiler :
Το μηχανικό ανάλογο ερέθισμα για να βγεις από το sleep mode, ε; :badgrin: :P
Fate rarely calls upon us at a moment of our choosing.
Baxev
Moderator
 
Posts: 67
Joined: Sun Jan 22, 2012 1:02 am
Location: Αθήνα, Κυψέλη
Has thanked: 1 time
Been thanked: 0 time

#6 Re: Autonomous Automatic Watering

Postby Βύρωνας » Sat Mar 17, 2012 5:00 pm

Baxev wrote:
Βύρωνας wrote:Ημι-αυτοματοποιηθεί. Πέφτει παντόφλα πριν την έναρξη του ποτίσματος. :rolleyes: (δεν είναι πλέον για τα δικά μου φυτά, αλλά της συζύγου).


Oh... :rolleyes:
Spoiler :
Το μηχανικό ανάλογο ερέθισμα για να βγεις από το sleep mode, ε; :badgrin: :P

Spoiler :
Σωστή η περιγραφή. Μόνο που εδώ έχουμε και επιβάρυνση του συστήματος σε κάθε ξύπνημα και κάποια στιγμή θα μπει σε rage mode και μην τα είδατε τα φυτά. :eusa_whistle:
Βύρωνας
Moderator
 
Posts: 140
Joined: Sat Jan 21, 2012 3:46 pm
Has thanked: 1 time
Been thanked: 7 times

#7 Re: Autonomous Automatic Watering

Postby Baxev » Sat Mar 17, 2012 5:33 pm

Βύρωνας wrote:
Spoiler :
Σωστή η περιγραφή. Μόνο που εδώ έχουμε και επιβάρυνση του συστήματος σε κάθε ξύπνημα και κάποια στιγμή θα μπει σε rage mode και μην τα είδατε τα φυτά. :eusa_whistle:


Spoiler :
:badgrin: :badgrin: :P


Αναμένω φωτογραφίες και σχηματικά! :bigbeer:
Fate rarely calls upon us at a moment of our choosing.
Baxev
Moderator
 
Posts: 67
Joined: Sun Jan 22, 2012 1:02 am
Location: Αθήνα, Κυψέλη
Has thanked: 1 time
Been thanked: 0 time

#8 Re: Autonomous Automatic Watering

Postby Βύρωνας » Wed Mar 28, 2012 12:56 am

Μιας και το τελείωσα επιτέλους, πάρτε μια γεύση. Πατώντας στις φωτογραφίες ξεκινάει slideshow (γιατί είμαστε και πολύ γαμάτο φόρουμ :badgrin: (αυτό θα το ακούτε κάθε φορά που βάζω κάποιο mod στο eleclub)).
Spoiler :
battery+charger.JPG
battery+charger.JPG (267.51 KiB) Viewed 1877 times
mcu+7seg_driver_front.JPG
mcu+7seg_driver_front.JPG (363.89 KiB) Viewed 1877 times
mcu+7seg_driver_back.JPG
mcu+7seg_driver_back.JPG (479.2 KiB) Viewed 1877 times
RTC_front.JPG
RTC_front.JPG (208.38 KiB) Viewed 1877 times
RTC_back.JPG
RTC_back.JPG (159.13 KiB) Viewed 1877 times
solenoid_switch_front.JPG
solenoid_switch_front.JPG (348.56 KiB) Viewed 1877 times
solenoid_switch_back.JPG
solenoid_switch_back.JPG (552.28 KiB) Viewed 1877 times
7seg_display+connector.JPG
7seg_display+connector.JPG (380.21 KiB) Viewed 1877 times
empty_case+buttons.JPG
empty_case+buttons.JPG (235.88 KiB) Viewed 1877 times
emtpy_case+buttons2.JPG
emtpy_case+buttons2.JPG (195.46 KiB) Viewed 1877 times
full_case_chaos.JPG
full_case_chaos.JPG (400.26 KiB) Viewed 1877 times
in_place.JPG
in_place.JPG (321.6 KiB) Viewed 1877 times
full.JPG
full.JPG (443.73 KiB) Viewed 1877 times
Βύρωνας
Moderator
 
Posts: 140
Joined: Sat Jan 21, 2012 3:46 pm
Has thanked: 1 time
Been thanked: 7 times

#9 Re: Autonomous Automatic Watering

Postby Baxev » Tue Jan 14, 2014 10:33 am

Αν δεν βαριέσαι, τράβα ένα βιντεάκι να το δούμε και σε live action.
Fate rarely calls upon us at a moment of our choosing.
Baxev
Moderator
 
Posts: 67
Joined: Sun Jan 22, 2012 1:02 am
Location: Αθήνα, Κυψέλη
Has thanked: 1 time
Been thanked: 0 time


Return to Projects

Who is online

Users browsing this forum: No registered users and 1 guest

cron