- Τι είναι η θολότητα στο υγρό;
- Πώς να μετρήσετε τη θολότητα χρησιμοποιώντας το Arduino;
- Εξαρτήματα που απαιτούνται για την κατασκευή μετρητή θολότητας
- Επισκόπηση του αισθητήρα θολότητας
- Βασικά χαρακτηριστικά της ενότητας θολότητας
- Αισθητήρας θολότητας διασύνδεσης με Arduino - Διάγραμμα κυκλώματος
- Προγραμματισμός του Arduino για τη μέτρηση της θολότητας στο νερό
Όσον αφορά τα υγρά, η θολότητα είναι ένας σημαντικός όρος. Επειδή παίζει σημαντικό ρόλο στη δυναμική του υγρού και χρησιμοποιείται επίσης για τη μέτρηση της ποιότητας του νερού. Έτσι, σε αυτό το σεμινάριο, ας συζητήσουμε τι είναι θολερότητα, πώς να μετρήσουμε τη θολότητα ενός υγρού χρησιμοποιώντας το Arduino. Εάν θέλετε να προωθήσετε αυτό το έργο περαιτέρω, μπορείτε επίσης να εξετάσετε το ενδεχόμενο διασύνδεσης ενός μετρητή pH με το Arduino και επίσης να διαβάσετε την τιμή του pH του νερού για καλύτερη αξιολόγηση της ποιότητας του νερού. Προηγουμένως είχαμε κατασκευάσει επίσης μια συσκευή παρακολούθησης ποιότητας νερού με βάση το IoT χρησιμοποιώντας το ESP8266, μπορείτε επίσης να το ελέγξετε αν ενδιαφέρεστε. Τούτου λεχθέντος, ας ξεκινήσουμε
Τι είναι η θολότητα στο υγρό;
Θολότητα είναι ο βαθμός ή το επίπεδο θολότητας ή θολότητας ενός υγρού. Αυτό συμβαίνει λόγω της παρουσίας μεγάλου αριθμού αόρατων σωματιδίων (με γυμνό μάτι) παρόμοιου με τον λευκό καπνό στον αέρα. Όταν το φως περνά μέσα από υγρά, τα φωτεινά κύματα διασκορπίζονται Λόγω της παρουσίας αυτών των μικροσκοπικών σωματιδίων. Η θολερότητα ενός υγρού είναι ευθέως ανάλογη με τα ελεύθερα αιωρούμενα σωματίδια, δηλαδή εάν ο αριθμός των σωματιδίων αυξάνεται, η θολότητα θα αυξάνεται επίσης.
Πώς να μετρήσετε τη θολότητα χρησιμοποιώντας το Arduino;
Όπως ανέφερα νωρίτερα, η θολότητα συμβαίνει λόγω της διασποράς των φωτεινών κυμάτων, προκειμένου να μετρηθεί η θολερότητα, πρέπει να μετρήσουμε τη σκέδαση του φωτός. Η θολερότητα μετριέται συνήθως σε μονάδες νεφελομετρικής θολότητας (NTU) ή μονάδες θολότητας Jackson (JTLJ), ανάλογα με τη μέθοδο που χρησιμοποιείται για τη μέτρηση. Οι δύο μονάδες είναι περίπου ίσες.
Τώρα ας δούμε πώς λειτουργεί ένας αισθητήρας θολερότητας, έχει δύο μέρη, πομπό και δέκτη. Ο πομπός αποτελείται από μια πηγή φωτός συνήθως ένα κύκλωμα οδηγού και οδηγού. Στο άκρο του δέκτη, υπάρχει ένας ανιχνευτής φωτός όπως μια φωτοδίοδος ή μια LDR. Τοποθετούμε τη λύση μεταξύ του πομπού και του δέκτη.
Ο πομπός μεταδίδει απλά το φως, ότι τα κύματα φωτός περνούν μέσα από τη λύση και ο δέκτης λαμβάνει το φως. Κανονικά (χωρίς την παρουσία λύσης) το εκπεμπόμενο φως δέχεται πλήρως στην πλευρά του δέκτη. Ωστόσο, παρουσία θολής λύσης, η ποσότητα του εκπεμπόμενου φωτός είναι πολύ χαμηλή. Αυτό είναι στην πλευρά του δέκτη, έχουμε μόνο φως χαμηλής έντασης και αυτή η ένταση είναι αντιστρόφως ανάλογη με τη θολερότητα. Έτσι μπορούμε να μετρήσουμε τη θολότητα μετρώντας την ένταση του φωτός εάν η ένταση του φωτός είναι υψηλή, το διάλυμα είναι λιγότερο θολό και αν η ένταση του φωτός είναι πολύ χαμηλή, αυτό σημαίνει ότι το διάλυμα είναι πιο θολό.
Εξαρτήματα που απαιτούνται για την κατασκευή μετρητή θολότητας
- Μονάδα θολότητας
- Arduino
- 16 * 2 I2C LCD
- Κοινή καθόδου RGB LED
- Ψωμί
- Καλώδια αλτών
Επισκόπηση του αισθητήρα θολότητας
Ο αισθητήρας θολότητας που χρησιμοποιείται σε αυτό το έργο φαίνεται παρακάτω.
Όπως μπορείτε να δείτε, αυτή η μονάδα αισθητήρα θολότητας συνοδεύεται από 3 μέρη. Αδιάβροχο καλώδιο, κύκλωμα οδήγησης και καλώδιο σύνδεσης. Ο ανιχνευτής δοκιμής αποτελείται τόσο από τον πομπό όσο και από τον δέκτη.
Η παραπάνω εικόνα δείχνει ότι αυτός ο τύπος μονάδας χρησιμοποιεί μια δίοδο υπερύθρων ως πηγή φωτός και έναν δέκτη υπερύθρων ως ανιχνευτή. Αλλά η αρχή λειτουργίας είναι η ίδια όπως και πριν. Το τμήμα του προγράμματος οδήγησης (που φαίνεται παρακάτω) αποτελείται από ένα op-amp και ορισμένα εξαρτήματα που ενισχύουν το ανιχνευμένο σήμα φωτός.
Ο πραγματικός αισθητήρας μπορεί να συνδεθεί σε αυτήν τη μονάδα χρησιμοποιώντας μια υποδοχή JST XH. Έχει τρεις ακίδες, VCC, γείωση και έξοδο. Η Vcc συνδέεται στο 5v και η γείωση στο έδαφος. Η έξοδος αυτής της μονάδας είναι μια αναλογική τιμή που αλλάζει ανάλογα με την ένταση του φωτός.
Βασικά χαρακτηριστικά της ενότητας θολότητας
- Τάση λειτουργίας: 5VDC.
- Ρεύμα: 30mA (MAX).
- Θερμοκρασία λειτουργίας: -30 ° C έως 80 ° C.
- Συμβατό με Arduino, Raspberry Pi, AVR, PIC κ.λπ.
Αισθητήρας θολότητας διασύνδεσης με Arduino - Διάγραμμα κυκλώματος
Το πλήρες σχήμα για τη σύνδεση του αισθητήρα θολότητας με το Arduino φαίνεται παρακάτω, το κύκλωμα σχεδιάστηκε χρησιμοποιώντας το EasyEDA.
Αυτό είναι ένα πολύ απλό διάγραμμα κυκλώματος. Η έξοδος του αισθητήρα θολότητας είναι αναλογική έτσι ώστε να συνδέεται με τον πείρο A0 του Arduino, LCD I2C συνδεδεμένος με πείρους I2C του Arduino που είναι SCL σε A5 και SDA σε A4. Στη συνέχεια, το RGB LED συνδέθηκε με την ψηφιακή ακίδα D2, D3 και D4. Αφού ολοκληρωθούν οι συνδέσεις, η ρύθμιση του υλικού μου μοιάζει με αυτό παρακάτω.
Συνδέστε το VCC του αισθητήρα στο Arduino 5v και μετά συνδέστε τη γείωση στη γείωση. Ο ακροδέκτης εξόδου του αισθητήρα στο αναλογικό 0 του Arduino. Στη συνέχεια, συνδέστε το VCC και τη γείωση της μονάδας LCD σε 5v και τη γείωση του Arduino. Στη συνέχεια, SDA σε A4 και SCL σε A5, αυτές οι δύο ακίδες είναι οι καρφίτσες I2C του Arduino. τελικά συνδέει τη γείωση του RGB LED στο έδαφος του Arduino και συνδέει το πράσινο στο D3, το μπλε στο D4 και το κόκκινο στο D5.
Προγραμματισμός του Arduino για τη μέτρηση της θολότητας στο νερό
Το σχέδιο είναι να εμφανιστούν οι τιμές θολερότητας από 0 έως 100. Δηλαδή ο μετρητής πρέπει να εμφανίζει 0 για καθαρό υγρό και 100 για πολύ θολό. Αυτός ο κωδικός Arduino είναι επίσης πολύ απλός και ο πλήρης κωδικός βρίσκεται στο κάτω μέρος αυτής της σελίδας.
Πρώτον, συμπεριέλαβα τη βιβλιοθήκη υγρών κρυστάλλων I2C επειδή χρησιμοποιούμε μια I2C LCD για να ελαχιστοποιήσουμε τις συνδέσεις.
# συμπεριλάβετε
Στη συνέχεια έβαλα ακέραιο για είσοδο αισθητήρα.
int sensorPin = A0;
Στην ενότητα εγκατάστασης, ορίσαμε τις καρφίτσες.
pinMode (3, ΕΞΟΔΟΣ); pinMode (4, ΕΞΟΔΟΣ); pinMode (5, ΕΞΟΔΟΣ);
Στην ενότητα βρόχου, όπως ανέφερα νωρίτερα, η έξοδος του αισθητήρα είναι αναλογική τιμή. Πρέπει λοιπόν να διαβάσουμε αυτές τις τιμές. Με τη βοήθεια της λειτουργίας Arduino AnalogRead , μπορούμε να διαβάσουμε τις τιμές εξόδου στην ενότητα βρόχου.
int sensorValue = analogRead (sensorPin);
Πρώτον, πρέπει να κατανοήσουμε τη συμπεριφορά του αισθητήρα μας, πράγμα που σημαίνει ότι πρέπει να διαβάσουμε την ελάχιστη τιμή και τη μέγιστη τιμή του αισθητήρα θολότητας. μπορούμε να διαβάσουμε αυτήν την τιμή στη σειριακή οθόνη χρησιμοποιώντας τη λειτουργία serial.println .
Για να λάβετε αυτές τις τιμές, πρώτα, διαβάστε ελεύθερα τον αισθητήρα χωρίς καμία λύση. Πήρα μια τιμή περίπου 640 και μετά από αυτό, τοποθετήστε μια μαύρη ουσία μεταξύ του πομπού και του δέκτη, έχουμε μια τιμή που είναι η ελάχιστη τιμή, συνήθως, η τιμή είναι μηδέν. Έτσι έχουμε 640 το μέγιστο και μηδέν τουλάχιστον. Τώρα πρέπει να μετατρέψουμε αυτές τις τιμές σε 0-100
Για αυτό, χρησιμοποίησα τη λειτουργία χάρτη του Arduino.
int θολότητα = χάρτης (τιμή αισθητήρα, 0,640, 100, 0);
Στη συνέχεια, έδειξα αυτές τις τιμές στην οθόνη LCD.
lcd.setCursor (0, 0); lcd.print ("θολότητα:"); lcd.print (""); lcd.setCursor (10, 0); lcd.print (θολότητα);
Μετά από αυτό, με τη βοήθεια , αν συνθηκών, έδωσα διαφορετικές συνθήκες.
εάν (θολότητα <20) { digitalWrite (2, HIGH); digitalWrite (3, LOW); digitalWrite (4, LOW); lcd.setCursor (0, 1); lcd.print ("το CLEAR"); }
Αυτό θα ενεργοποιήσει την πράσινη λυχνία και θα εμφανίσει την ένδειξη "διαυγής" στην οθόνη LCD εάν η τιμή θολότητας είναι κάτω από 20.
if ((θολότητα> 20) && (θολότητα <50)) { digitalWrite (2, LOW); digitalWrite (3, ΥΨΗΛΟ); digitalWrite (4, LOW); lcd.setCursor (0, 1); lcd.print ("το CLOUDY"); }
Αυτό θα ενεργοποιήσει το μπλε led και θα εμφανίσει το "θολό" του στην οθόνη LCD εάν η τιμή θολότητας κυμαίνεται μεταξύ 20 και 50.
εάν ((θολότητα> 50) { digitalWrite (2, LOW); digitalWrite (3, HIGH); digitalWrite (4, LOW); lcd.setCursor (0, 1); lcd.print ("the DIRTY"); }
Αυτό θα ενεργοποιήσει την κόκκινη λυχνία και θα εμφανίσει "είναι βρώμικο" στην οθόνη LCD εάν η τιμή θολότητας είναι μεγαλύτερη από 50 όπως φαίνεται παρακάτω.
Απλώς ακολουθήστε το διάγραμμα κυκλώματος και ανεβάστε τον κωδικό, εάν όλα πάνε σωστά, θα πρέπει να μπορείτε να μετρήσετε τη θολερότητα του νερού και η οθόνη LCD να εμφανίζει την ποιότητα του νερού όπως φαίνεται παραπάνω.
Λάβετε υπόψη ότι αυτός ο μετρητής θολότητας εμφανίζει το ποσοστό θολότητας και ενδέχεται να μην είναι ακριβής βιομηχανική τιμή, αλλά μπορεί να χρησιμοποιηθεί για τη σύγκριση της ποιότητας του νερού δύο νερού. Η πλήρης εργασία αυτού του έργου βρίσκεται στο παρακάτω βίντεο. Ελπίζω να απολαύσατε το σεμινάριο και να μάθετε κάτι χρήσιμο εάν έχετε οποιαδήποτε ερώτηση, μπορείτε να τα αφήσετε στην παρακάτω ενότητα σχολίων ή να χρησιμοποιήσετε τα φόρουμ CircuitDigest για να δημοσιεύσετε τις τεχνικές σας ερωτήσεις ή να ξεκινήσετε μια σχετική συζήτηση.