- Nepieciešamās sastāvdaļas:
- HC-SR04 ultraskaņas sensors:
- ESP8266 Wi-Fi modulis:
- Shēmas shēma un skaidrojums:
- Koda skaidrojums:
- "; if (attālums <5) {webpage + =" Miskaste ir pilna ";} else {webpage + =" Miskaste ir tukša ";} webpage + ="
- Projekta pārbaude un rezultāts:
Šajā DIY mēs izveidosim IOT balstītu atkritumu savākšanas / atkritumu uzraudzības sistēmu, kas mums pateiks, ka caur tīmekļa serveri atkritumu tvertne ir tukša vai pilna, un jūs varat uzzināt savas “atkritnes” vai “atkritumu tvertnes” statusu no jebkur pasaulē, izmantojot internetu. Tas būs ļoti noderīgi, un to var uzstādīt atkritumu tvertnēs sabiedriskās vietās, kā arī mājās.
Šajā IOT projektā ultraskaņas sensoru izmanto, lai noteiktu, vai atkritumu tvertne ir piepildīta ar atkritumiem. Šeit ultraskaņas sensors ir uzstādīts atkritumu tvertnes augšdaļā un izmērīs atkritumu attālumu no atkritumu tvertnes augšdaļas, un mēs varam iestatīt sliekšņa vērtību atbilstoši atkritumu tvertnes izmēram. Ja attālums būs mazāks par šo sliekšņa vērtību, tas nozīmē, ka atkritumu tvertne ir pilna ar atkritumiem, un mēs tīmekļa lapā izdrukāsim ziņojumu “Grozs ir pilns” un, ja attālums būs lielāks par šo sliekšņa vērtību, tad mēs izdrukāsim ziņojumu “Grozs ir tukšs”. Šeit mēs esam iestatījuši sliekšņa vērtību 5 cm programmas kodā. Mēs izmantosim ESP8266 Wi-Fi modulipar Arduino pievienošanu tīmekļa serverim. Šeit mēs izmantojām vietējo tīmekļa serveri, lai parādītu šīs atkritumu uzraudzības sistēmas darbību.
Nepieciešamās sastāvdaļas:
- Arduino Uno (jūs varat izmantot jebkuru citu)
- ESP8266 Wi-Fi modulis
- HC-SR04 Ultraskaņas sensors
- 1K rezistori
- Maizes dēlis
- Savienojošie vadi
HC-SR04 ultraskaņas sensors:
Ultraskaņas sensoru izmanto, lai mērītu attālumu ar augstu precizitāti un stabiliem rādījumiem. Tas var izmērīt attālumu no 2 cm līdz 400 cm vai no 1 collas līdz 13 pēdām. Tas gaisā izstaro ultraskaņas viļņu frekvenci 40KHz, un, ja objekts nonāks ceļā, tas atgriezīsies pie sensora. Izmantojot laiku, kas nepieciešams objekta sitienam un atgriešanās brīdim, jūs varat aprēķināt attālumu.
Ultraskaņas sensoram ir četras tapas. Divas ir VCC un GND, kas tiks savienotas ar Arduino 5V un GND, bet pārējās divas tapas ir Trig un Echo tapas, kas tiks savienotas ar visām Arduino digitālajām tapām. Sprūda tapa nosūtīs signālu, un signāla saņemšanai tiks izmantota atbalss tapa. Lai ģenerētu ultraskaņas signālu, Trig pin būs jāpadara augsts apmēram 10us, kas ar skaņas ātrumu sūtīs 8 ciklu skaņas sprādzienu, un pēc objekta sitiena to saņems Echo pin.
Turpmāk pārbaudiet zemāk esošos projektus, lai pareizi izprastu ultraskaņas sensora darbību un izmērītu jebkura objekta attālumu, izmantojot to:
- Arduino bāzes attāluma mērīšana, izmantojot ultraskaņas sensoru
- Attāluma mērīšana, izmantojot HC-SR04 un AVR mikrokontrolleru
ESP8266 Wi-Fi modulis:
ESP8266 ir Wi-Fi modulis, kas jūsu projektiem nodrošinās piekļuvi Wi-Fi vai internetam. Tā ir ļoti lēta ierīce, taču tā padarīs jūsu projektus ļoti spēcīgus. Tas var sazināties ar jebkuru mikrokontrolleru un padarīt projektus bezvadu. Tas ir IOT platformas vadošo ierīču sarakstā. Tas darbojas ar 3,3 V, un, ja jūs to piešķirsiet 5 V, tad tas iegūs zaudējumus.
ESP8266 ir 8 tapas; VCC un CH-PD tiks savienoti ar 3.3V, lai iespējotu wifi. TX un RX tapas būs atbildīgas par ESP8266 saziņu ar Arduino. RX tapa darbojas ar 3,3 V, tāpēc jums būs jāizveido sprieguma dalītājs, kā mēs to izdarījām mūsu projektā.
Shēmas shēma un skaidrojums:
Vispirms mēs savienosim ESP8266 ar Arduino. ESP8266 darbojas ar 3,3 V, un, ja jūs to piešķirat 5 V no Arduino, tas nedarbosies pareizi, un tas var sabojāt. Pievienojiet VCC un CH_PD Arduino 3,3 V tapai. ESP8266 RX tapa darbojas ar 3.3V, un tā nesazināsies ar Arduino, kad mēs to tieši savienosim ar Arduino. Tātad, mums tam būs jāizveido sprieguma dalītājs. Trīs virknē savienoti 1k rezistori darīs darbu mūsu labā. Savienojiet RX ar Arduino tapu 11 caur rezistoriem, kā parādīts zemāk redzamajā attēlā, kā arī Arduino TX ar Arduino tapu 10.
Tagad ir pienācis laiks savienot ultraskaņas sensoru HC-SR04 ar Arduino. Ultraskaņas sensora savienojumi ar Arduino ir ļoti vienkārši. Pievienojiet VCC un ultraskaņas sensora zemi 5V un Arduino zemei. Pēc tam savienojiet ultraskaņas sensora TRIG un ECHO tapas attiecīgi ar Arduino 8. un 9. tapu.
Koda skaidrojums:
Pirms koda augšupielādes pārliecinieties, vai ir izveidots savienojums ar ierīces ESP8266 Wi-Fi. Pilnu kodu varat pārbaudīt zemāk sadaļā Kods, kods ir labi izskaidrots ar komentāriem, tālāk mēs arī izskaidrojām dažas svarīgas funkcijas.
Arduino vispirms nolasīs ultraskaņas sensoru. Tas nosūtīs ultraskaņas signālu ar skaņas ātrumu, kad mēs TRIG tapu padarīsim augstu par 10us. Pēc objekta trieciena signāls atgriezīsies, un mēs saglabāsim ceļa laika ilgumu mainīgajā nosauktajā ilgumā . Tad mēs aprēķināsim objekta (mūsu gadījumā atkritumu) attālumu, izmantojot formulu, un to uzglabāsim mainīgajā nosauktajā attālumā .
digitalWrite (trigPin, LOW); kavēšanāsMikrosekundes (2); digitalWrite (trigPin, HIGH); kavēšanāsMikrosekundes (10); digitalWrite (trigPin, LOW); ilgums = pulseIn (echoPin, HIGH); attālums = ilgums * 0,034 / 2;
Lai izdrukātu izvadi tīmekļa pārlūkprogrammā, mums būs jāizmanto HTML programmēšana. Tātad, mēs esam izveidojuši virkni ar nosaukumu webpage un saglabājuši tajā izvadi. Lai uzzinātu, vai atkritumu tvertne ir tukša vai nav, mēs esam piemērojuši nosacījumu. Ja attālums būs mazāks par 5 cm, tad vietnē tiks parādīts “Grozs ir pilns” un, ja attālums būs lielāks par 5 cm, tad vietnē tiks parādīts ziņojums “Grozs ir tukšs”.
if (esp8266.available ()) {if (esp8266.find ("+ IPD,")) {aizkavēšanās (1000); int savienojumsId = esp8266.lasīt () - 48; Virknes vietne = "
IOT atkritumu uzraudzības sistēma
"; vietne + =""; if (attālums <5) {webpage + =" Miskaste ir pilna ";} else {webpage + =" Miskaste ir tukša ";} webpage + ="
";Šis kods nosūtīs un parādīs datus tīmekļa lapā. Dati, kurus mēs glabājām virknē ar nosaukumu “webpage”, tiks saglabāti virknē ar nosaukumu “komanda” . Pēc tam ESP8266 rakstzīmi pa vienam nolasīs no komandas un izdrukās to tīmekļa lapā.
String sendData (virkne komanda, const int taimauts, Būla atkļūdošana) {String response = ""; esp8266.print (komanda); ilgs int laiks = milis (); while ((laiks + taimauts)> milis ()) {while (esp8266.available ()) {char c = esp8266.read (); atbilde + = c; }} if (atkļūdot) {Serial.print (atbilde); } atgriešanās atbilde; }
Projekta pārbaude un rezultāts:
Pēc koda augšupielādes atveriet sērijas monitoru, un tas parādīs IP adresi, kā parādīts zemāk.
Ierakstiet šo IP adresi pārlūkprogrammā, tā parādīs izvadi, kā parādīts zemāk. Jums būs vēlreiz jāatsvaidzina lapa, ja vēlaties vēlreiz redzēt, ka atkritumu tvertne ir tukša vai nav.
Tādējādi, kā darbojas šī atkritumu uzraudzības sistēma, šo projektu var vēl vairāk uzlabot, pievienojot tajā vēl dažas funkcijas, piemēram, mēs varam iestatīt vēl vienu ziņojumu, kad miskaste ir puse piepildīta, vai arī mēs varam izraisīt e-pastu / SMS, lai brīdinātu lietotāju par atkritni Grozs ir pilns.