Ինքնավար բույսերի ջրման համակարգ `4 քայլ
Ինքնավար բույսերի ջրման համակարգ `4 քայլ
Anonim
Բույսերի ինքնավար ջրամատակարարման համակարգ
Բույսերի ինքնավար ջրամատակարարման համակարգ
Բույսերի ինքնավար ջրամատակարարման համակարգ
Բույսերի ինքնավար ջրամատակարարման համակարգ
Բույսերի ինքնավար ջրամատակարարման համակարգ
Բույսերի ինքնավար ջրամատակարարման համակարգ

Այս նախագիծը ներկայացնում է խելացի ինքնավար բույսերի ջրելու համակարգ: Համակարգը էներգիայի առումով ինքնավար է ՝ օգտագործելով 12 վ մարտկոց և արևային վահանակ, և ջրել գործարանը, երբ ստեղծված են ճիշտ պայմանները, լավ մտածված (հուսով եմ) անսարք համակարգով: Այն խելացի է, քանի որ այն հաղորդակցվում էր օգտվողի (օգտվողների) հետ Telegram հավելվածի միջոցով:

Համակարգի հետևած քայլերը հետևյալն են.

  • հողի ջրի պարունակությունը մշտապես վերահսկվում է.
  • եթե հողի ջրի պարունակությունը որոշակի արժեքից ցածր է (max_soil_moisture), համակարգը.

    • (?) ստուգում է, որ ջրի բաքը դատարկ չէ (և ջրելու ընթացքում) ջրահեռացման միջոցառման ընթացքում `պոմպի չորացրած վնասներից խուսափելու համար.
    • (?) ստուգում է երկու ջրելու իրադարձությունների միջև ջրի նվազագույն ժամանակահատվածի գերազանցումը: Դա արվում է, որպեսզի օրվա ընթացքում բույսերը շատ անգամ չջրվեն (ավելի լավ է ինչ -որ պահի մի փոքր չորանա), և որոշակի անվտանգություն ավելանա այն դեպքում, երբ հողի խոնավության տվիչը կոտրված է.
    • (?) սկսել ոռոգումը;
    • դադարեցնում է ոռոգումը, երբ.

      • (?) հողի ջրի պարունակությունը հասնում է որոշակի արժեքի (max_soil_moisture) կամ;
      • (?) ջրի բաքը դատարկ է, որի դեպքում ոռոգումը կվերսկսվի նորից լցվելուն պես, կամ;
      • (?) waterրելու տևողությունը գերազանցում է ջրելու յուրաքանչյուր իրադարձության համար թույլատրելի առավելագույն տևողությունը (ջրելու_մաքս_աժամանակ): Այստեղ նպատակն է խուսափել պոմպի գործարկումից մինչև ջրի բաքը դատարկվելը, եթե համակարգում առկա է արտահոսք, որը կանխելու է հողի խոնավության բարձրացումը.
  • (?) ստուգում է, որ բույսերը ջրում են առնվազն յուրաքանչյուր որոշակի ժամանակահատվածում (առավելագույնը_ ջուր), որպեսզի խուսափեն դրանց մահից, եթե օրինակ. հողի խոնավության տվիչը կոտրված է և վերադարձնում է միշտ բարձր արժեքներ.

Օգտատերը ծանուցվում է Telegram- ի հաղորդագրությունների միջոցով յուրաքանչյուր կարևոր քայլում (նշվում է): Օգտվողը կարող է ձեռքով սկիզբ դնել նաև Telegram- ի ոռոգման իրադարձությանը, նույնիսկ եթե հողի ջրի պարունակությունը տվյալ արժեքից բարձր է (max_soil_moisture): Հնարավոր է նաև միացնել և անջատել ամբողջ համակարգը, հարցնել, արդյոք համակարգը գործարկվա՞ծ է, թե՞ հողի ջրի պարունակության ներկայիս արժեքը (տես Telegram- ի նկարը):

Պարագաներ

Նյութական

Ահա համակարգի ստեղծման համար օգտագործվող ապրանքների ցանկը: Պետք է ասեմ, որ ես խթաններ չեմ ստանում Amazon- ից, որից գնվել են բոլոր ապրանքները:

Համակարգը վերահսկելու համար.

  • NodeMCU տախտակ (ESP8266) ուղեղի համար, 17.99 €
  • Ռելեի մոդուլ, 11.99 €
  • 120 նախատիպային jumper լար, 6.99 € -> նախատիպերի պատրաստում
  • 3 տախտակ, 8.99 € -> նախատիպերի պատրաստում
  • Անջրանցիկ տուփ, 10,99 €
  • 525 հատ ռեզիստորների հավաքածու, 10.99 €
  • Տպագիր PCB ՝ հացահատիկի նման միացումներով, 9,27 €
  • Էլեկտրական լարեր 20, 22 կամ 24 AWG ՝ կախված ձեր նախընտրությունից (20 -ն ավելի ամուր է, բայց որոշ միացումների համար պետք է նվազեցվի, 22 -ը լավ է, 24 -ն ավելի էժան է), 18,99 €

Էներգիայի ինքնավարության համար.

  • 12 Վ մարտկոց, 21,90 €
  • 10W wp 12V միաբյուրեղային արևային վահանակ, 23.90 €
  • 12/24V լիցքավորման վերահսկիչ, 13.99 €

Tankրի բաքի համար.

  • 12 Վ ջրի պոմպ, 16.99 €
  • DC արական/իգական միակցիչ (պոմպը միացնելու համար), 6,99 €

Սենսորներ.

  • Levelրի մակարդակի լողացող, 7.99 €
  • Հողի հզորության խոնավության տվիչ, 9.49 €
  • որոշ եղունգների լաք `հողի խոնավության տվիչի ջրամեկուսացման համար, 7.99 €;

