#55 Αισθητήριο μέτρησης ροής νερού με το Arduino

Στο σημερινό άρθρο θα μάθουμε πως μπορούμε να μετρήσουμε την ροή του νερού (π.χ. απο μια βρύση) με την βοήθεια του Arduino. Μπορείτε να βρείτε το συγκεκριμένο είδος αισθητήρα αναζητώντας το ως " arduino water flow sensor" ή "αισθητήρα μέτρησης ροής".

Αυτό που θα πρέπει να προσέξετε είναι η διάμετρος του (πόσα Φ είναι) ώστε να μπορείτε εύκολα να το προσαρμόσετε στην βρύση σας, η γενικότερα σε κάποια πηγή νερού (θα μπορούσε να μπει και ένα καζάνι). Το δεύτερο και σημαντικότερο είναι η πίεση που μπορεί να αντέξει (μέτρηση σε MPa) αλλά και το πόσο νερό μπορεί να περάσει μέσα απ' αυτό (μετριέται σε λίτρα ανα λεπτό L/m). Ο αισθητήρας που έχω στην κατοχή μου εγώ είναι διαμέτρου Φ20 (2cm δηλαδή) και αντέχει σε πίεση 2Mpa, με μέγιστη ροή νερού 30L/m. Επιλέξτε τον δικό σας ανάλογα με τις ανάγκες σας.

Θεωρητικά αν τον αισθητήρα τον βάλετε μετά την βρύση σας δεν θα έχετε πρόβλημα με την πίεση, αλλά αν μπει πριν απ' αυτή τότε φροντίστε ο αισθητήρας να μπορεί να αντέξει την πίεση του αρδευτικού δικτύου της περιοχής σας. Μετά απο έρευνα στο internet βρήκα πως η πίεση του νερού στην Αττική είναι στα 3Mpa. Που σημαίνει πως αν τον αισθητήρα που εχω τον βάλω πριν την βρύση μου, και την έχω και κλειστή, τότε το πιθανότερο είναι να γίνει κομματάκια και εγώ μούσκεμα!
Αφού λοιπόν έχετε επιλέξει σωστά τον αισθητήρα σας, προσέξτε πως θα τον τοποθετήσετε, απο που θα μπαίνει το νερό δηλαδή και απο που θα βγαίνει. Αυτό μπορείτε εύκολα να το καταλάβετε απο ένα βελάκι που υπάρχει στο πίσω μέρος του και σας δείχνει την σωστή κατεύθυνση που πρέπει να ακολουθήσει το νερό.

Τι θα χρειαστούμε:

  • Arduino uno
  • Water flow sensor
  • 3 καλώδια

Καλό θα ήταν αυτά τα καλώδια, που θα ενώνουν το Arduino με τον αισθητήρα, να είναι λίγο μεγάλα, έτσι ώστε να μην κινδυνεύει να βραχεί το Arduino uno ή ο υπολογιστής σας.

To κύκλωμα μας:



Η συνδεσμολογία είναι αρκετά απλή, το + του αισθητήρα και λογικά κόκκινο καλώδιο πάει στο Arduino pin 5V, το - του αισθητήρα και λογικά μαύρο καλώδιο πάει στο Arduino pin GND και το κίτρινο καλώδιο που είναι το σήμα μας πάει στο Arduino pin 2.

Ο κώδικας:

Εδώ θα βρείτε τον κώδικα με την χρήση του Codebender!

Ο κώδικας αυτό που κάνει είναι να μετράει τους παλμούς απ' το μοτέρ που γυρνάει και για να το κάνει αυτό χρησιμοποιεί ένα interupt του Arduino uno που τρέχει μόνο στο pin 2. Αυτό σημαίνει πως αν τον συνδέσετε σε άλλο pin δε θα λειτουργήσει.


Ανοίξτε την σειριακή οθόνη ή πατήστε Connect για να ξεκινήσετε να λαμβάνετε τα αποτελέσματα. Θα δείτε την τρέχουσα ροή, δηλαδή πόσα λίτρα περνάνε ανα λεπτό εκείνη την στιγμή αλλά και πόσα λίτρα έχουν περάσει συνολικά απ' την στιγμή που ενεργοποιήθηκε το Arduino uno σας.
Ανοίξτε την βρύση ή απλά δοκιμάστε να φυσήξετε μέσα στον αισθητήρα. Μπορείτε να κάνετε κλικ στο κουμπί edit και να αλλάξετε τον χρόνο ανανέωσης αλλάζοντας τον αριθμό 1000 (ms) στην γραμμή 58 "if((millis() - oldTime) > 1000)"

Μπορείτε επίσης να συνδυάσετε αυτό το κομμάτι κώδικα με εκείνο που δείχνει πως χρησιμοποιείτε μια οθόνη LCD και να τυπώνετε εκεί τα αποτελέσματα σας! Βρείτε το εδώ.

Συντάκτης: Βασιλάκης Μιχάλης
www.ardumotive.com Το μεγαλύτερο ελληνικό site για το Arduino