Sisällysluettelo:
- Tarvikkeet
- Vaihe 1: Liitä vesianturi hiukkasiin
- Vaihe 2: Liitä hälytyslähde vadelmaan
- Vaihe 3: Määritä Apache -palvelin
- Vaihe 4: Ota CGI käyttöön Apachessa
- Vaihe 5: Määritä verkkosivu
- Vaihe 6: Luo skripti Raspi -kameralle
Video: Kuinka tehdä älykäs tulvanilmaisinhälytysjärjestelmä Raspberry Pi: n ja argonhiukkasen avulla: 6 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:00
Tavallisten tulva -anturien avulla voit estää kotisi tai työpaikkasi massiiviset vauriot.
Mutta se vaikeuttaa, jos et ole kotona osallistumassa hälytykseen.
Tietenkin voit ostaa ne älykkäästi
Tämä tulvahälytysjärjestelmä havaitsee nesteen ja laukaisee hälytyksen ja päivittää tulvaa käsittelevän verkkosivun, johon pääsee kaikkialta maailmasta, olitpa sitten rentouttavalla lomalla tai vain töissä ja haluat tietää talosi tilasta.
Tarvikkeet
Raspberry pi (käytän mallia 3 B+) käynnissä raspbian
Argonhiukkaset
Grove -vesianturi
Raspi kamera
Summeri
Hyppyjohdot
Vaihe 1: Liitä vesianturi hiukkasiin
vesianturissa on 4 nastaa, jotka ovat GND, VCC, NC ja SIG ja aiomme käyttää vain kolmea niistä
Liitän SIG -nastan D2: een Argonissa.
Nyt voit käynnistää Particle Web IDE: n kirjoittaaksesi koodin ja salaman Argonille
Joten olemme rekisteröineet hiukkasfunktion nesteen ja määrittäneet muuttujan isFloodPresent, joka voidaan kutsua hiukkaskonsolista ja saada isFloodPresentin boolean -arvo, ja kutsua myös funktionestettä pilkkatestaukseen, joka ottaa arvon 1 tuloksi, mikä tarkoittaa tulvaa (vettä).
varmista, että näet kyseisen toiminnon ja muuttujan hiukkaslaitteesi hiukkaskonsolista.
Vaihe 2: Liitä hälytyslähde vadelmaan
Leipälaudalla voit liittää Buzzerin Raspberryn GPIO -nastaan
Olen liittänyt summerin pienemmän pään GND: hen (PIN 6) ja pidemmän pään vadelman nastaan 7.
Suorita nyt koodi nähdäksesi. Tarvitsemme tämän python -tiedoston olevan käynnissä koko ajan, jotta se voi vastaanottaa liipaisimet verkkopalvelimelta ja vastata sen mukaisesti.
Vaihtoehtoisesti voit suorittaa tämän tiedoston vadelmasi käynnistyksen yhteydessä, minkä voit tehdä muokkaamalla /etc /systemd
ja tämä tiedosto sijoitetaan apache -palvelimesi cgi -kansioon, Olen tehnyt uuden hakemiston flood-cgi sisälle/var/www/html/ja asettanut tämän.py-tiedoston, joka kommunikoi cgi-skriptini kanssa
Vaihe 3: Määritä Apache -palvelin
voit asentaa apache-palvelimen kirjoittamalla sudo apt-get install apache2
kun se on asennettu, voit vahvistaa kirjoittamalla isäntänimen -I
ja saat paikallisen IP -osoitteesi ja voit siirtyä selaimeesi ja nähdä palvelimen käynnissä
Vaihe 4: Ota CGI käyttöön Apachessa
Voit ottaa cgi: n käyttöön kirjoittamalla sudo a2enmod cgi
Oletuksena apachen cgi_bin sijaitsee/usr/lib/cgi-bin
tähän voit laittaa cgi -skriptisi cgi: n käyttöönoton jälkeen
saadaksesi vaikutuksen, sinun on käynnistettävä apache -palvelin uudelleen
Halusin mukautetun hakemiston cgi-skripteilleni, joten loin hakemiston/var/www/html/nimeltään flood-cgi
Tämän hakemiston käyttöön ottamiseksi minun oli tehtävä conf -tiedosto kirjoittamalla
sudo nano /etc/apache2/conf-available/flood-cgi.conf
ja lisää komentoja kuvakaappauksen mukaisesti
ota tämä hakemisto käyttöön kirjoittamalla
var/www/html $ sudo a2enconf Flood-cgi
Nyt voit käynnistää apache -palvelimesi uudelleen ja kaikki tämän kansion cgi -tiedostot ovat luettavissa apachen luvan jälkeen.
Vaihe 5: Määritä verkkosivu
Tässä yksinkertaisessa verkkopalvelussa käytän HTML-, Javascript-, CSS-, jquery- ja ajax -palveluita.
Minulla on viisi napsautettavaa kontrollitarraa, Jos valokuvaa napsautetaan verkkosivulta, se laukaisee valokuvapainikkeen napsautustoiminnon ja tämä toiminto näyttää tältä
$ ("#photobutton"). click (function () {var floodDate = new Date ();
var floodImageName = "Flood_IMG_" + floodDate.toLocaleTimeString ();
$.ajax ({
url: 'flood-cgi/flood_cgi.py', menetelmä: 'post', data: {name_for_image: floodImageName}, menestys: toiminto (data) {
hälytys (tiedot, tila)
$ ("#Recentpic"). attr ("src", "flood-cgi/" + floodImageName + ".jpg");
}
})
});
tämä kutsuu flood_cgi.py -skriptin ottamaan valokuvan ja tallentaa kuvan mukautetulla nimellä, joka on luotu nykyisen päivämäärän ja kellonajan mukaan, ja ajax latautuu sivulle.
Hälytyksen sattuessa voimme käyttää tätä toimintoa
toiminto callAlarm (alarmType) {
$.ajax ({
url: 'flood-cgi/alarm.cgi', menetelmä: 'post', data: {alarm_type: alarmType}, menestys: toiminto (data) {hälytys (data)
}, error: function (XMLHttpRequest, textStatus, throError) {alert (throError)}});
}
toiminto callAlarm soitetaan, kun summerin tarraa napsautetaan, $ ("#summeri"). napsauta (function () {callAlarm ("test");
})
alla oleva koodi on, kun haluat napsauttaa pilkkutulvaa eli soittaa Particle API: lle ja kutsua funktion ja muuttaa nestearvoa 1 ja tarkistaa, toimiiko koko järjestelmä odotetulla tavalla suorittamalla pilkkutulva
$ ("#mockFlood"). click (function () {console.log ("pilkata tulva on pyytänyt");
var FloVV = 1;
$ ("#signal2"). css ("font-size", "small");
var varName = "isFloodPresent";
var deviceID = "LAITTEEN TUNNUS";
var accessToken = "SINUN KÄYTTÖÖNOTTO";
if (floodVal) {
$.post ("https://api.particle.io/v1/devices/" + deviceID + "/liquid? access_token =" + accessToken, {neste: floodVal}, toiminto (tiedot, tila) {
if (status == "menestys") {
hälytys ("Mock Flood on suorittanut !!!");
} muuta {
hälytys ("Anteeksi, tapahtui ongelma");
}
});
}
});
Nämä ovat tärkeimmät toiminnot, jotka sinun täytyy muodostaa yhteys Particle Api: n ja vadelmasi kanssa, jotta vadelma pi ja hiukkaslaite Argon voivat kommunikoida.
Huomautus: Halusin ladata kaiken koodin, mutta se ei salli minun ladata.html -tiedostoa
Vaihe 6: Luo skripti Raspi -kameralle
luomme yksinkertaisen.py kuvan ottamiseksi ja siinä on merkinnät nykyisestä päivämäärästä ja kellonajasta.
sitten luomme cgi -komentosarjan flood_cgi.py, joten se kutsutaan verkosta ja tämä komentaa.py -tiedoston ottamaan valokuvan.
Muista aloittaa cgi -komentosarja #-merkillä! /usr/bin/env python
ja anna myös apachelle lupa suorittaa nämä tiedostot.
apache-palvelin käyttää käyttäjän www-dataa, joten kun luomme.py- tai.cgi-tiedoston, apachen on oltava tiedoston omistaja
sudo chown pi: www-data flood-cgi.py
ja antaa luvan suorittaa
sudo chmod a+x flood-cgi.py
sinun on tehtävä tämä kaikille tiedostoille, jotka on suoritettava apache -palvelimelta.
HUOMAUTUS: altistamalla vadelmasi Internetille ja antamalla kaikki nämä käyttöoikeudet, vadelmasi on erittäin haavoittuva turvallisuussyistä, joten tiukkoja käyttäjiä ja käyttöoikeuksia tulee noudattaa ja asentaa palomuuri, kuten mutkaton palomuuri (ufw)
Suositeltava:
Kuinka tehdä älykäs robotti Arduinolla: 4 vaihetta
Kuinka tehdä älykäs robotti Arduinon avulla: Hei, olen arduino -valmistaja ja tässä opetusohjelmassa aion näyttää sinulle, kuinka tehdä älykäs robotti käyttämällä arduinoa, jos pidit opetusohjelmastani, harkitse sitten YouTube -kanavani nimeltä arduino maker
IoT -pohjainen älykäs puutarhanhoito ja älykäs maatalous ESP32: 7 askeleen avulla
IoT -pohjainen älykäs puutarhanhoito ja älykäs maatalous ESP32: n avulla: Maailma muuttuu ajan ja maatalouden tavoin. Nykyään ihmiset integroivat elektroniikkaa kaikilla aloilla, eikä maatalous ole poikkeus tähän. Tämä elektroniikan yhdistäminen maataloudessa auttaa viljelijöitä ja puutarhoja hoitavia ihmisiä
Kuinka tehdä älykäs USB -LED KOTONA: 9 vaihetta
Kuinka tehdä älykäs USB -LED KOTONA: Hei ystävä, Tämä älykäs LED, jota voit käyttää USB: n kanssa. se on erittäin hyödyllistä Aloitetaan
Kuinka tehdä älykäs kukkaruukku: 8 vaihetta
Kuinka tehdä älykäs kukkaruukku: Tiedätkö, mikä motivoi ihmisiä luomaan ensimmäisen kaupungin? Se on maatalous. Tässä projektissa teemme 3D-painetun kukkaruukun, johon mahtuu pieni keskikokoinen kasvi, jonka ulkopuolella on LED-näyttö, joka osoittaa
Kuinka tehdä älykäs matkalaukku Vadelma Pi: llä: 4 vaihetta
Kuinka tehdä älykäs matkalaukku Raspberry Pi: llä: Tässä opetusohjelmassa aion selittää, kuinka voit tehdä älykkään matkalaukun Raspberry Pi: n avulla. Aloita