Եվ ոռոգման համակարգը.

Ոռոգման համակարգ, 22,97 €

Ընդհանուր 237.40 € -ով: Դա էժան չէ: Բայց հիշեք, որ այն դեռ ավելի էժան է, քան նախապես կառուցված համակարգը և շատ ավելի մեծ հնարավորություններով: Բացի այդ, որոշ մասեր նախատեսված են միայն նախատիպավորման համար (15,98 €), և ես ձեռք եմ բերել բազմաթիվ բաղադրիչներ ՝ մի քանի կտորից բաղկացած խմբերով ՝ այլ նախագծերի համար, օրինակ. 525 ռեզիստորները խենթ գումար են, ձեզ պետք չեն 3 NodeMCU տախտակ, ոչ էլ 6 ռելեներ այս նախագծի համար:

Քայլ 1: Կոդ

Այս նախագիծը վերարտադրելու համար ձեզ հարկավոր են որոշ գործիքներ, որոշ նյութեր և այս նախագծի ծածկագիրը:

Կոդ

Այս նախագծից ծածկագիրը ստանալու համար կամ այն կլոնավորեք (կամ ավելի լավ ՝ պատառաքաղեք) Github պահոցից ՝ օգտագործելով GIT, և եթե չգիտեք, թե ինչ է նշանակում GIT, clone և պատառաքաղ, պարզապես ներբեռնեք այն ձեր համակարգչից ՝ օգտագործելով այս հղումը:.

Այնուհետեւ, կազմաձեւեք այն ձեր կարիքներին համապատասխան:

Telegram- ից օգտվելու համար NodeMCU- ն պետք է միացված լինի ինտերնետին: Ես դա արել եմ ՝ օգտագործելով իր WIFI մոդուլը և իմ տան WIFI- ն: Ձեր սեփական կապը կազմաձևելու համար բացեք plant_watering.ino սցենարը Arduino IDE- ում և լրացրեք ձեր wifi հավատարմագրերի բացակայող արժեքները (ենթադրում եմ, որ WiFi ունեք):

Լարային ssid = "xxxxx"; // Ձեր Wifi String մուտքի անունը = "xxxxx"; // Wifi գաղտնաբառ

Այնուհետև մենք կստեղծենք Telegram բոտ, որը օգտվողի հաշիվ է, որը ձեզ նման է, բայց իրականում ղեկավարվում է ռոբոտի կողմից (ձեր NodeMCU): Դա անելու համար հետևեք այստեղ նկարագրված քայլերին: Մի քանի բառով.

  • Բացեք Telegram (և միացեք ձեր հաշվի հետ);
  • Ստեղծեք նոր բոտ.

    • Որոնեք BotFather- ը ձեր կոնտակտներում (մուտքագրեք այն որոնման տողում) և դրա հետ զրույց բացեք (ինչպես կանեիք ցանկացած նոր կոնտակտի դեպքում);
    • Մուտքագրեք /newbot խոսակցության մեջ (դիտեք գործը և ներառեք /!)
    • Անվանեք ձեր բոտը, ինչպես ցանկանում եք, բայց վերջացրեք այն «բոտով» (օրինակ ՝ «watering_balkon_bot»);
    • Botfather- ը ձեզ տալիս է բոտ նշան, պահեք այն շատ գաղտնի (մի կիսեք այն GIT !!), մենք այն կօգտագործենք մի քանի քայլով.
    • Որոնեք այն ձեր կոնտակտներում և ուղարկեք այս հաղորդագրությունը ՝ /սկսել
    • Պատճենեք Botfather- ի վերադարձած նշանը և տեղադրեք այն ձեր plant_watering.ino սցենարի վրա ՝ այստեղ.

      Լարային նշան = "xxxxxx: xxxxxxxxxxxxxxxxxxxxx"; // Telegram bot նշան

Ձեր բոտը հիմա կենդանի է:

