Բովանդակություն:
- Քայլ 1: Նյութեր
- Քայլ 2: Շրջանի պատրաստում
- Քայլ 3: Ստեղծեք տվյալների բազա
- Քայլ 4: Գրեք տվիչների տվյալները տվյալների բազայում
- Քայլ 5: Ձեր IP- ի ցուցադրումը էկրանին
- Քայլ 6. Սենսորների չափում յուրաքանչյուր 10 րոպեն մեկ
- Քայլ 7: Կայքի պատրաստում
- Քայլ 8: Ստեղծեք հետին պլան
- Քայլ 9: Ստեղծեք Front-end
- Քայլ 10. akingերմոցի պատրաստում
- Քայլ 11: Ամեն ինչ միասին հավաքելը
Video: Մինի ծառայություն ՝ 11 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:48
Որպես ուսանող, ես վատ սովորություն ունեմ մոռանալ բաները: Դրա պատճառով, եթե ես ուզում եմ աճեցնել որոշակի տիպի բույս, ես սովորաբար մոռանում եմ դրա մասին և այն մահանում է, քանի որ չկա մեկը, ով հոգ կտանի դրա մասին:
Ես կփորձեմ ուղղել այս խնդիրը Mini-Serre- ով: Mini-Serre- ը այգեգործության մոնիտորինգի ավտոմատացված համակարգ է, որը տարբեր տեսակի սենսորների տվյալներ է ուղարկում Raspberry Pi- ով աշխատող վեբ սերվերին: Այս կերպ օգտվողը կարող է վերահսկել իրենց բույսերը կայքում, որտեղ էլ որ դրանք լինեն: Այս հայեցակարգը մշակվում է որպես վերջնական նախագիծ մուլտիմեդիա և հաղորդակցական տեխնոլոգիաների առաջին տարվա ընթացքում, Howest Kortrijk, Բելգիա:
Քայլ 1: Նյութեր
Այս նախագիծը կառուցելու համար ձեզ հարկավոր են հետևյալ տարրերը.
Էլեկտրոնիկա
- Ազնվամորի պի 3 - հավաքածու
- Breadboard
- Արականից տղամարդու միակցիչներ
- Արականից իգական միակցիչներ
- Dallas 18B20 (ջերմաստիճանի տվիչ)
- Ֆոտոռեզիստորների հայտնաբերում Լուսազգայուն լուսային տվիչ
- MCP3008
- Պոտենցիոմետր
- LCD- էկրան
- Ռեզիստորներ
- Կապույտ LED
- RGB LED
Պատյան:
13. Central Park kweekkas (https://www.brico.be/nl/tuin-buitenleven/moestuin/…) 14. Փայտե ափսե (պատյան ներքևում) 15. Եղունգներ 16. Պտուտակներ
Գործիքներ:
17. Մուրճ 18. Սղոց 19. Պտուտակահան 20. Գայլիկոն
Քայլ 2: Շրջանի պատրաստում
Քայլ 2 -ում մենք պատրաստվում ենք միացնել այս նախագծի համար: Սա բացարձակ նվազագույնն է, որն անհրաժեշտ է, եթե ցանկանում եք, որ այն աշխատի: Շրջանի պատճենը կազմելու համար օգտագործեք ցրտահարման սեղանը և դիագրամը: Սա այն է, որտեղ ձեզ անհրաժեշտ են բոլոր էլեկտրական նյութերը 1 -ին քայլից:
Տեղեկատվություն սխեմայի մասին
Մենք ունենք 2 սենսոր, որոնք միացված են MCP3008- ին, որոնք լույսի և հողի խոնավության տվիչներն են: Temperatureերմաստիճանի տվիչն ունի թվային ելք և օգտագործում է GPIO- պին Raspberry Pi- ի վրա:
Լրացուցիչ:
Ես նաև տեղադրեցի LCD- էկրան, որը հետագայում ավելի դյուրին կդարձնի միանալ Raspberry Pi- ին ՝ առանց ձեր նոութբուքին միանալու անհրաժեշտության: Սա անհրաժեշտ չէ, բայց խիստ առաջարկվում է:
Քայլ 3: Ստեղծեք տվյալների բազա
Շատ կարևոր է ձեր տվյալները սենսորներից կազմակերպված, բայց նաև ապահով կերպով պահել: Ահա թե ինչու ես որոշեցի իմ տվյալները պահել տվյալների բազայում: Այս կերպ միայն ես կարող եմ մուտք գործել այս տվյալների բազան (անձնական հաշվի միջոցով) և այն կազմակերպված պահել: Վերևի նկարում դուք կարող եք գտնել իմ սխեման իմ տվյալների շտեմարանից, իսկ ներքևում ՝ տվյալների բազան տվյալների բազայի ծրագիր արտահանելու ֆայլը, օրինակ ՝ MySQL- ը:
Տվյալների բազա-ծրագիր Կարևոր է, որ մեր տվյալների բազան կարողանա ինքնուրույն աշխատել մեր Raspberry Pi- ից: Դուք կարող եք դա անել ՝ ներբեռնելով MySQL կամ MariaDB ՝ Raspberry Pi- ի համար: Դուք նախ ցանկանում եք տվյալների բազան կազմել ձեր համակարգչի վրա MySQL Workbench- ում: Հաջորդը դուք արտահանում եք այս տվյալների բազան որպես ինքնամփոփ ֆայլ: Այժմ միացեք ձեր Raspberry Pi տվյալների շտեմարանին MySQL Workbench- ի միջոցով և վերականգնեք տվյալների բազան այստեղ: Այժմ դուք ունեք ձեր Raspberry Pi- ի տվյալների բազան:
Քայլ 4: Գրեք տվիչների տվյալները տվյալների բազայում
Ձեր Raspberry Pi- ի տվյալների բազան գործարկելուց հետո մենք ցանկանում ենք, որ մեր տվիչները կարողանան իրենց տվյալները պահել դրանում: Մենք կարող ենք դա անել ՝ ստեղծելով 3 առանձին սցենարներ (ինչը արվում է PyCharm- ում): PyCharm- ի մեջ ներառված գեղեցիկ առանձնահատկությունն այն է, որ դուք կարող եք միանալ ձեր Pi- ին և այս կերպ կարող եք մուտք գործել ձեր տվյալների բազան և գրել անմիջապես դրան: Տվյալները նաև ուղղակիորեն կարդացվում են Raspberry Pi- ի կողմից, և LED- ները համապատասխանաբար կլուսավորվեն այն, ինչ ձեզ հարկավոր է:
Կապույտ LED լուսավորվում է. Հողը բավականաչափ խոնավ չէ: RGB LED լուսավորվում է կանաչով. Ամեն ինչ կարգին է: RGB LED լուսավորվում է կարմիրով. Չափազանց տաք է, բացեք տանիքը, որպեսզի այն մի փոքր սառչի: RGB LED լուսավորությունը կապույտ է. շատ ցուրտ է, փակեք տանիքը, եթե այն բաց է:
Դուք կարող եք ներբեռնել բոլոր սցենարները իմ github պահոցից ՝
Նշում. Ես օգտագործեցի իմ անձնական մուտքի տվյալները տվյալների շտեմարանների համար, այնպես որ գուցե ստիպված լինեք դրանք փոխել ձերին համապատասխան:
Նշում. DB1 թղթապանակը պարունակում է «տվյալների բազա» դաս, որը ներմուծված է ձեր տվյալների շտեմարանին միացվող կոդի մեջ:
Քայլ 5: Ձեր IP- ի ցուցադրումը էկրանին
Theուցադրումը ցույց է տալիս IP հասցեն, որով աշխատում է ձեր Raspberry Pi- ն, այս կերպ Դուք կարող եք առանց լարերի հեշտությամբ միանալ ձեր Raspberry Pi- ին: Ես նաև դրա համար գրեցի սցենար, որը կարդում է ձեր pi- ի IP- ն և ցուցադրում այն էկրանին (նկատի ունեցեք, որ ձեր GPIO- կապումներն համընկնում են, հակառակ դեպքում այն կարող է չաշխատել): Raspberry Pi- ն այս սցենարը ինքնաբերաբար գործարկում է գործարկման ժամանակ: Դուք կարող եք դա անել ՝ ավելացնելով որոշակի ծածկագիր ձեր Raspberry Pi- ի rc.local ֆայլում: Դուք կարող եք այնտեղ մուտքագրել ՝ մուտքագրելով «sudo nano /etc/rc.local», նախքան կոդի վերջին տողը, որը ցանկանում եք ավելացնել «Python3.5/home/user/filelocation &»:
Սցենարը կարող եք գտնել այստեղ ՝
Նշում. Վերջում «&» - ն կստիպի սցենարը մեկ անգամ գործարկել և անմիջապես դադարեցնել այն, որպեսզի այլ սցենարներ նույնպես կարողանան գործարկել:
Քայլ 6. Սենսորների չափում յուրաքանչյուր 10 րոպեն մեկ
Մենք չենք ցանկանում, որ մեր տվյալների շտեմարանը լցվի երբևէ 0.001 վայրկյան sensordata- ով, հակառակ դեպքում դա կդժվարացնի տվյալների շտեմարանի համար անընդհատ պահպանել մուտքի բոլոր տվյալները և այն կարող է խափանվել: Ահա թե ինչու ես ավելացրեցի մի հատված «crontab» - ին Raspberry Pi- ում: Crontab- ը ծրագիր է, որը հետևում է պլանավորված առաջադրանքներին, ուստի այս կերպ կարող եք պարզապես գործարկել սցենարը յուրաքանչյուր 10 րոպեն մեկ անգամ:
Ինչպես կարգավորել այն
Դուք կարող եք դա կարգավորել ՝ նախ մուտքագրելով Raspberry Pi հրամանի տողը 'crontab -e', սա բացում է crontab- ի խմբագիրը: Ոլորեք ներքև մինչև ֆայլի ներքևը և ավելացրեք 3 տող, յուրաքանչյուրը յուրաքանչյուր տվիչի համար:
' */10 * * * * python3.5/home/user/filepath/sensor1'
Նշում. «*/10» - ն այն 10 րոպեն է, որը մենք ցանկանում ենք լինել յուրաքանչյուր չափման միջև: Այն կոդը, որը ես մուտքագրել եմ դրանից հետո, այն Python- ի ձեր գործարկած տարբերակն է և այն ֆայլը, որը ցանկանում եք գործարկել, այնպես որ յուրաքանչյուր սենսորի համար պետք է գրեք մեկ տող, քանի որ դրանք գոյություն ունեն 3 տարբեր ֆայլերից:
Քայլ 7: Կայքի պատրաստում
Ես իմ կայքը պատրաստեցի Atom կոչվող ծրագրում: Դա շատ պարզ է օգտագործել ծրագիրը և խորհուրդ է տրվում, եթե դուք բավականին նոր եք գրում ինձ նման HTML և CSS:
Այս հղումով կարող եք գտնել բոլոր օգտագործված ծածկագիրն ու պատկերները ՝
Ես պատրաստեցի վեբ կայքի դիմացի հատվածը Visual Studio Code- ում, այնպես որ, եթե դուք չեք պատրաստվում HTML և CSS ինքներդ պատրաստել, կարող եք պարզապես ֆայլերը ավելացնել Atom- ի փոխարեն Visual Studio Code- ի նոր թղթապանակում:
Քայլ 8: Ստեղծեք հետին պլան
Հետին և առջևի ծայրերը կլինեն այն բաները, որոնք իրականում ինչ-որ բան կպատահեն մեր ստեղծած կայքում: Back-end- ում մենք կրկին կապվում ենք մեր տվյալների բազայի հետ և տվյալների բազայում տվյալների տեղադրման փոխարեն: Այժմ մենք կկարդանք տարբեր տվիչների բոլոր տվյալները և Socket. IO- ի միջոցով մենք կուղարկենք դրանք մեր առջևի մասում, որպեսզի կարողանանք դրանք ցուցադրել կայքում:
Դուք կարող եք գտնել ծածկագրի ծածկագիրը այստեղ ՝
Նշում. Մենք օգտագործում ենք տվյալների բազայի դասը, որը մենք օգտագործել էինք նախկինում, այնպես որ ես դա չեմ ներառել այս շտեմարանում:
Քայլ 9: Ստեղծեք Front-end
-Ակատային հատվածն այն է, որտեղ մենք համատեղում ենք մեր HTML և CSS ծածկագիրը ՝ JavaScript- ի և մեր Back-end- ի հետ միասին: Իմ գրած JavaScript- ը փորձում է կապ հաստատել back-end- ի հետ, որը պետք է գործարկվի: Այժմ Back-end- ը մեզ կուղարկի տվիչների բոլոր տվյալները, և մենք կարող ենք JavaScript- ում կատարել մի քանի գործառույթ, որոնք խմբագրում են HTML ֆայլը, որպեսզի այն համապատասխանի մեր ընթացիկ արժեքներին:
JavaScript- ը կարելի է գտնել այստեղ ՝
Նշում. Համոզվեք, որ ձեր HTML- ում կապում եք ձեր JavaScript- ի վայրի ճիշտ թղթապանակին, հակառակ դեպքում այն կարող է չաշխատել:
Քայլ 10. akingերմոցի պատրաստում
Ես Brico- ից գնել եմ պատրաստված փաթեթ ՝
Պարզապես հետևեք փաթեթին տրվող քայլերին: Սա անելուց հետո մենք այնքան էլ պատրաստ չենք այնտեղ տեղադրել մեր Raspberry Pi- ն: Սկզբում մենք պետք է «հատակ» կամ հատակ պատրաստենք ջերմոցի համար, դուք կարող եք դա անել ՝ վերցնելով փայտե ափսե և չափելով, թե որքան մեծ պետք է լինի այն տեղավորելու համար: Ես նախ պատրաստեցի փայտե շրջանակ, որպեսզի փայտե ափսեն հանգստանալու բան ունենա:
Քայլ 11: Ամեն ինչ միասին հավաքելը
Մենք գրեթե պատրաստ ենք: Պարզապես այս վերջին քայլը, և դուք պատրաստ եք գնալ: Վերցրեք Raspberry Pi- ն և ջերմոցը, մի քանի անցք կատարեք, որպեսզի կարողանաք LED- ները տեղադրել դրա միջով, անցք բացեք ցուցադրման համար և անցք Raspberry Pi- ի սնուցման աղբյուրի համար: Տեղադրեք ամեն ինչ ջերմոցում, միացրեք Pi- ն և ամեն ինչ կարգին է: Դուք ունեք ձեր սեփական ջերմոցը:
Խորհուրդ ենք տալիս:
Ինտերնետային ծառայություն. 3 քայլ
Ինտերնետ սերվո. Այսպիսով, ես մտածեցի մի միջոց, որը թույլ չի տա առնետներին ուտել թռչունների սնունդ: Սև առնետը ակտիվ է միայն մթության մեջ, այնպես որ մենք պետք է փակենք բի
MCU Ինտերնետ ծառայություն մուտք գործելով IFTTT - Ameba Arduino. 3 քայլ
MCU Ինտերնետ ծառայություն մուտք գործելով IFTTT - Ameba Arduino. Ինտերնետ ծառայություն մուտք գործելը հեշտ աշխատանք է խելացի սարքի համար, ինչպիսիք են android հեռախոսը, պլանշետը կամ համակարգիչը, բայց միկրոկոնտրոլերների համար այնքան էլ հեշտ չէ, քանի որ այն սովորաբար պահանջում է ավելի լավ կապ և մշակման հզորություն: Այնուամենայնիվ, մենք կարող ենք բեռնաթափել
Վերահսկել 2 ծառայություն ՝ օգտագործելով անալոգային ջիստիկ. 5 քայլ (նկարներով)
Վերահսկել 2 ծառայություն ՝ օգտագործելով անալոգային ջոյսթիկ: Բարև տղերք, սա իմ առաջին խրատականն է, և այս գրառման մեջ ես կիսում եմ, թե ինչպես օգտագործել անալոգային ջոյսթիկը ՝ Arduino UNO- ի միջոցով սերվերին վերահսկելու համար: Ես կփորձեմ հնարավորինս պարզ բացատրել, հուսով եմ, որ ձեզ դուր կգա: այն
Խելացի ծառայություն. 7 քայլ
Smart Serre. Այս ձեռնարկում ես ձեզ ցույց կտամ, թե ինչպես կարող եք կատարել լիովին ավտոմատացված ձմեռանոց ՝ օգտագործելով Raspberry Pi- ն: Սկսենք
Ստացեք անվճար VoIP հեռախոսային ծառայություն Կանադայում `3 քայլ
Ձեռք բերեք անվճար VoIP հեռախոսային ծառայություն Կանադայում. VOIP- ը Voice over IP- ն է կամ Voice over Internet Protocol- ը `ինտերնետի նման IP ցանցերի օգտագործումը` հեռախոսային զանգերի ուղղորդման և սովորական ցամաքային կապի միջոցով, որը հայտնի է նաև որպես POTS (պարզ հին հեռախոսային ծառայություն): Այս կարգավորումը կարող է ամբողջովին անվճար լինել ՝ օգտագործելով «փափուկ հեռախոսահամար