Πίνακας περιεχομένων:

Πώς να φτιάξετε ένα κιτ ανίχνευσης αμμωνίας: 8 βήματα
Πώς να φτιάξετε ένα κιτ ανίχνευσης αμμωνίας: 8 βήματα

Βίντεο: Πώς να φτιάξετε ένα κιτ ανίχνευσης αμμωνίας: 8 βήματα

Βίντεο: Πώς να φτιάξετε ένα κιτ ανίχνευσης αμμωνίας: 8 βήματα
Βίντεο: Πώς να καθαρίσω το πουρί από τη λεκάνη της τουαλέτας 2024, Νοέμβριος
Anonim
Πώς να φτιάξετε ένα κιτ ανίχνευσης αμμωνίας
Πώς να φτιάξετε ένα κιτ ανίχνευσης αμμωνίας

Σε αυτό το σεμινάριο θα σας δείξουμε πώς να χρησιμοποιείτε αισθητήρες αμμωνίας, arduino και βατόμουρο για τη μέτρηση της συγκέντρωσης αμμωνίας και να παρέχετε ειδοποιήσεις εάν υπάρχει διαρροή ή πολύ υψηλή συγκέντρωση στον αέρα!

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

Βήμα 1: Υλικά

Για αυτό το έργο θα χρειαστείτε:

- 2x αισθητήρας αμμωνίας MQ-137 (ή όσο θέλετε)

- 1x Arduino Uno (έχει μία σειριακή θύρα)

- 1x Genuino Mega 2560 (ή άλλες πλακέτες με 2 ή περισσότερες σειριακές θύρες)

- 2 μονάδες Bluetooth HC-05

- 1x Raspberry Pi μοντέλο 3Β

- 1x μπαταρία 9V

- Σύρματα, καλώδια και αντιστάσεις

Βήμα 2: Λήψη δεδομένων από τους αισθητήρες

Λήψη δεδομένων από τους αισθητήρες
Λήψη δεδομένων από τους αισθητήρες

Οι αισθητήρες συνδέονται με arduino Uno.

Για να πραγματοποιήσετε αυτήν την εφαρμογή, αυτός ο αισθητήρας πρέπει να τροφοδοτηθεί. Για να γίνει αυτό, χρησιμοποιείται το 5V και η μάζα της κάρτας arduino. Επιπλέον, η αναλογική είσοδος A0 καθιστά δυνατή την ανάκτηση της τιμής αντίστασης που δίνει ο αισθητήρας. Επιπλέον, το Arduino τροφοδοτείται

Δυστυχώς, αυτοί οι αισθητήρες δεν παρέχουν γραμμική απόδοση ανάλογη της συγκέντρωσης αμμωνίας. Αυτοί οι αισθητήρες είναι κατασκευασμένοι από ένα ηλεκτροχημικό στοιχείο, αλλάζοντας την αντίσταση που σχετίζεται με τη συγκέντρωση. Η αντίσταση ανεβαίνει με τη συγκέντρωση.

Το πραγματικό πρόβλημα με αυτά, είναι ότι είναι φτιαγμένα για να μετρούν διαφορετικό τύπο αερίου και το ηλεκτροχημικό στοιχείο αντιδρά παράξενα. Για παράδειγμα, για το ίδιο δείγμα υγρής αμμωνίας, και οι δύο αισθητήρες παρέχουν διαφορετική απόδοση. Είναι επίσης αρκετά αργές.

Είτε έτσι είτε αλλιώς, η αντίσταση που παρέχει ο αισθητήρας μετατρέπεται σε 0-5V και στη συνέχεια σε "ppm" (= μέρη ανά εκατομμύριο, είναι μια σχετική μονάδα μέτρησης της συγκέντρωσης αερίου) από το arduino, χρησιμοποιώντας μια καμπύλη τάσης και η εξίσωση του παρέχεται σε την τεκμηρίωση αυτών των αισθητήρων.

Βήμα 3: Αποστολή δεδομένων μέσω Bluetooth

Αποστολή δεδομένων μέσω Bluetooth
Αποστολή δεδομένων μέσω Bluetooth

Για να ρυθμίσετε τους αισθητήρες σε διάφορα σημεία του εργαστηρίου, συνδέονται απευθείας με μια πλακέτα Arduino που τροφοδοτείται από μπαταρία 9V. Και για την επικοινωνία των αποτελεσμάτων αμμωνίας στον αέρα στην κάρτα Rapsberry, χρησιμοποιούνται μονάδες bluetooth. Η πρώτη κάρτα που συνδέεται απευθείας στην πλακέτα αισθητήρων ονομάζεται slave.

Για να χρησιμοποιήσετε τις μονάδες bluetooth, πρέπει πρώτα να διαμορφωθούν. Για το σκοπό αυτό, συνδέστε τον ακροδέκτη EN της μονάδας στο 5V (θα δείτε το led να αναβοσβήνει κάθε 2 δευτερόλεπτα) και πατήστε το κουμπί στη μονάδα. Τηλε κωδικοποιήστε έναν κενό κώδικα στο arduino και συνδέστε τον ακροδέκτη RX της μονάδας στον ακροδέκτη TX του arduino και αντίστροφα. Μετά από αυτό, μεταβείτε στη σειριακή οθόνη, επιλέξτε τη σωστή τιμή Baud (για εμάς, ήταν 38400 Br) και γράψτε AT.

Εάν η σειριακή οθόνη δείχνει "Ok", τότε μπήκατε στη λειτουργία AT. Τώρα μπορείτε να ορίσετε τη μονάδα ως slave ή Master. Μπορείτε να βρείτε παρακάτω ένα pdf με όλη την εντολή για τη λειτουργία AT.

Ο ακόλουθος ιστότοπος δείχνει τα βήματα που ακολουθούνται στη λειτουργία AT για τη μονάδα bluetooth:

Η μονάδα bluetooth χρησιμοποιεί 4 ακίδες του arduino, 3,3V με διαχωριστή τάσης, γείωση, τις ακίδες TX και RX. Η χρήση των ακίδων TX και RX σημαίνει ότι τα δεδομένα μεταφέρονται από τη σειριακή θύρα της κάρτας.

Μην ξεχνάτε ότι η ακίδα RX της μονάδας bluetooth είναι συνδεδεμένη με την ακίδα TX του Arduino και αντίστροφα.

Θα πρέπει να βλέπετε και τα δύο led των μονάδων bluetooth να αναβοσβήνουν 2 φορές περίπου κάθε 2 δευτερόλεπτα όταν συνδέονται μεταξύ τους.

Τόσο η απόδειξη όσο και ο κωδικός αποστολής πραγματοποιούνται στην ίδια κάρτα και επισυνάπτονται εδώ μετά.

Βήμα 4: Λήψη δεδομένων και μεταφορά στο Raspberry Pi

Λήψη δεδομένων και μεταφορά στο Raspberry Pi
Λήψη δεδομένων και μεταφορά στο Raspberry Pi

Αυτό το μέρος του έργου γίνεται από το arduino mega.

Αυτή η κάρτα είναι συνδεδεμένη σε μια μονάδα bluetooth, έχει ρυθμιστεί ώστε να λαμβάνει τα δεδομένα και το raspberry pi. Λέγεται Master.

Σε αυτήν την περίπτωση, η μονάδα bluetooth χρησιμοποιεί μία σειριακή θύρα και τα δεδομένα μεταφέρονται στο raspberry pi χρησιμοποιώντας άλλη σειριακή θύρα. Αυτός είναι ο λόγος για τον οποίο χρειαζόμαστε μια κάρτα με 2 ή περισσότερες σειριακές θύρες.

Ο κώδικας είναι σχεδόν ο ίδιος με πριν.

Βήμα 5: Καταγραφή δεδομένων και λειτουργία ειδοποίησης

Το raspberry pi θα καταγράφει τα δεδομένα κάθε 5 δευτερόλεπτα (για παράδειγμα, ενδέχεται να διαφέρει) σε ένα αρχείο.csv και θα τα αποθηκεύσει εντός της χωρητικότητας της κάρτας sd.

Ταυτόχρονα, το βατόμουρο ελέγξτε εάν η συγκέντρωση δεν είναι πολύ υψηλή (για παράδειγμα, πάνω από 10ppm, μπορεί να διαφέρει) και στείλτε ένα e-mail προειδοποίησης, αν συμβαίνει.

Πριν όμως το σμέουρο στείλει το email, χρειάζεται λίγη διαμόρφωση. Για το σκοπό αυτό, μεταβείτε στο αρχείο "/etc/ssmtp/ssmtp.conf" και αλλάξτε τις παραμέτρους μετά τις προσωπικές σας πληροφορίες. Μπορείτε να βρείτε ένα παράδειγμα παρακάτω (code_raspberry_conf.py).

Όσον αφορά τον κύριο κωδικό (blu_arduino_print.py), πρέπει να εισαγάγει μερικές βιβλιοθήκες όπως "σειριακές" για να λειτουργήσει με τη θύρα επικοινωνίας USB ή τη βιβλιοθήκη "ssmtp" για να στείλει το μήνυμα ηλεκτρονικού ταχυδρομείου.