Ձեզ հետ շփվելու հնարավորություն տալու համար անհրաժեշտ է իմանալ ձեր զրույցի ID- ն: Քանի որ մենք ցանկանում ենք արձակուրդ դուրս գալու դեպքում բոտի ասածը կիսել այլ մարդկանց հետ, ես նախընտրում եմ դրա փոխարեն ստեղծել խմբային զրույց: Այսպիսով, ստեղծեք մեկը (Նոր խումբ), ավելացրեք ձեր բոտը ՝ որոնելով նրա անունը և ժամանակավորապես ավելացրեք IDBot անունով երրորդ բոտը: Այնուհետև անվանեք ձեր խմբային զրույցը, ինչպես ցանկանում եք: Բացեք ձեր խմբային զրույցը և մուտքագրեք /getgroupid: IDBot- ը կվերադարձնի այնպիսի թիվ, ինչպիսին է -xxxxxxxx (մի՛ մոռացեք մինուսը պատճենելիս), դա ձեր խմբային զրույցի ID- ն է:

Կարող եք նաև խնդրել /ստանալ ձեր անձնական ID- ն ստանալու համար, այնպես որ ձեր բոտը փոխարենը ուղերձներ կուղարկի ձեզ (չուղարկելով այն խմբին)

Պատճենեք ID- ն և տեղադրեք այն ձեր plant_watering.ino սցենարի վրա այստեղ ՝

int chatID = -000000000; // Սա ձեր խմբային զրույցի ID- ն է Տեղադրեք /getid- ը այստեղ, եթե ցանկանում եք, որ բոտը ուղերձներ ուղարկի անմիջապես yo- ին

Այնուհետև, հեռացրեք IDBot- ը ձեր խմբից ամեն դեպքում (մենք չենք ուզում որևէ տվյալի արտահոսք):

Վերջին քայլի համար ձեզ հարկավոր է տեղադրել CTBot և ArduinoJson գրադարանները: Դա անելու համար մուտքագրեք ctrl+maj+I, որոնեք CTBot և որոնեք CTBot- ը Ստեֆանո Լեդդայի կողմից և կտտացրեք տեղադրմանը: Այնուհետև կրկնեք ArduinoJson- ի համար և փնտրեք ArduinoJson- ը Benoit Blanchon- ի կողմից, բայց առայժմ տեղադրեք 5.13.5 տարբերակը, քանի որ CTBot- ը դեռևս համատեղելի չէ վեցերորդ տարբերակի հետ (կարող եք ստուգել այստեղ, եթե որևէ փոփոխություն կա):

Եվ վերջ, ձեր կոդը պատրաստ է: Այժմ կարող եք այն վերբեռնել NodeMCU- ում: Եթե կան որոշ սխալներ, ստուգեք, որ դուք ընտրել եք NodeMCU 1.0 որպես տախտակի տեսակը, և որ դուք օգտագործում եք ձեր գրադարանների ճիշտ տարբերակը:

Քայլ 2: Գործիքներ

Գործիքներ

Գործիքները շատ պարզ են, ես օգտագործել եմ այս նախագծի համար.

  • Eringոդման երկաթ + անագ (օրինակ ՝ 220V 60W);
  • Բազմաչափ (իմը TackLife DM01M է);
  • Հարթ պտուտակահան (փոքրն ավելի լավ է);
  • Կտրող տափակաբերան աքցան;

Եթե դրանք ունեք, կարող եք ավելացնել նաև մետաղալարեր, բայց դրանք անփոխարինելի չեն:

Քայլ 3: Հավաքում

Ժողով
Ժողով

Դուք կարող եք գտնել Fritzing- ի միջոցով մասերի հավաքումը `Gritub պահոցում Fritzing նախագիծը բացելու համար:

Նշում. NodeMCU- ն միացված է արևային լիցքի վերահսկիչին USB մալուխի միջոցով (սխեմատիկում գտնվողը չունի մեկը): Տե՛ս «Նյութ» բաժինը ՝ USB- ով արևային լիցքի վերահսկիչի օրինակ:

Ես բոլոր անհատական մասերը հասանելի դարձրի Github նախագծի ցնցող թղթապանակում (բոլորը կարելի է գտնել ինտերնետում, բացի ջրի լողացողից, քանի որ ես այն պատրաստել եմ):

Քայլ 4: Շնորհակալություններ

Ես կցանկանայի շնորհակալություն հայտնել իմ հրաշալի գործընկերոջը, որը թույլ տվեց ինձ դա անել հանգստյան օրերին: Եվ, իհարկե, այն բոլոր ստեղծողները, ովքեր հնարավոր դարձրեցին նախագիծը, ինչպես օրինակ ՝ @shurillu- ն սուպեր CTBot գրադարանի համար, EstebanP27- ը ՝ իր ձեռնարկի համար, որից ես շատ բան սովորեցի այս նախագծի համար: Նաև կցանկանայի շնորհակալություն հայտնել svgrepo- ին, որից SVG- ներն օգտագործեցի որպես լոգոյի հիմք:

Խորհուրդ ենք տալիս: