Satura rādītājs:
- Piegādes
- 1. darbība: pievienojiet ūdens sensoru daļiņai
- 2. darbība. Savienojiet trauksmes avotu ar aveņu
- 3. darbība: konfigurējiet Apache serveri
- 4. darbība: iespējojiet CGI Apache
- 5. darbība: iestatiet tīmekļa lapu
- 6. darbība: izveidojiet skriptu Raspi kamerai
Video: Kā izveidot gudru plūdu noteikšanas signalizācijas sistēmu, izmantojot Raspberry Pi un daļiņu argonu: 6 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:53
Standarta plūdu sensori ir lieliski, lai novērstu milzīgu kaitējumu jūsu mājām vai darba vietai.
Bet, ja neesat mājās, ir grūti apmeklēt modinātāju.
Protams, jūs varētu tos iegādāties gudrus
Šī plūdu signalizācijas sistēma nosaka jebkuru šķidrumu un iedarbina trauksmi un atjaunina tīmekļa vietni par plūdiem, kurai var piekļūt jebkurā vietā pasaulē neatkarīgi no tā, vai jums ir relaksējošas brīvdienas vai vienkārši strādājat, un vēlaties uzzināt par savas mājas stāvokli.
Piegādes
Raspberry pi (es izmantoju modeli 3 B+), kurā darbojas raspbian
Argona daļiņas
Grove ūdens sensors
Kamera Raspi
Signāls
Jumper vadi
1. darbība: pievienojiet ūdens sensoru daļiņai
ūdens sensoram ir 4 tapas, kas ir GND, VCC, NC un SIG, un mēs izmantosim tikai trīs no tām
Es savienoju SIG tapu ar Argon D2.
Tagad varat palaist Particle Web IDE, lai rakstītu kodu un zibspuldzi Argonam
Tātad mēs esam reģistrējuši daļiņu funkciju šķidrumu un definējuši mainīgo isFloodPresent, ko var izsaukt no Particle Console un iegūt loģisko vērtību isFloodPresent, kā arī izsaukt funkcijas šķidrumu izspēles testēšanai, kura vērtība 1 tiek ievadīta kā vērtība, kas nozīmē, ka pastāv plūdu (ūdens) klātbūtne.
pārliecinieties, ka varat redzēt šo funkciju un mainīgo no daļiņu ierīces daļiņu konsoles.
2. darbība. Savienojiet trauksmes avotu ar aveņu
Uz maizes dēļa jūs varat savienot Buzzer ar Raspberry GPIO tapu
Mazāku skaņas signāla galu esmu pievienojis GND (PIN 6), bet garāko - avenes 7. tapai.
Tagad palaidiet kodu, lai redzētu. Mums būs nepieciešams, lai šis python fails darbotos visu laiku, lai tas varētu saņemt aktivizētājus no tīmekļa servera un attiecīgi reaģēt.
Varat arī palaist šo failu aveņu palaišanas laikā, ko varat izdarīt, rediģējot /etc /systemd
un šis fails tiks ievietots jūsu apache servera cgi mapē, Esmu izveidojis jaunu direktoriju flood-cgi iekšā/var/www/html/un ievietojis šo.py failu, kas sazināsies ar manu cgi skriptu
3. darbība: konfigurējiet Apache serveri
jūs varat instalēt apache serveri, ierakstot sudo apt-get install apache2
kad tas ir instalēts, varat pārbaudīt, ierakstot resursdatora nosaukumu -I
un jūs saņemsiet savu vietējo IP adresi, un jūs varat doties uz savu pārlūkprogrammu un redzēt, ka serveris darbojas
4. darbība: iespējojiet CGI Apache
jūs varat iespējot cgi, ierakstot sudo a2enmod cgi
Pēc noklusējuma apache cgi_bin atrodas mapē/usr/lib/cgi-bin
šeit jūs varat ievietot savus cgi skriptus pēc cgi iespējošanas
lai panāktu efektu, jums ir jārestartē apache serveris
Es gribēju pielāgotu direktoriju saviem cgi skriptiem, tāpēc izveidoju direktoriju/var/www/html/ar nosaukumu Flood-cgi
lai iespējotu šo direktoriju, man bija jāizveido conf fails, ierakstot
sudo nano /etc/apache2/conf-available/flood-cgi.conf
un pievienojot komandas, kā parādīts ekrānuzņēmumā
pēc tam iespējojiet šo direktoriju, ierakstot
var/www/html $ sudo a2enconf flood-cgi
tagad jūs varat restartēt apache serveri vēlreiz, un visi cgi no šīs mapes būs redzami apache pēc atļaujas.
5. darbība: iestatiet tīmekļa lapu
Šim vienkāršajam tīmekļa pakalpojumam es izmantoju HTML, Javascript, CSS, jquery un ajax.
Man ir piecas vadības etiķetes, uz kurām var noklikšķināt, Ja no tīmekļa lapas tiek noklikšķināts uz fotoattēla uzņemšanas, tas aktivizēs fotoattēlu pogas klikšķa funkciju, un šī funkcija izskatās šādi
$ ("#photobutton"). click (function () {var FloDate = new Date ();
var floodImageName = "Flood_IMG_" + floodDate.toLocaleTimeString ();
$.ajax ({
url: 'flood-cgi/flood_cgi.py', metode: "post", dati: {name_for_image: floodImageName}, panākumi: funkcija (dati) {
brīdinājums (dati, statuss)
$ ("#Recentpic"). attr ("src", "flood-cgi/" + floodImageName + ".jpg");
}
})
});
tas izsauks skriptu flood_cgi.py, lai uzņemtu fotoattēlu, un saglabā attēlu ar pielāgotu nosaukumu, kas ģenerēts pēc pašreizējā datuma un laika, un ajax tiek ielādēts līdz lapai.
trauksmes gadījumā mēs varam izmantot šo funkciju
funkcija callAlarm (alarmType) {
$.ajax ({
url: 'flood-cgi/alarm.cgi', metode: "post", dati: {alarm_type: alarmType}, panākumi: funkcija (dati) {brīdinājums (dati)
}, kļūda: funkcija (XMLHttpRequest, textStatus, throError) {alert (throError)}});
}
funkcija callAlarm tiks izsaukta, noklikšķinot uz skaņas signāla etiķetes, $ ("#buzzer"). noklikšķiniet uz (funkcija () {callAlarm ("tests");
})
zemāk esošais kods ir tad, ja vēlaties noklikšķināt uz izspēles plūdiem, t.i., izsaucot daļiņu API un izsaucot funkciju un mainot šķidruma vērtību 1, un pārbaudot sistēmu, vai viss darbojas kā paredzēts, veicot izspēles plūdus
$ ("#mockFlood"). click (function () {console.log ("izspēles plūdi ir pieprasījuši");
var floodVal = 1;
$ ("#signal2"). css ("font-size", "small");
var varName = "isFloodPresent";
var deviceID = "JŪSU IERĪCES ID";
var accessToken = "JŪSU PIEEJAMĪBA";
if (floodVal) {
$.post ("https://api.particle.io/v1/devices/" + deviceID + "/liquid? access_token =" + accessToken, {liquid: floodVal}, funkcija (dati, statuss) {
ja (statuss == "panākumi") {
brīdinājums ("Izspēles plūdi ir veikuši !!!");
} vēl {
brīdinājums ("Atvainojiet, radās problēma");
}
});
}
});
Šīs ir galvenās funkcijas, kas nepieciešamas, lai izveidotu savienojumu ar Particle Api un aveņu, lai jūsu aveņu pi un daļiņu ierīce Argon varētu sazināties.
piezīme. Es vēlējos augšupielādēt visu kodu, taču tas neļauj augšupielādēt.html failu
6. darbība: izveidojiet skriptu Raspi kamerai
mēs veidojam vienkāršu.py, lai uzņemtu attēlu, un tajā būs pašreizējā datuma un laika anotācija.
tad mēs izveidosim cgi skriptu flood_cgi.py, lai tas tiktu izsaukts no tīmekļa, un tas komandēs.py failu, lai uzņemtu fotoattēlu.
noteikti sāciet cgi skriptu ar #! /usr/bin/env python
un arī dod apache atļauju palaist šos failus.
apache serveris darbojas ar lietotāja www datiem, tāpēc, tiklīdz mēs izveidojam.py vai.cgi failu, apache ir jābūt faila īpašniekam
sudo chown pi: www-data flood-cgi.py
un dod atļauju izpildīt
sudo chmod a+x flood-cgi.py
jums tas būs jādara visiem failiem, kas jāpalaiž no apache servera.
PIEZĪME: pakļaujot savu aveņu internetam un piešķirot visas šīs atļaujas, jūsu avenes ir ļoti neaizsargātas drošības apsvērumu dēļ, tāpēc ir jāievēro stingras lietotāja un atļaujas un jāinstalē ugunsmūris, piemēram, vienkāršs ugunsmūris (ufw)
Ieteicams:
Kā izveidot gudru māju, izmantojot Arduino vadības releja moduli - Mājas automatizācijas idejas: 15 soļi (ar attēliem)
Kā izveidot gudru māju, izmantojot Arduino vadības releja moduli | Mājas automatizācijas idejas: Šajā mājas automatizācijas projektā mēs izstrādāsim viedās mājas releja moduli, kas var kontrolēt 5 sadzīves tehniku. Šo releja moduli var vadīt, izmantojot mobilo vai viedtālruni, IR tālvadības pulti vai televizora tālvadības pulti, manuālo slēdzi. Šis viedais relejs var arī uztvert r
Kā izveidot gudru robotu, izmantojot Arduino: 4 soļi
Kā izveidot gudru robotu, izmantojot Arduino: Sveiki, es esmu arduino veidotājs, un šajā apmācībā es jums parādīšu, kā izveidot gudru robotu, izmantojot arduino, ja jums patika mana apmācība, tad apsveriet iespēju atbalstīt manu YouTube kanālu ar arinoino veidotāju
Kā izveidot gudru spoguli, izmantojot Raspberry Pi 4: 10 soļus
Kā izveidot viedo spoguli ar Raspberry Pi 4: Šajā rokasgrāmatā mēs redzēsim, kā izveidot viedo spoguli, izmantojot pārstrādātus gabalus, piemēram, attēlu rāmi, veco monitoru un stikla stiklu. Elektroniskajām sastāvdaļām, kuras es iegādājos šeit www.lcsc .com
Kā izveidot kustības noteikšanas sistēmu ar Arduino: 7 soļi
Kā izveidot kustību noteikšanas sistēmu ar Arduino: izveidojiet kustības un klātbūtnes veidošanas skaitītāju, izmantojot spalvu HUZZAH, kas ieprogrammēta ar Arduino un kuru darbina Ubidots. Efektīva fiziskās kustības un klātbūtnes noteikšana viedās mājās un viedā ražošanā var būt ļoti noderīga lietojumprogrammās, sākot no
Kā izveidot gudru čemodānu ar Raspberry Pi: 4 soļi
Kā izveidot gudru čemodānu ar Raspberry Pi: Šajā apmācībā es paskaidrošu, kā jūs varat izveidot gudru čemodānu ar Raspberry Pi. Kad esat pabeidzis, jūs varēsit izsekot savam čemodānam visā pasaulē un nosvērt bez skalas. Sāksim