- Kinakailangan ang Mga Bahagi:
- HC-SR04 Ultrasonic Sensor:
- ESP8266 Wi-Fi Module:
- Circuit Diagram at Paliwanag:
- Paliwanag sa Code:
- "; if (distansya <5) {webpage + =" Basurahan ay Puno ";} iba pa {webpage + =" Ang basurahan ay Walang laman ";} webpage + ="
- Pagsubok at Paglabas ng Proyekto:
Sa DIY na ito, gagawa kami ng isang IOT based dumpster / sampah Monitoring System na magsasabi sa amin na kung ang basurahan ay walang laman o puno sa pamamagitan ng webserver at malalaman mo ang katayuan ng iyong 'Trash Can' o 'Dumpsters' mula sa saanman sa mundo sa Internet. Ito ay magiging lubhang kapaki-pakinabang at maaaring mai-install sa Trash Cans sa mga pampublikong lugar pati na rin sa bahay.
Sa IOT Project na ito, ginagamit ang isang Ultrasonic Sensor para sa pagtuklas kung ang basurahan ay puno ng basura o hindi. Dito naka-install ang Ultrasonic Sensor sa tuktok ng Basurahan at susukatin ang distansya ng basura mula sa tuktok ng basurahan at maaari kaming magtakda ng isang halaga ng threshold ayon sa laki ng basurahan. Kung ang distansya ay magiging mas mababa sa halagang threshold na ito, nangangahulugang ang basurahan ay puno ng basura at mai-print namin ang mensahe na "Puno ang Basket" sa webpage at kung ang distansya ay magiging higit sa halagang threshold na ito, i-print namin ang ang mensaheng "Basket ay Walang laman". Dito itinakda namin ang halaga ng Threshold na 5cm sa Program code. Gagamitin namin ang module na Wi-Fi ng ESP8266para sa pagkonekta ng Arduino sa webserver. Dito ginamit namin ang Local webserver upang maipakita ang pagtatrabaho ng Garbage Monitoring System na ito.
Kinakailangan ang Mga Bahagi:
- Arduino Uno (maaari mong gamitin ang anumang iba pa)
- Module ng Wi-Fi ng ESP8266
- HC-SR04 Ultrasonic sensor
- 1K Resistors
- Breadboard
- Mga kumokonekta na mga wire
HC-SR04 Ultrasonic Sensor:
Ginagamit ang Ultrasonic Sensor upang sukatin ang distansya na may mataas na kawastuhan at matatag na pagbabasa. Maaari itong sukatin ang distansya mula 2cm hanggang 400cm o mula sa 1 pulgada hanggang 13 talampakan. Nagpapalabas ito ng isang ultrasound wave sa dalas ng 40KHz sa hangin at kung ang bagay ay darating sa kanyang paraan pagkatapos ay babalik ito pabalik sa sensor. Sa pamamagitan ng paggamit ng oras na iyon na kinakailangan upang maabot ang bagay at bumalik, maaari mong kalkulahin ang distansya.
Ang sensor ng ultrasonic ay may apat na mga pin. Dalawa ang VCC at GND na makakonekta sa 5V at ang GND ng Arduino habang ang dalawa pang pin ay Trig at Echo pin na konektado sa anumang mga digital na pin ng Arduino. Ang trig pin ay magpapadala ng signal at ang Echo pin ay gagamitin upang matanggap ang signal. Upang makabuo ng isang senyas ng ultrasound, kakailanganin mong gawing mataas ang Trig pin para sa halos 10us na magpapadala ng isang 8 cycle sonic burst sa bilis ng tunog at pagkatapos na maabot ang bagay, tatanggapin ito ng Echo pin.
Dagdag na suriin ang mga proyekto sa ibaba upang maunawaan nang maayos ang pagtatrabaho ng Ultrasonic sensor at upang masukat ang distansya ng anumang bagay na gumagamit nito:
- Pagsukat sa Distansya na Batay sa Arduino gamit ang Ultrasonic Sensor
- Pagsukat sa Distansya gamit ang HC-SR04 at AVR Microcontroller
ESP8266 Wi-Fi Module:
Ang ESP8266 ay isang module na Wi-Fi na magbibigay sa iyong mga proyekto ng pag- access sa Wi-Fi o internet. Ito ay isang napaka-murang aparato ngunit ito ay gumawa ng iyong mga proyekto napakalakas. Maaari itong makipag-usap sa anumang microcontroller at gawing wireless ang mga proyekto. Nasa listahan ito ng karamihan sa mga nangungunang aparato sa platform ng IOT. Ito ay tumatakbo sa 3.3V at kung bibigyan mo ito ng 5V pagkatapos ay makakakuha ito ng pinsala.
Ang ESP8266 ay may 8 mga pin; ang VCC at CH-PD ay konektado sa 3.3V upang paganahin ang wifi. Ang mga pin ng TX at RX ay mananagot para sa komunikasyon ng ESP8266 sa Arduino. Gumagana ang pin ng RX sa 3.3V kaya kailangan mong gumawa ng isang divider ng boltahe para dito tulad ng ginawa namin sa aming proyekto.
Circuit Diagram at Paliwanag:
Una sa lahat ay ikonekta namin ang ESP8266 sa Arduino. Ang ESP8266 ay tumatakbo sa 3.3V at kung bibigyan mo ito ng 5V mula sa Arduino pagkatapos ay hindi ito gagana nang maayos at maaari itong makapinsala. Ikonekta ang VCC at ang CH_PD sa 3.3V pin ng Arduino. Gumagana ang RX pin ng ESP8266 sa 3.3V at hindi ito makikipag-usap sa Arduino kapag ikonekta namin ito nang direkta sa Arduino. Kaya, kakailanganin nating gumawa ng isang divider ng boltahe para dito. Tatlong 1k resistors na konektado sa serye ang gagawa ng gawain para sa amin. Ikonekta ang RX sa pin 11 ng Arduino sa pamamagitan ng mga resistors tulad ng ipinakita sa figure sa ibaba at pati na rin ang TX ng Arduino sa pin 10 ng Arduino.
Ngayon ay oras na upang ikonekta ang HC-SR04 ultrasonic sensor sa Arduino. Ang mga koneksyon ng ultrasonikong sensor sa Arduino ay napakasimple. Ikonekta ang VCC at ang lupa ng ultrasonic sensor sa 5V at ang lupa ng Arduino. Pagkatapos ikonekta ang TRIG at ECHO pin ng ultrasonic sensor sa pin 8 at 9 ng Arduino ayon sa pagkakabanggit.
Paliwanag sa Code:
Bago i-upload ang code, tiyaking nakakonekta ka sa Wi-Fi ng iyong aparato na ESP8266. Maaari mong suriin ang buong code sa seksyon ng Code sa ibaba, ang code ay naipaliwanag ng mabuti ng mga komento, karagdagang ipinaliwanag din namin ang ilang mahahalagang pag-andar sa ibaba.
Babasahin muna ng Arduino ang Ultrasonic Sensor. Magpapadala ito ng isang signal ng ultrasonic sa bilis ng tunog kapag gagawin naming mataas ang TRIG pin para sa 10us. Ang signal ay babalik pagkatapos maabot ang bagay at maiimbak namin ang tagal ng oras ng paglalakbay sa variable na pinangalanang tagal . Pagkatapos ay makakalkula namin ang distansya ng bagay (basura sa aming kaso) sa pamamagitan ng paglalapat ng isang formula at iimbak namin ito sa variable na pinangalanang distansya .
digitalWrite (trigPin, LOW); delayMicroseconds (2); digitalWrite (trigPin, MATAAS); delayMicroseconds (10); digitalWrite (trigPin, LOW); tagal = pulseIn (echoPin, HIGH); distansya = tagal * 0.034 / 2;
Para sa pag-print ng output sa webpage sa web browser, kakailanganin naming gumamit ng HTML program. Kaya, lumikha kami ng isang string na pinangalanang webpage at naimbak ang output dito. Upang masabi kung ang basurahan ay walang laman o hindi, naglagay kami ng isang kundisyon doon. Kung ang distansya ay magiging mas mababa sa 5cm pagkatapos ay ipapakita nito ang "Basket ay Puno" sa webpage at kung ang distansya ay magiging mas malaki sa 5cm pagkatapos ay ipapakita nito ang mensahe na "Basket ay Empty" sa webpage.
kung (esp8266.available ()) {kung (esp8266.find ("+ IPD,")) {pagkaantala (1000); int connectionId = esp8266.read () - 48; String webpage = "
IOT Garbo Monitoring System
"; webpage + =""; if (distansya <5) {webpage + =" Basurahan ay Puno ";} iba pa {webpage + =" Ang basurahan ay Walang laman ";} webpage + ="
";Ang sumusunod na code ay magpapadala at magpapakita ng data sa webpage. Ang data, naimbak namin sa string na pinangalanang 'webpage', ay mai-save sa string na pinangalanang 'command' . Pagkatapos ay babasahin ng ESP8266 ang karakter nang paisa-isa mula sa 'utos' at i-print ito sa webpage.
String sendData (String command, const int timeout, boolean debug) {String response = ""; esp8266.print (utos); mahabang oras int = millis (); habang ((time + timeout)> millis ()) {habang (esp8266.available ()) {char c = esp8266.read (); tugon + = c; }} kung (debug) {Serial.print (tugon); } tugon sa pagbalik; }
Pagsubok at Paglabas ng Proyekto:
Matapos i-upload ang code, buksan ang Serial Monitor at ipapakita nito sa iyo ang isang IP address tulad ng ipinakita sa ibaba.
I-type ang IP address na ito sa iyong browser, ipapakita nito sa iyo ang output tulad ng ipinakita sa ibaba. Kakailanganin mong i-refresh muli ang pahina kung nais mong makita muli na ang basurahan ay walang laman o hindi.
Kaya't kung paano ito gumagana ng Basurang Pagsubaybay sa Sistema, ang proyektong ito ay maaaring karagdagang napahusay sa pamamagitan ng pagdaragdag ng ilang mga tampok dito tulad ng maaari naming itakda ang isa pang mensahe kapag ang Trash Can ay kalahati na napunan o maaari kaming magpalitaw ng isang Email / SMS upang alertuhan ang gumagamit kapag Basura Puno na ang basket.