![Πώς να κάνετε έξυπνο σύστημα συναγερμού ανίχνευσης πλημμύρας χρησιμοποιώντας Raspberry Pi και Particle Argon: 6 βήματα Πώς να κάνετε έξυπνο σύστημα συναγερμού ανίχνευσης πλημμύρας χρησιμοποιώντας Raspberry Pi και Particle Argon: 6 βήματα](https://i.howwhatproduce.com/images/007/image-18807-j.webp)
Πίνακας περιεχομένων:
2025 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2025-01-23 14:39
![Image Image](https://i.howwhatproduce.com/images/007/image-18807-2-j.webp)
![](https://i.ytimg.com/vi/b-X1X0mXWSE/hqdefault.jpg)
![Πώς να κάνετε έξυπνο σύστημα συναγερμού ανίχνευσης πλημμύρας χρησιμοποιώντας Raspberry Pi και Particle Argon Πώς να κάνετε έξυπνο σύστημα συναγερμού ανίχνευσης πλημμύρας χρησιμοποιώντας Raspberry Pi και Particle Argon](https://i.howwhatproduce.com/images/007/image-18807-3-j.webp)
Η ύπαρξη τυπικών αισθητήρων πλημμύρας είναι εξαιρετική για την αποφυγή μαζικών ζημιών στο σπίτι ή στο χώρο εργασίας σας.
Αλλά είναι δύσκολο να μην είστε στο σπίτι να παρακολουθήσετε τον συναγερμό.
Φυσικά θα μπορούσατε να τα αγοράσετε έξυπνα
Αυτό το σύστημα συναγερμού πλημμύρας ανιχνεύει οποιοδήποτε υγρό και ενεργοποιεί συναγερμό και ενημερώνει την ιστοσελίδα για πλημμύρα στην οποία μπορείτε να έχετε πρόσβαση οπουδήποτε στον κόσμο, είτε έχετε χαλαρωτικές διακοπές είτε απλώς στη δουλειά και θέλετε να μάθετε για την κατάσταση του σπιτιού σας.
Προμήθειες
Raspberry pi (χρησιμοποιώ μοντέλο 3 B+) που τρέχει raspbian
Σωματίδιο Αργόν
Αισθητήρας νερού Grove
Κάμερα Raspi
Βομβητής
Καλώδια βραχυκυκλωτήρων
Βήμα 1: Συνδέστε τον αισθητήρα νερού στο σωματίδιο
![Συνδέστε τον αισθητήρα νερού στο σωματίδιο Συνδέστε τον αισθητήρα νερού στο σωματίδιο](https://i.howwhatproduce.com/images/007/image-18807-4-j.webp)
![Συνδέστε τον αισθητήρα νερού στο σωματίδιο Συνδέστε τον αισθητήρα νερού στο σωματίδιο](https://i.howwhatproduce.com/images/007/image-18807-5-j.webp)
ο αισθητήρας νερού έχει 4 ακίδες, οι οποίες είναι GND, VCC, NC και SIG και πρόκειται να χρησιμοποιήσουμε μόνο τρεις από αυτές
Συνδέω τον πείρο SIG στο D2 στο Argon.
Τώρα, μπορείτε να εκκινήσετε το Particle Web IDE για να γράψετε τον κώδικα και να αναβοσβήνετε στο Argon
Έτσι, έχουμε καταχωρίσει υγρό συνάρτησης σωματιδίων και ορίσαμε μια μεταβλητή isFloodPresent, η οποία μπορεί να κληθεί από το Particle Console και να αποκτήσει τη boolean τιμή του isFloodPresent και επίσης να καλέσει τη λειτουργία υγρό για ψεύτικες δοκιμές που λαμβάνει την τιμή 1 ως είσοδο, πράγμα που σημαίνει ότι ισχύει για πλημμύρα (νερό) Το
βεβαιωθείτε ότι μπορείτε να δείτε αυτήν τη λειτουργία και τη μεταβλητή από την Κονσόλα σωματιδίων της Συσκευής Σωματιδίων σας.
Βήμα 2: Συνδέστε την πηγή συναγερμού στο Raspberry
![Συνδέστε την πηγή συναγερμού στο Raspberry Συνδέστε την πηγή συναγερμού στο Raspberry](https://i.howwhatproduce.com/images/007/image-18807-6-j.webp)
Στο breadboard μπορείτε να συνδέσετε το Buzzer στην καρφίτσα GPIO του Raspberry
Έχω συνδέσει το μικρότερο άκρο του βομβητή στο GND (PIN 6) και το μεγαλύτερο άκρο στο pin 7 στο βατόμουρο.
Τώρα εκτελέστε τον κώδικα για να δείτε. Θα χρειαστεί αυτό το αρχείο python να εκτελείται συνεχώς, ώστε να μπορεί να λαμβάνει τις ενεργοποιήσεις από τον διακομιστή ιστού και να ανταποκρίνεται ανάλογα.
Εναλλακτικά, μπορείτε να εκτελέσετε αυτό το αρχείο κατά την εκκίνηση στο βατόμουρό σας, το οποίο μπορείτε να κάνετε με την επεξεργασία του /etc /systemd
και αυτό το αρχείο θα τοποθετηθεί στο φάκελο cgi του διακομιστή apache σας, Έχω δημιουργήσει νέο κατάλογο flood-cgi μέσα/var/www/html/και έχω τοποθετήσει αυτό το αρχείο.py το οποίο θα επικοινωνεί με το σενάριο cgi μου
Βήμα 3: Διαμόρφωση διακομιστή Apache
![Διαμόρφωση διακομιστή Apache Διαμόρφωση διακομιστή Apache](https://i.howwhatproduce.com/images/007/image-18807-7-j.webp)
μπορείτε να εγκαταστήσετε διακομιστή apache πληκτρολογώντας sudo apt-get install apache2
όταν είναι εγκατεστημένο, μπορείτε να επαληθεύσετε πληκτρολογώντας το όνομα κεντρικού υπολογιστή -I
και θα λάβετε την τοπική σας διεύθυνση IP και μπορείτε να κατευθυνθείτε στο πρόγραμμα περιήγησής σας και θα πρέπει να δείτε τον διακομιστή να λειτουργεί
Βήμα 4: Ενεργοποιήστε το CGI στο Apache
![Ενεργοποιήστε το CGI στο Apache Ενεργοποιήστε το CGI στο Apache](https://i.howwhatproduce.com/images/007/image-18807-8-j.webp)
μπορείτε να ενεργοποιήσετε το cgi πληκτρολογώντας sudo a2enmod cgi
Από προεπιλογή, το cgi_bin του apache βρίσκεται στο/usr/lib/cgi-bin
εδώ μπορείτε να βάλετε τα σενάρια cgi αφού ενεργοποιήσετε το cgi
για να επιτευχθεί το αποτέλεσμα, πρέπει να κάνετε επανεκκίνηση του διακομιστή apache
Iθελα προσαρμοσμένο κατάλογο για τα σενάρια μου cgi, έτσι δημιούργησα τον κατάλογο στο/var/www/html/που ονομάζεται flood-cgi
για να ενεργοποιήσω αυτόν τον κατάλογο έπρεπε να δημιουργήσω αρχείο conf πληκτρολογώντας
sudo nano /etc/apache2/conf-available/flood-cgi.conf
και προσθήκη εντολών όπως φαίνεται στο στιγμιότυπο οθόνης
στη συνέχεια, ενεργοποιήστε αυτόν τον κατάλογο πληκτρολογώντας
var/www/html $ sudo a2enconf flood-cgi
τώρα μπορείτε να κάνετε επανεκκίνηση του διακομιστή apache ξανά και όλα τα cgi από αυτόν τον φάκελο θα είναι ευανάγνωστα από το apache μετά την άδεια.
Βήμα 5: Ρύθμιση της ιστοσελίδας
![Ρύθμιση της ιστοσελίδας Ρύθμιση της ιστοσελίδας](https://i.howwhatproduce.com/images/007/image-18807-9-j.webp)
Για αυτήν την απλή υπηρεσία ιστού, χρησιμοποιώ HTML, Javascript, CSS, jquery και ajax.
Έχω πέντε ετικέτες ελέγχου με δυνατότητα κλικ, Σε περίπτωση που γίνει κλικ στη λήψη φωτογραφιών από την ιστοσελίδα, θα ενεργοποιηθεί η λειτουργία κλικ του κουμπιού φωτογραφίας και αυτή η λειτουργία μοιάζει με αυτήν
$ ("#photobutton"). κλικ (λειτουργία () {var floodDate = νέα ημερομηνία ();
var floodImageName = "Flood_IMG_" + floodDate.toLocaleTimeString ();
$.ajax ({
url: 'flood-cgi/flood_cgi.py', μέθοδος: «ανάρτηση», δεδομένα: {name_for_image: floodImageName}, επιτυχία: λειτουργία (δεδομένα) {
ειδοποίηση (δεδομένα, κατάσταση)
$ ("#Recentpic"). attr ("src", "flood-cgi/" + floodImageName + ".jpg");
}
})
});
Αυτό θα καλέσει το σενάριο flood_cgi.py για λήψη φωτογραφιών και αποθηκεύει την εικόνα με προσαρμοσμένο όνομα που δημιουργείται από την τρέχουσα ημερομηνία και ώρα και ο ajax φορτώνει μέχρι τη σελίδα.
σε περίπτωση Συναγερμού, μπορούμε να χρησιμοποιήσουμε αυτήν τη λειτουργία
συνάρτηση callAlarm (alarmType) {
$.ajax ({
url: 'flood-cgi/alarm.cgi', μέθοδος: «ανάρτηση», δεδομένα: {alarm_type: alarmType}, επιτυχία: λειτουργία (δεδομένα) {ειδοποίηση (δεδομένα)
}, error: function (XMLHttpRequest, textStatus, throwError) {alert (throwError)}});
}
η λειτουργία callAlarm θα καλείται όταν κάνετε κλικ στην ετικέτα του βομβητή, $ ("#buzzer"). κλικ (λειτουργία () {callAlarm ("δοκιμή");
})
ο παρακάτω κώδικας είναι όταν θέλετε να κάνετε κλικ σε ψεύτικη πλημμύρα, δηλαδή να καλέσετε το API σωματιδίων και να καλέσετε τη συνάρτηση και να αλλάξετε την τιμή υγρού 1 και να ελέγξετε το σύστημα εάν το σύνολο λειτουργεί όπως αναμένεται, πραγματοποιώντας ένα ψεύτικο συμβάν πλημμύρας
$ ("#mockFlood"). κλικ (λειτουργία () {console.log ("ζητήθηκε ψεύτικη πλημμύρα");
var floodVal = 1;
$ ("#signal2"). css ("μέγεθος γραμματοσειράς", "μικρό");
var varName = "isFloodPresent";
var deviceID = "Το αναγνωριστικό της συσκευής σας";
var accessToken = "ΔΙΚΟ ΣΑΣ ΠΡΟΣΒΑΣΗ ΣΑΣ";
αν (floodVal) {
$.post ("https://api.particle.io/v1/devices/" + deviceID + "/liquid? access_token =" + accessToken, {liquid: floodVal}, λειτουργία (δεδομένα, κατάσταση) {
εάν (κατάσταση == "επιτυχία") {
ειδοποίηση ("Mock Flood has done !!!");
} αλλο {
ειδοποίηση ("Συγνώμη, υπήρχε πρόβλημα").
}
});
}
});
Αυτές είναι οι κύριες λειτουργίες που χρειάζεστε για να συνδεθείτε με το Particle Api και το βατόμουρό σας, ώστε να μπορεί να επικοινωνήσει η συσκευή βατόμουρου pi και σωματιδίων Argon.
Σημείωση: wantedθελα να ανεβάσω όλο τον κώδικα, αλλά δεν μου επιτρέπει να ανεβάσω.html αρχείο
Βήμα 6: Δημιουργία σεναρίου για κάμερα Raspi
δημιουργούμε απλό.py για να τραβήξουμε εικόνα και θα έχουμε σχολιασμό της τρέχουσας ημερομηνίας και ώρας σε αυτήν.
τότε θα δημιουργήσουμε cgi script flood_cgi.py έτσι θα κληθεί από τον ιστό και αυτό θα δώσει εντολή.py αρχείο για λήψη φωτογραφίας.
βεβαιωθείτε ότι έχετε ξεκινήσει το σενάριο cgi με #! /usr/bin/env python
και επίσης να δώσει άδεια apache για την εκτέλεση αυτών των αρχείων.
Ο διακομιστής apache τρέχει σε δεδομένα χρήστη www, οπότε μόλις δημιουργήσουμε το αρχείο.py ή.cgi, το apache πρέπει να είναι κάτοχος του αρχείου
sudo chown pi: www-data flood-cgi.py
και δώστε άδεια για εκτέλεση
sudo chmod a+x flood-cgi.py
θα πρέπει να το κάνετε αυτό για όλα τα αρχεία που πρέπει να εκτελούνται από διακομιστή apache.
ΣΗΜΕΙΩΣΗ: η έκθεση του βατόμουρού σας στο διαδίκτυο και η παροχή όλων αυτών των δικαιωμάτων καθιστά το βατόμουρό σας πολύ ευάλωτο για λόγους ασφαλείας, οπότε θα πρέπει να ακολουθούνται αυστηροί χρήστες και δικαιώματα και να εγκαταστήσετε τείχος προστασίας όπως το απλό τείχος προστασίας (ufw)
Συνιστάται:
Σύστημα συναγερμού ανίχνευσης αερίου Arduino: 6 βήματα
![Σύστημα συναγερμού ανίχνευσης αερίου Arduino: 6 βήματα Σύστημα συναγερμού ανίχνευσης αερίου Arduino: 6 βήματα](https://i.howwhatproduce.com/images/007/image-19484-j.webp)
Σύστημα συναγερμού ανίχνευσης αερίου Arduino: Γεια σε όλους! Αυτή τη στιγμή, θα εξηγήσω πώς να φτιάξετε ένα σύστημα συναγερμού ανίχνευσης αερίου Arduino στο tinkercad. Αυτό το κύκλωμα χρησιμοποιεί τον αισθητήρα αερίου για να ανιχνεύσει εάν υπάρχει φωτιά, καπνός ή διαρροή αερίου σε κοντινή απόσταση. Χρησιμοποιώντας την οθόνη LCD και το ξυπνητήρι, αυτό το κύκλωμα επίσης
Πώς να κάνετε κύκλωμα συναγερμού ροής νερού χρησιμοποιώντας Z44N MOSFET: 7 βήματα
![Πώς να κάνετε κύκλωμα συναγερμού ροής νερού χρησιμοποιώντας Z44N MOSFET: 7 βήματα Πώς να κάνετε κύκλωμα συναγερμού ροής νερού χρησιμοποιώντας Z44N MOSFET: 7 βήματα](https://i.howwhatproduce.com/images/002/image-4688-35-j.webp)
Πώς να κάνετε κύκλωμα συναγερμού ροής νερού χρησιμοποιώντας το Z44N MOSFET: Γεια σου φίλε, σήμερα θα κάνω ένα κύκλωμα συναγερμού υπερβολικής ροής νερού. Βασικά αυτό το κύκλωμα μπορούμε να το χρησιμοποιήσουμε για να γνωρίζουμε την υπερβολική ροή νερού της δεξαμενής νερού. Θα κάνουμε αυτό το έργο χρησιμοποιώντας IRFZ44N MOSFET. Ας ξεκινήσουμε
Πώς να κάνετε κύκλωμα συναγερμού βροχής χρησιμοποιώντας το τρανζίστορ BC547: 10 βήματα
![Πώς να κάνετε κύκλωμα συναγερμού βροχής χρησιμοποιώντας το τρανζίστορ BC547: 10 βήματα Πώς να κάνετε κύκλωμα συναγερμού βροχής χρησιμοποιώντας το τρανζίστορ BC547: 10 βήματα](https://i.howwhatproduce.com/images/002/image-4887-20-j.webp)
Πώς να κάνετε κύκλωμα συναγερμού βροχής χρησιμοποιώντας το τρανζίστορ BC547: Γεια σου φίλε, σήμερα θα κάνω ένα κύκλωμα απλού κυκλώματος συναγερμού βροχής χρησιμοποιώντας το τρανζίστορ BC547. Αυτό το κύκλωμα είναι πολύ εύκολο να γίνει. Ας ξεκινήσουμε
Σύστημα συναγερμού ανίχνευσης κίνησης: 11 βήματα (με εικόνες)
![Σύστημα συναγερμού ανίχνευσης κίνησης: 11 βήματα (με εικόνες) Σύστημα συναγερμού ανίχνευσης κίνησης: 11 βήματα (με εικόνες)](https://i.howwhatproduce.com/images/002/image-5840-12-j.webp)
Σύστημα συναγερμού ανίχνευσης κίνησης: Σημείωση! Το Reactive Blocks δεν είναι πλέον διαθέσιμο για λήψη. Μια βασική κάμερα USB μπορεί να χρησιμοποιηθεί για τον εντοπισμό κίνησης σε ένα δωμάτιο. Στα παρακάτω βήματα θα σας δείξουμε πώς μπορείτε να χρησιμοποιήσετε το Reactive Blocks για να προγραμματίσετε μια έτοιμη εφαρμογή Java που στέλνει SMS
Σύστημα συναγερμού πυρκαγιάς χρησιμοποιώντας Arduino [Σε λίγα εύκολα βήματα]: 3 βήματα
![Σύστημα συναγερμού πυρκαγιάς χρησιμοποιώντας Arduino [Σε λίγα εύκολα βήματα]: 3 βήματα Σύστημα συναγερμού πυρκαγιάς χρησιμοποιώντας Arduino [Σε λίγα εύκολα βήματα]: 3 βήματα](https://i.howwhatproduce.com/images/003/image-6841-j.webp)
Σύστημα συναγερμού πυρκαγιάς χρησιμοποιώντας Arduino [Σε λίγα εύκολα βήματα]: Θέλετε να κάνετε ένα απλό και ενδιαφέρον έργο με το Arduino, το οποίο ταυτόχρονα θα μπορούσε να είναι πραγματικά χρήσιμο και δυνητικά σωτήρια; Εάν ναι, έχετε έρθει στο σωστό μέρος για να μάθετε κάτι νέο και καινοτόμο. Σε αυτήν την ανάρτηση πάμε