Talaan ng mga Nilalaman:

Autonomous Plant Water System: 4 na Hakbang
Autonomous Plant Water System: 4 na Hakbang

Video: Autonomous Plant Water System: 4 na Hakbang

Video: Autonomous Plant Water System: 4 na Hakbang
Video: No need for a garden, grow eggplant at home with many fruits and high yield 2024, Nobyembre
Anonim
Sistema ng Watering Autonomous na Plant
Sistema ng Watering Autonomous na Plant
Sistema ng Watering Autonomous na Plant
Sistema ng Watering Autonomous na Plant
Sistema ng Watering Autonomous na Plant
Sistema ng Watering Autonomous na Plant

Ipinapakita ng proyektong ito ang isang matalinong autonomous na sistema ng pagtutubig ng halaman. Ang sistema ay nagsasarili sa enerhiya na gumagamit ng isang 12v na baterya at isang solar panel, at dinidilig ang halaman kung ang lahat ng mga tamang kondisyon ay nakatakda na, na may isang mahusay na naisip (sana) na mabibigo-proof na system. Matalino ito sapagkat nakipag-usap ito sa (mga) gumagamit sa pamamagitan ng Telegram app.

Ang mga hakbang na sinusundan ng system ay ang mga sumusunod:

  • ang nilalaman ng tubig sa lupa ay laging sinusubaybayan;
  • kung ang nilalaman ng tubig sa lupa ay mas mababa sa isang tiyak na halaga (max_soil_moisture), ang system:

    • (?) suriin ang tangke ng tubig ay walang laman (at habang) ang kaganapan sa pagtutubig upang maiwasan ang anumang pinsala sa pump na tumatakbo na tuyo;
    • (?) suriin ang minimum na panahon ng tubig sa pagitan ng dalawang mga kaganapan sa pagtutubig ay lumampas. Ginagawa ito upang maiwasan ang pagdidilig ng mga halaman ng maraming beses sa araw (mas mabuti na magkaroon ng kaunting pagkatuyo sa ilang mga punto), at upang magdagdag ng kaligtasan kung sakaling masira ang sensor ng kahalumigmigan sa lupa;
    • (?) simulan ang patubig;
    • ihihinto ang patubig tuwing:

      • (?) ang nilalaman ng tubig sa lupa ay umabot sa isang tiyak na halaga (max_soil_moisture) o;
      • (?) ang tangke ng tubig ay walang laman, kung saan ang kaso ng irigasyon ay magpapatuloy kaagad kapag napunan ito muli, o;
      • (?) ang tagal ng pagtutubig ay lumampas sa maximum na tagal na pinapayagan para sa bawat kaganapan sa pagtutubig (watering_max_time). Ang layunin dito ay upang maiwasan ang pagpapatakbo ng bomba hanggang sa walang laman ang tangke ng tubig kung mayroong isang tagas sa system na pipigilan ang pagtaas ng kahalumigmigan ng lupa;
  • (?) suriin na ang mga halaman ay natubigan ng hindi bababa sa bawat naibigay na tagal ng oras (max_wo_water), upang maiwasan silang mamatay kung hal. ang sensor ng kahalumigmigan ng lupa ay nasira at bumalik na laging mataas ang halaga;

Ang gumagamit ay aabisuhan ng mga mensahe ng Telegram sa bawat mahalagang hakbang (na-denote?). Maaari ring mag-trigger ng manu-mano ang isang gumagamit ng isang kaganapan sa patubig mula sa Telegram, kahit na ang nilalaman ng tubig sa lupa ay mas mataas kaysa sa ibinigay na halaga (max_soil_moisture). Posible ring buksan at i-OFF ang buong system, tanungin kung ang system ay nakabukas at tumatakbo, o tanungin ang kasalukuyang halaga ng nilalaman ng tubig sa lupa (tingnan ang Telegram snapshot).

Mga gamit

Materyal

Narito ang isang listahan ng mga produktong ginamit upang mabuo ang system. Dapat kong sabihin na hindi ako nakakatanggap ng anumang mga insentibo mula sa Amazon, kung saan binili ang lahat ng mga produkto.

Upang makontrol ang system:

  • NodeMCU board (ESP8266) para sa utak, 17.99 €
  • Relay module, 11.99 €
  • 120 prototyping jumper wires, 6.99 € -> prototyping
  • 3 mga breadboard, 8.99 € -> prototyping
  • Hindi tinatagusan ng tubig na kahon, 10.99 €
  • 525 piraso ng resistors kit, 10.99 €
  • Naka-print na PCB na may mga koneksyon na katulad ng isang breadboard, 9.27 €
  • Ang mga naka-straced na wire na elektrikal 20, 22 o 24 AWG depende sa iyong kagustuhan (ang 20 ay mas matatag ngunit kailangang mabawasan para sa ilang mga koneksyon, 22 ay mabuti, 24 ay mas mura), 18.99 €

Para sa awtonomiya sa enerhiya:

  • 12V Baterya, 21.90 €
  • 10W wp 12V monocrystalline solar panel, 23.90 €
  • 12 / 24V charge controller, 13.99 €

Para sa tangke ng tubig:

  • 12V water pump, 16.99 €
  • DC male / female konektor (upang ikonekta ang bomba), 6.99 €

Ang mga sensor:

  • Floater sa antas ng tubig, 7.99 €
  • Kapasentipikong sensor ng kahalumigmigan sa lupa, 9.49 €
  • ilang mga kuko polish para sa waterproofing ang lupa kahalumigmigan sensor, 7.99 €;

At ang sistema ng irigasyon:

Sistema ng patubig, 22.97 €

Para sa isang kabuuang 237.40 €. Hindi yan mura! Ngunit tandaan na mas mura pa rin ito kaysa sa paunang built na system, at may higit pang mga kakayahan! Gayundin, ang ilang mga bahagi ay para lamang sa prototyping (15.98 €), at bumili ako ng maraming mga bahagi sa mga pangkat ng maraming mga piraso para sa iba pang mga proyekto, hal. Ang 525 resistors ay isang nakakalokong halaga, hindi mo kailangan ng 3 NodeMCU boards, o 6 na relay para sa proyektong ito.

Hakbang 1: Code

Upang muling gawin ang proyektong ito, kakailanganin mo ng ilang mga tool, ilang materyal, at ang code mula sa proyektong ito.

Code

Upang makuha ang code mula sa proyektong ito, i-clone ito (o mas mabuti, tinidor ito) mula sa imbakan ng Github gamit ang GIT, at kung hindi mo alam kung ano ang ibig sabihin ng GIT, clone at fork, i-download lamang ito sa iyong computer gamit ang link na ito?.

Pagkatapos, i-configure ito sa iyong mga pangangailangan!

Upang magamit ang Telegram, kailangang makakonekta ang NodeMCU sa internet. Ginawa ko ito gamit ang WIFI module at ang aking WIFI sa bahay. Upang mai-configure ang iyong sariling koneksyon, buksan ang script ng plant_watering.ino sa Arduino IDE, at punan ang mga nawawalang halaga para sa iyong mga kredensyal sa wifi (Ipinapalagay kong mayroon kang WiFi):

String ssid = "xxxxx"; // Pangalan ng iyong Wifi String pass = "xxxxx"; // Wifi Password

Pagkatapos, magse-set up kami ng isang Telegram bot, na isang account ng gumagamit na medyo kagaya mo, ngunit talagang pinatakbo ng isang robot (iyong NodeMCU). Upang magawa ito, sundin ang mga hakbang na inilarawan dito. Sa ilang mga salita:

  • Buksan ang Telegram (at kumonekta sa iyong account);
  • Lumikha ng isang bagong bot:

    • Paghahanap ng BotFather sa iyong mga contact (i-type ito sa search bar), at buksan ang isang pag-uusap kasama nito (tulad ng gagawin mo sa anumang bagong contact);
    • I-type / newbot sa pag-uusap (panoorin ang kaso at isama ang /!)
    • Pangalanan ang iyong bot ayon sa gusto mo, ngunit tapusin ito sa "bot" (hal. "Watering_balcony_bot");
    • Binibigyan ka ng Botfather ng isang token ng bot, panatilihing lihim ito (huwag ibahagi ito gamit ang GIT !!), gagamitin namin ito sa ilang mga hakbang;
    • Hanapin ito sa iyong mga contact, at ipadala ito sa mensaheng ito: / simulan
    • Kopyahin ang token na ibinalik ng Botfather at i-paste ito sa iyong script ng plant_watering.ino dito:

      String token = "xxxxxx: xxxxxxxxxxxxxxxxxxxxx"; // Telegram bot token

Ang iyong bot ay buhay na ngayon!

Upang mabigyan ito ng kakayahang makipag-usap sa iyo, kailangang malaman ang iyong ID ng pag-uusap. Dahil nais naming maibahagi ang sinasabi ng bot sa ibang mga tao kung sakaling lumabas kami sa bakasyon, mas gusto kong gumawa ng isang panggrupong chat sa halip. Kaya lumikha ng isa (Bagong Pangkat), idagdag ang iyong bot sa pamamagitan ng paghahanap sa pangalan nito, at magdagdag ng isang pangatlong bot na pinangalanan pansamantalang IDBot. Pagkatapos ay pangalanan ang iyong panggrupong chat ayon sa gusto mo. Buksan ang iyong panggrupong chat, at i-type / getgroupid. Ibabalik ng IDBot ang isang numero tulad ng -xxxxxxxxx (huwag kalimutan ang minus kapag kinopya mo ito!), Iyon ang iyong group chat ID!

Maaari ka ring magtanong / makakuha upang makuha ang iyong personal na ID, kaya't ang iyong bot ay magpapadala ng mga mensahe nang direkta sa iyo sa halip (hindi ito ipinapadala sa pangkat)

Kopyahin ang ID, at i-paste ito sa iyong script ng plant_watering.ino dito:

int chatID = -000000000; // Ito ang ID ng iyong panggrupong chat I-paste ang / getid dito sa halip kung nais mo ang bot na magpadala ng mga mensahe nang direkta sa yo

Pagkatapos, alisin ang IDBot mula sa iyong pangkat kung sakali (hindi namin nais ang anumang data na na-leak).

Para sa huling hakbang, kakailanganin mong i-install ang mga aklatan ng CTBot at ArduinoJson. Upang magawa ito, i-type ang ctrl + maj + I, maghanap sa CTBot, at hanapin ang CTBot ni Stefano Ledda, at i-click ang install. Pagkatapos ulitin para sa ArduinoJson, at hanapin ang ArduinoJson ni Benoit Blanchon, ngunit i-install ang bersyon na 5.13.5 sa ngayon dahil ang CTBot ay hindi katugma sa pang-anim na bersyon (maaari mong suriin dito kung mayroong anumang mga pagbabago).

At iyon lang, handa na ang iyong code! Maaari mo na itong i-upload sa NodeMCU! Kung mayroong ilang mga error, suriin na pinili mo ang NodeMCU 1.0 bilang uri ng board, at gamitin mo ang tamang bersyon para sa iyong mga aklatan.

Hakbang 2: Mga tool

Mga kasangkapan

Napakadali ng mga tool, ginamit ko para sa proyektong ito:

  • Isang soldering iron + lata (hal. 220V 60W);
  • Isang multimeter (ang akin ay isang TackLife DM01M);
  • Isang patag na distornilyador (maliliit ang mas mahusay);
  • Pagputol ng mga plier;

Kung mayroon ka ng mga ito maaari ka ring magdagdag ng ilang mga wire striper, ngunit hindi sila kailangang-kailangan.

Hakbang 3: Assembly

Assembly
Assembly

Maaari mong matagpuan ang pagpupulong ng mga bahagi gamit ang Fritzing upang buksan ang proyekto ng Fritzing sa Repository ng Github.

NB: ang NodeMCU ay konektado sa solar charge controller ng isang USB cable (ang isa sa eskematiko ay walang isa). Tingnan ang seksyon ng Materyal para sa isang halimbawa ng isang solar charge controller na may isang USB.

Ginawa kong magagamit ang lahat ng mga pasadyang bahagi sa fritzing folder mula sa proyekto ng Github (lahat ay matatagpuan sa internet maliban sa water floater sapagkat ginawa ko ito).

Hakbang 4: Mga Pagkilala

Nais kong kilalanin ang aking kahanga-hangang kasosyo na hinayaan akong gawin ito sa katapusan ng linggo! At syempre lahat ng gumagawa na ginawang posible ang proyekto, tulad ng @shurillu para sa sobrang library ng CTBot, ang EstebanP27 para sa kanyang tutorial na kung saan marami akong natutunan para sa proyektong ito! Nais ko ring pasalamatan ang svgrepo na kung saan ginamit ko ang mga SVG bilang batayan para sa logo.

Inirerekumendang: