Indholdsfortegnelse:
- Forbrugsvarer
- Trin 1: Tilslut vandsensor til partikel
- Trin 2: Tilslut alarmkilde til hindbær
- Trin 3: Konfigurer Apache Server
- Trin 4: Aktiver CGI på Apache
- Trin 5: Konfigurer websiden
- Trin 6: Opret script til Raspi -kamera
Video: Sådan laver du et smart oversvømmelsesdetektionsalarmsystem ved hjælp af Raspberry Pi og Particle Argon: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
At have standard oversvømmelsessensorer er fantastisk til at forhindre massiv skade på dit hjem eller din arbejdsplads.
Men det gør det svært, hvis du ikke er hjemme for at overvære alarmen.
Selvfølgelig kan du købe dem smart
Dette oversvømmelsesalarmsystem registrerer enhver væske og udløser alarm og opdaterer websiden om oversvømmelse, som kan tilgås overalt i verden, uanset om du har en afslappende ferie eller bare er på arbejde, og du vil vide mere om status for dit hus.
Forbrugsvarer
Hindbær pi (jeg bruger model 3 B+) kører raspbian
Partikel Argon
Grove Water Sensor
Raspi kamera
Summer
Jumper ledninger
Trin 1: Tilslut vandsensor til partikel
vand sensor har 4 ben, som er GND, VCC, NC og SIG, og vi kommer til at bruge kun tre af dem
Jeg tilslutter SIG -pin til D2 på Argon.
Nu kan du starte Particle Web IDE for at skrive koden og blinke til Argon
Så vi har registreret partikelfunktionsvæske og defineret en variabel isFloodPresent, der kan kaldes fra Particle Console og få den boolske værdi af isFloodPresent og også kalde funktionsvæske til mock -test, der tager værdi 1 som input, hvilket betyder sandt for oversvømmelse (vand) til stede.
Sørg for, at du er i stand til at se den funktion og variabel fra Particle Console på din Particle Device.
Trin 2: Tilslut alarmkilde til hindbær
På breadboard kan du slutte Buzzer til Raspberry's GPIO pin
Jeg har tilsluttet mindre ende af summer til GND (PIN 6) og længere ende til pin 7 på hindbær.
Kør nu koden for at se. Vi skal bruge denne python -fil til at køre hele tiden, så den kan modtage udløserne fra webserveren og reagere i overensstemmelse hermed.
Alternativt kan du køre denne fil ved opstart på din hindbær, som du kan gøre ved at redigere /etc /systemd
og denne fil vil blive placeret i cgi -mappen på din apache -server, Jeg har lavet en ny bibliotek flood-cgi inde/var/www/html/og placeret denne.py-fil, som vil kommunikere med mit cgi-script
Trin 3: Konfigurer Apache Server
du kan installere apache-server ved at skrive sudo apt-get install apache2
når det er installeret, kan du bekræfte ved at skrive værtsnavn -I
og du får din lokale IP -adresse, og du kan gå til din browser og skulle se serveren køre
Trin 4: Aktiver CGI på Apache
du kan aktivere cgi ved at skrive sudo a2enmod cgi
Som standard er cgi_bin for apache placeret i/usr/lib/cgi-bin
det er her, du kan placere dine cgi -scripts efter at have aktiveret cgi
For at få effekt, skal du genstarte apache -serveren
Jeg ville have tilpasset bibliotek til mine cgi-scripts, så jeg oprettede bibliotek i/var/www/html/kaldet flood-cgi
For at aktivere denne mappe var jeg nødt til at lave conf -fil ved at skrive
sudo nano /etc/apache2/conf-available/flood-cgi.conf
og tilføjelse af kommandoer som vist på skærmbillede
aktiver derefter dette bibliotek ved at skrive
var/www/html $ sudo a2enconf flood-cgi
nu kan du genstarte din apache -server igen, og al cgi fra denne mappe kan læses af apache efter tilladelsen.
Trin 5: Konfigurer websiden
Til denne enkle webtjeneste bruger jeg HTML, Javascript, CSS, jquery og ajax.
Jeg har fem betjeningsetiketter, der kan klikkes på, I tilfælde af at der klikkes på tag foto fra en webside, vil det udløse funktionen til fotoknap -klik, og denne funktion ser sådan ud
$ ("#photobutton"). klik (function () {var floodDate = new Date ();
var floodImageName = "Flood_IMG_" + floodDate.toLocaleTimeString ();
$.ajax ({
url: 'flood-cgi/flood_cgi.py', metode: 'post', data: {name_for_image: floodImageName}, succes: funktion (data) {
advarsel (data, status)
$ ("#recentpic"). attr ("src", "flood-cgi/" + floodImageName + ".jpg");
}
})
});
dette vil kalde scriptet flood_cgi.py for at tage foto og gemme billede med brugerdefineret navn, der er genereret efter den aktuelle dato og klokkeslæt, og ajax indlæses op til siden.
i tilfælde af alarm kan vi bruge denne funktion
funktion callAlarm (alarmType) {
$.ajax ({
url: 'flood-cgi/alarm.cgi', metode: 'post', data: {alarm_type: alarmType}, succes: funktion (data) {alarm (data)
}, fejl: funktion (XMLHttpRequest, textStatus, throwError) {alert (throwError)}});
}
funktionen callAlarm vil blive kaldt, når der klikkes på summerens etiket, $ ("#buzzer"). klik (funktion () {callAlarm ("test");
})
nedenstående kode er, når du vil klikke på mock flood, dvs. ringe til Particle API og kalde funktionen og ændre væskeværdien 1 og kontrollere systemet, om det hele fungerer som forventet ved at udføre en mock flood -hændelse
$ ("#mockFlood"). klik (funktion () {console.log ("mock flood har anmodet");
var floodVal = 1;
$ ("#signal2"). css ("font-size", "small");
var varName = "isFloodPresent";
var deviceID = "DIT ENHED -ID";
var accessToken = "DIN ADGANGSTOKEN";
hvis (floodVal) {
$.post ("https://api.particle.io/v1/devices/" + deviceID + "/liquid? access_token =" + accessToken, {liquid: floodVal}, funktion (data, status) {
hvis (status == "succes") {
alarm ("Mock Flood har gennemført !!!");
} andet {
alert ("Beklager, der var et problem");
}
});
}
});
Disse er de vigtigste funktioner, du har brug for for at oprette forbindelse til Particle Api og din hindbær, så din hindbærpi og partikelindretning Argon kan kommunikere.
Bemærk: Jeg ville uploade al kode, men det tillader mig ikke at uploade.html -fil
Trin 6: Opret script til Raspi -kamera
vi skaber enkle.py for at tage billede, og der vil have en annotering af den aktuelle dato og klokkeslæt på det.
så vil vi oprette cgi script flood_cgi.py, så det vil blive kaldt fra internettet, og dette vil kommandere.py -fil for at tage foto.
Sørg for at starte cgi script med #! /usr/bin/env python
og også give apache tilladelse til at køre disse filer.
apache-server kører på brugerens www-data, så når vi har oprettet.py- eller.cgi-filen, skal apache være ejer af filen
sudo chown pi: www-data flood-cgi.py
og give tilladelse til at udføre
sudo chmod a+x flood-cgi.py
du bliver nødt til at gøre dette for alle filer, der skal køre fra apache -serveren.
BEMÆRK: at udsætte din hindbær for internet og give alle disse tilladelser gør din hindbær meget sårbar af sikkerhedsmæssige årsager, så strenge bruger- og tilladelser bør følges og installere firewall som ukompliceret firewall (ufw)
Anbefalede:
DIY -- Sådan laver du en edderkoprobot, der kan kontrolleres ved hjælp af smartphone ved hjælp af Arduino Uno: 6 trin
DIY || Sådan laver du en edderkoprobot, der kan styres ved hjælp af smartphone Brug af Arduino Uno: Mens du laver en edderkoprobot, kan man lære så mange ting om robotik. Ligesom at lave robotter er underholdende såvel som udfordrende. I denne video vil vi vise dig, hvordan du laver en Spider -robot, som vi kan betjene ved hjælp af vores smartphone (Androi
Sådan laver du et smart hjem ved hjælp af Arduino -kontrolrelæmodul - Idéer til hjemmeautomatisering: 15 trin (med billeder)
Sådan laver du et smart hjem ved hjælp af Arduino -kontrolrelæmodul | Idéer til hjemmeautomatisering: I dette hjemmeautomatiseringsprojekt vil vi designe et smart hjemrelæmodul, der kan styre 5 husholdningsapparater. Dette relæmodul kan styres fra mobil eller smartphone, IR -fjernbetjening eller fjernsynsfjernbetjening, manuel switch. Dette smarte relæ kan også mærke r
Sådan laver du en smart robot ved hjælp af Arduino: 4 trin
Sådan laver du en smart robot ved hjælp af Arduino: hej, jeg er arduino -maker, og i denne vejledning vil jeg vise dig, hvordan du laver en smart robot ved hjælp af arduino, hvis du kunne lide min tutorial, så overvej at støtte min youtube -kanal, der hedder arduino -maker
Sådan laver du en drone ved hjælp af Arduino UNO - Lav en quadcopter ved hjælp af mikrokontroller: 8 trin (med billeder)
Sådan laver du en drone ved hjælp af Arduino UNO | Lav en Quadcopter ved hjælp af mikrokontroller: Introduktion Besøg min Youtube -kanal En Drone er en meget dyr gadget (produkt) at købe. I dette indlæg vil jeg diskutere, hvordan jeg gør det billigt ?? Og hvordan kan du lave din egen sådan til en billig pris … Nå i Indien alle materialer (motorer, ESC'er
Sådan laver du filserver ved hjælp af Raspberry Pi: 7 trin
Sådan laver du filserver ved hjælp af Raspberry Pi: Nu om dage er det almindeligt at have flere computere i et hus med musik og videoer spredt mellem dem. En anden måde at organisere dine ting på er at opbevare det på en centraliseret server aka FILE SERVER. I denne instruks kan vi oprette en filserver