Μερικές φορές, μπορεί να υπάρξει σφάλμα κατά την αποστολή των δεδομένων μέσω Bluetooth. Πράγματι, το βατόμουρο μπορεί να διαβάσει μια γραμμή μόνο όταν υπάρχει ένας αριθμός που τερματίζεται με / n. Ωστόσο, το βατόμουρο μπορεί μερικές φορές να λάβει κάτι άλλο όπως "\ r / n" ή απλά "\ n". Έτσι, για να αποφύγουμε το κλείσιμο του προγράμματος, χρησιμοποιήσαμε την εντολή Try - Except.

Μετά, είναι απλά μια δέσμη συνθηκών "αν".

Βήμα 6: Δημιουργία περιπτώσεων

Κάνοντας υποθέσεις
Κάνοντας υποθέσεις
Κάνοντας υποθέσεις
Κάνοντας υποθέσεις
Κάνοντας υποθέσεις
Κάνοντας υποθέσεις

Απαιτούμενος εξοπλισμός:

- 1 κουτί διακλάδωσης 220*170*85 mm

- 1 κουτί διακλάδωσης 153*110*55 mm

- Πράσινο ertalon 500*15*15 mm

- 1,5 μέτρα ηλεκτρικά καλώδια

- 2 μονάδες bluetooth

- 1 σμέουρο

- 1 Arduino Mega

- 1 Genuino

- Μπαταρία 9V

- 1 καλώδιο σύνδεσης Raspberry / Arduino

- 2 αντιστάσεις 2K ohm

- 2 αντιστάσεις 1K ohm

- Μηχανή συγκόλλησης

- Μηχάνημα διάτρησης

- Τρύπια διάτρησης

- Κοπή πένσας

- Είδε

Ξεκινήσαμε από δύο ηλεκτρικά κουτιά διακλάδωσης στα οποία έγιναν κοψίματα. Πρώτον, η υλοποίηση του στοιχείου αισθητήρα/εκπομπού: δύο υποστηρίγματα για τη διόρθωση της κάρτας Genuino όπου κατασκευάστηκε με πράσινο ERTALON. Στη συνέχεια, ήταν απαραίτητο να κόψετε το καπάκι για να βάλετε τον αισθητήρα αμμωνίας και να το διορθώσετε. Τα καλώδια συνδέθηκαν από τον αισθητήρα στην κάρτα Genuino. Στη συνέχεια, τοποθετήσαμε τη μονάδα bluetooth στο κουτί, συγκολλήσαμε τα καλώδια και τα συνδέσαμε με την κάρτα. Τέλος, η τροφοδοσία με μπαταρία 9V ενσωματώθηκε και ενσύρματη. Όταν τελείωσε ο αισθητήρας, μπορέσαμε να ξεκινήσουμε να δουλεύουμε στον δέκτη. Για αυτό, με τον ίδιο τρόπο όπως πριν, ξεκινήσαμε κάνοντας τις υποστηρίξεις για τις δύο ηλεκτρονικές κάρτες (το Raspberry και το Arduino mega). Στη συνέχεια, κόψαμε τις υποδοχές για καλώδια και βύσματα από το Raspberry. Η μονάδα bluetooth διορθώθηκε με τον ίδιο τρόπο όπως πριν. Στη συνέχεια, οι τρύπες τρυπήθηκαν στο πάνω μέρος του κουτιού για να επιτρέψουν τον εξαερισμό των δύο ηλεκτρονικών πλακετών και να αποφύγουν κάθε κίνδυνο υπερθέρμανσης. Για να ολοκληρωθεί αυτό το βήμα, όλα τα καλώδια συνδέθηκαν και το έργο χρειάζεται μόνο να τροφοδοτηθεί και να δοκιμαστεί.

Βήμα 7: Βελτιώσεις

Βελτιώσεις
Βελτιώσεις

Όσον αφορά τη βελτίωση, μπορούν να αναφερθούν πολλά σημεία:

- Η επιλογή ενός αισθητήρα με μεγαλύτερη απόδοση. Πράγματι, δεν ανιχνεύουν γρήγορα την εμφάνιση αμμωνίας στον αέρα. Προσθέστε σε αυτό ότι μόλις κορεστούν με αμμωνία, χρειάζονται έναν ορισμένο χρόνο για να απαλλαγούν από αυτό.

- Χρησιμοποιήσαμε μια κάρτα arduino που είχε απευθείας μια μονάδα Bluetooth όπως καθορίζεται στη βάση του έργου μας. Δυστυχώς, το Genuino 101 δεν είναι πλέον διαθέσιμο στην ευρωπαϊκή αγορά.

- Ενσωματώστε μια οθόνη στο πλαίσιο όπου βρίσκεται ο αισθητήρας για να γνωρίζετε τη συγκέντρωση με συνεχή τρόπο

- Εξασφαλίστε την αυτόματη κατασκευή ενός γραφήματος από τα δεδομένα που είναι αποθηκευμένα στο αρχείο csv.

Συνιστάται: