![Hoe maak je een slim overstromingsdetectie-alarmsysteem met Raspberry Pi en Particle Argon - Ajarnpa Hoe maak je een slim overstromingsdetectie-alarmsysteem met Raspberry Pi en Particle Argon - Ajarnpa](https://i.howwhatproduce.com/images/007/image-18807-j.webp)
Inhoudsopgave:
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-23 15:01
![Image Image](https://i.howwhatproduce.com/images/007/image-18807-2-j.webp)
![](https://i.ytimg.com/vi/b-X1X0mXWSE/hqdefault.jpg)
![Hoe maak je een slim overstromingsdetectie-alarmsysteem met Raspberry Pi en Particle Argon? Hoe maak je een slim overstromingsdetectie-alarmsysteem met Raspberry Pi en Particle Argon?](https://i.howwhatproduce.com/images/007/image-18807-3-j.webp)
Het hebben van standaard overstromingssensoren is geweldig om enorme schade aan uw huis of werkplek te voorkomen.
Maar het maakt het moeilijk als je niet thuis bent om de wekker bij te wonen.
Die kun je natuurlijk wel slim kopen
Dit overstromingsalarmsysteem detecteert elke vloeistof en activeert een alarm en werkt de webpagina over overstroming bij die overal ter wereld toegankelijk is, of u nu een ontspannen vakantie hebt of gewoon op het werk bent en u wilt weten hoe het met uw huis staat.
Benodigdheden
Raspberry pi (ik gebruik model 3 B+) met raspbian
Deeltje Argon
Grove Watersensor
Raspi-camera
Zoemer
Doorverbindingsdraden
Stap 1: Sluit de watersensor aan op het deeltje
![Sluit de watersensor aan op het deeltje Sluit de watersensor aan op het deeltje](https://i.howwhatproduce.com/images/007/image-18807-4-j.webp)
![Sluit de watersensor aan op het deeltje Sluit de watersensor aan op het deeltje](https://i.howwhatproduce.com/images/007/image-18807-5-j.webp)
watersensor heeft 4 pinnen, die GND, VCC, NC en SIG zijn en we gaan er slechts drie gebruiken
Ik verbind de SIG-pin met D2 op Argon.
Nu kunt u Particle Web IDE starten om de code te schrijven en naar Argon te flashen
We hebben dus de Particle-functie vloeistof geregistreerd en een variabele isFloodPresent gedefinieerd, die kan worden aangeroepen vanuit Particle Console en de booleaanse waarde van isFloodPresent kan verkrijgen en ook functie vloeistof kan aanroepen voor schijntesten die waarde 1 als invoer heeft, wat betekent waar voor overstroming (water) aanwezig.
zorg ervoor dat u die functie en variabele kunt zien vanuit de Particle Console van uw Particle Device.
Stap 2: Verbind alarmbron met Raspberry
![Verbind alarmbron met Raspberry Verbind alarmbron met Raspberry](https://i.howwhatproduce.com/images/007/image-18807-6-j.webp)
Op breadboard kun je zoemer verbinden met de GPIO-pin van Raspberry
Ik heb een kleiner uiteinde van de zoemer aangesloten op GND (PIN 6) en een langer uiteinde op pin 7 op Raspberry.
Voer nu de code uit om te zien. We hebben dit python-bestand de hele tijd nodig, zodat het de triggers van de webserver kan ontvangen en dienovereenkomstig kan reageren.
Als alternatief kunt u dit bestand uitvoeren bij het opstarten op uw Raspberry, wat u kunt doen door /etc/systemd. te bewerken
en dit bestand wordt in de cgi-map van uw apache-server geplaatst, Ik heb een nieuwe map flood-cgi in /var/www/html/ gemaakt en dit.py-bestand geplaatst dat zal communiceren met mijn cgi-script
Stap 3: Configureer Apache Server
![Apache-server configureren Apache-server configureren](https://i.howwhatproduce.com/images/007/image-18807-7-j.webp)
je kunt de apache-server installeren door sudo apt-get install apache2 te typen
wanneer het is geïnstalleerd, kunt u dit verifiëren door hostnaam -I. te typen
en je krijgt je lokale IP-adres en je kunt naar je browser gaan en zou de server moeten zien draaien
Stap 4: CGI inschakelen op Apache
![CGI inschakelen op Apache CGI inschakelen op Apache](https://i.howwhatproduce.com/images/007/image-18807-8-j.webp)
je kunt cgi inschakelen door sudo a2enmod cgi. te typen
Standaard bevindt cgi_bin van apache zich in /usr/lib/cgi-bin
hier kun je je cgi-scripts plaatsen nadat je cgi. hebt ingeschakeld
om het effect te krijgen, moet je de apache-server opnieuw opstarten
Ik wilde een aangepaste map voor mijn cgi-scripts, dus maakte ik een map in /var/www/html/ genaamd flood-cgi
om deze map in te schakelen moest ik een conf-bestand maken door te typen
sudo nano /etc/apache2/conf-available/flood-cgi.conf
en commando's toevoegen zoals getoond in screenshot
schakel vervolgens deze map in door te typen
var/www/html $ sudo a2enconf flood-cgi
nu kun je je apache-server opnieuw opstarten en alle cgi uit deze map zullen na de toestemming leesbaar zijn voor apache.
Stap 5: Stel de webpagina in
![De webpagina instellen De webpagina instellen](https://i.howwhatproduce.com/images/007/image-18807-9-j.webp)
Voor deze eenvoudige webservice gebruik ik HTML, Javascript, CSS, jQuery en ajax.
Ik heb vijf controlelabels die klikbaar zijn, In het geval dat er op een webpagina op een foto wordt geklikt, wordt de klikfunctie van de fotoknop geactiveerd en ziet deze functie er als volgt uit:
$("#photobutton").click(function () { var floodDate = new Date();
var floodImageName = "Flood_IMG_" + floodDate.toLocaleTimeString();
$.ajax({
url: 'flood-cgi/flood_cgi.py', methode: 'post', data: { name_for_image: floodImageName }, succes: functie (gegevens) {
waarschuwing (gegevens, status)
$("#recentpic").attr("src", "flood-cgi/" + floodImageName + ".jpg");
}
})
});
dit zal het flood_cgi.py-script aanroepen om een foto te maken en de afbeelding op te slaan met een aangepaste naam gegenereerd door de huidige datum en tijd en ajax laadt naar de pagina.
in het geval van Alarm kunnen we deze functie gebruiken
functieaanroepAlarm(alarmType) {
$.ajax({
url: 'flood-cgi/alarm.cgi', methode: 'post', gegevens: { alarm_type: alarmType }, succes: functie (data) { alert(data)
}, fout: functie (XMLHttpRequest, textStatus, throwError) { alert (throwError) } });
}
de functie callAlarm wordt aangeroepen wanneer op het zoemerlabel wordt geklikt, $("#zoemer").click(function () { callAlarm("test");
})
onderstaande code is wanneer u op mock flood wilt klikken, d.w.z. de Particle API aanroepen en de functie aanroepen en de vloeistofwaarde 1 wijzigen en het systeem controleren of het geheel werkt zoals verwacht door een mock flood-gebeurtenis uit te voeren
$("#mockFlood").click(function () { console.log("mock flood heeft aangevraagd");
var floodVal = 1;
$("#signal2").css("lettergrootte", "klein");
var varName = "isFloodPresent";
var deviceID = "UW APPARAAT-ID";
var accessToken = "UW TOEGANGSTOKEN";
if (floodVal) {
$.post("https://api.particle.io/v1/devices/" + deviceID + "/liquid?access_token=" + accessToken, { vloeistof: floodVal }, functie (gegevens, status) {
if (status == "succes") {
alert("Mock Flood heeft uitgevoerd!!!");
} anders {
alert("Sorry, er was een probleem");
}
});
}
});
Dit zijn de belangrijkste functies die je nodig hebt om verbinding te maken met Particle Api en je Raspberry, zodat je Raspberry Pi en Argon-partikelapparaat kunnen communiceren.
opmerking: ik wilde alle code uploaden, maar ik kan geen.html-bestand uploaden
Stap 6: maak een script voor Raspi Camera
we maken een eenvoudige.py om een afbeelding vast te leggen en er zal een annotatie van de huidige datum en tijd op staan.
dan zullen we cgi-script flood_cgi.py maken, zodat het vanaf het web wordt aangeroepen en dit zal het.py-bestand opdracht geven om een foto te maken.
zorg ervoor dat u het cgi-script start met #! /usr/bin/env python
en geef apache ook toestemming om deze bestanden uit te voeren.
apache-server draait op gebruikers www-data, dus zodra we het.py- of.cgi-bestand hebben gemaakt, moet apache de eigenaar van het bestand zijn
sudo chown pi:www-data flood-cgi.py
en geef toestemming om uit te voeren
sudo chmod a+x flood-cgi.py
u moet dit doen voor alle bestanden die vanaf de apache-server moeten worden uitgevoerd.
OPMERKING: uw Raspberry blootstellen aan internet en al deze machtigingen geven, maakt uw Raspberry erg kwetsbaar om veiligheidsredenen, dus strikte gebruikers- en machtigingen moeten worden gevolgd en een firewall installeren zoals een ongecompliceerde firewall (ufw)
Aanbevolen:
Hoe maak je een stopwatch met Arduino 8 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
![Hoe maak je een stopwatch met Arduino 8 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?" Hoe maak je een stopwatch met Arduino 8 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"](https://i.howwhatproduce.com/images/001/image-1349-60-j.webp)
Hoe maak je een stopwatch met behulp van Arduino: dit is een zeer eenvoudige Arduino 16 * 2 lcd-scherm stopwatch ……….. Als je deze Instructable leuk vindt, abonneer je dan op mijn kanaal https://www.youtube.com /ZenoModiff
Hoe maak je een slimme koffer met een Raspberry Pi: 4 stappen
![Hoe maak je een slimme koffer met een Raspberry Pi: 4 stappen Hoe maak je een slimme koffer met een Raspberry Pi: 4 stappen](https://i.howwhatproduce.com/images/003/image-7387-31-j.webp)
Hoe maak je een slimme koffer met een Raspberry Pi: In deze tutorial ga ik uitleggen hoe je een slimme koffer kunt maken met een Raspberry Pi. Als je klaar bent, kun je je koffer wereldwijd volgen en wegen het zonder de noodzaak van een weegschaal. Laten we beginnen
Hoe maak je een Express Web-Server met een Raspberry Pi: 10 stappen
![Hoe maak je een Express Web-Server met een Raspberry Pi: 10 stappen Hoe maak je een Express Web-Server met een Raspberry Pi: 10 stappen](https://i.howwhatproduce.com/images/001/image-2323-69-j.webp)
Hoe maak je een Express Web-Server met een Raspberry Pi: Deze gids zal je vertellen hoe je je Raspberry Pi een webserver kunt laten hosten, die kan worden gebruikt voor het hosten van websites, en zelfs enigszins aangepast om vele andere online services te hosten, zoals als gameservers of videostreamingservers. We zullen alleen dekken
Hoe maak je een lijnvolger met Arduino 8 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
![Hoe maak je een lijnvolger met Arduino 8 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?" Hoe maak je een lijnvolger met Arduino 8 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"](https://i.howwhatproduce.com/images/003/image-6708-56-j.webp)
Hoe maak je een lijnvolger met Arduino: Als je aan de slag gaat met robotica, bevat een van de eerste projecten die beginners maken een lijnvolger. Het is een speciale speelgoedauto met eigenschap om langs een lijn te rijden die normaal gesproken zwart van kleur is en contrasteert met de achtergrond. Let's get star
Hoe maak je een Raspberry Pi SuperComputer! 9 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
![Hoe maak je een Raspberry Pi SuperComputer! 9 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?" Hoe maak je een Raspberry Pi SuperComputer! 9 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"](https://i.howwhatproduce.com/images/001/image-1496-92-j.webp)
Hoe maak je een Raspberry Pi SuperComputer!: Op zichzelf heeft de Raspberry Pi geen indrukwekkende specificaties. Maar met de spotgoedkope prijs, zou het kopen van een aantal hiervan en het aansluiten ervan om ze te gebruiken gecombineerde verwerkingskracht mogelijk een fatsoenlijke goedkope computer kunnen maken. Er zijn meerdere