Բովանդակություն:

Windows- ի ավտոմատ երանգներ ՝ 6 քայլ (նկարներով)
Windows- ի ավտոմատ երանգներ ՝ 6 քայլ (նկարներով)

Video: Windows- ի ավտոմատ երանգներ ՝ 6 քայլ (նկարներով)

Video: Windows- ի ավտոմատ երանգներ ՝ 6 քայլ (նկարներով)
Video: Թոփ 5 նախապես տեղադրված օգտակար Windows ծրագրեր 2024, Հուլիսի
Anonim
Image
Image
Windows- ի ավտոմատ երանգներ
Windows- ի ավտոմատ երանգներ
Windows- ի ավտոմատ երանգներ
Windows- ի ավտոմատ երանգներ

Մի բառ առջևում

Ես տեսել եմ բազմաթիվ ձեռնարկներ, թե ինչպես կարելի է ավտոմատացնել ձեռքով երանգներն ու շերտավարագույրները, և այս մեկում մենք ավտոմատացնելու ենք էլեկտրական երանգները: Մենք լուսաբանելու ենք շարունակական հոսանքի (DC) էլեկտրական շարժիչներով աշխատող էլեկտրական երանգները, որոնք բացվում կամ փակվում են ՝ հակադարձելով հոսանքի բևեռականությունը:

Չնայած էլեկտրական երանգներ գնելու դեպքում դուք կստանաք որոշակի ավտոմատացում, կան պատճառներ ինքնավարությունն ինքնուրույն կատարելու համար.

* նրանց մոտ կարող եք ունենալ միայն անջատիչ ՝ վեր/վար կառավարման համար

* դա ավելի էժան է (որոշ ընկերություններ առաջարկում են առաջադեմ ավտոմատացում ՝ շատ լրացուցիչ $ $)

* ավելի ճկուն, դուք կարող եք ծրագրավորել դրանք բացել կամ փակել տարբեր հանգամանքներում, մենք կսովորենք Python- ում վեբ սերվեր պատրաստելու մասին, որը միանալու է bluetooth ինտերֆեյսի երանգներին և բացահայտելու ստվերները վերահսկելու API- ն, մենք նաև ինտեգրվելու ենք այն կարող է անել այնպիսի բաներ, ինչպիսիք են ՝ ժամանակի գրաֆիկով ստվերները կառավարելը կամ սենսորային մուտքի միջոցով վերահսկելը

Սա կլինի միջանկյալ ձեռնարկ, ձեզ հարկավոր են այնպիսի հմտություններ, ինչպիսիք են զոդումը, arduino ծրագրավորումը, հիմնական էլեկտրոնային ըմբռնումը և սերվերի վրա ծառայություններ տեղադրելու, դրանք գործարկելու և կազմաձևելու որոշ եղանակներ:

Եթե ձեզ դուր եկան youtube- ի տեսանյութերը, կարող եք բաժանորդագրվել այստեղ:

Քայլ 1: Պահանջվող բաներ

Պահանջվող բաներ
Պահանջվող բաներ
Պահանջվող բաներ
Պահանջվող բաներ

Հուշում. Մեծացրեք նկարները `դրանց վրա նկարագրական պիտակները դիտելու համար

Մասեր:

1. arduino pro mini 16Mhz 5V տիպ (eBay) 2 $

2. HC-05 bluetooth մոդուլ (eBay) 3.3 $

3. 5 V Երկու ալիքի ռելեներ (eBay) 1.6 $

4. NPN տրանսիստոր, որը գնահատվում է առնվազն մի քանի ուժեղացուցիչի համար, ես օգտագործել եմ Հուշում 142T <1 $

5. 220 օմ, 0.25 Վտ հզորություն <1 $

6. դիոդ, 1N4004 <1 $

7. լարեր `մասերը <1 $ միացնելու համար

8. PCB (eBay) <1 $ հատի համար

9. 2 x KF301-2P միակցիչ պտուտակով միակցիչ (eBay) <1 $ հատի համար

10. արու-էգ ցատկող լարեր (eBay) 1,2 $ x 2 մի փունջի համար

11. L7805CV 5V կարգավորիչ (eBay) <1 $ հատի համար

12. 5.5 մմ DC Power Plug Jack Socket արական և իգական (eBay) <1 $ հատի համար

13. Heat Shrink Tubing կամ մեկուսիչ ժապավեն

14. Սնուցման աղբյուր, սնուցումը պետք է գնահատվի 12 Վ և 2-3 Ա լարման համար:

Ես փրկեցի իմը 12 V 2 A լիցքավորիչից (eBay) 3.2 $

14. Տերմինալային շերտի բլոկ (eBay) 15c

15. ապահովիչների սեփականատեր (Aliexpress) 1 հատ / հատ

16. ապահովիչ (eBay) <1 $ հատի համար

17. արական և իգական PCB միակցիչներ (eBay) <1 $ այն ամենի համար, ինչ մեզ անհրաժեշտ է

18. AC հոսանքի մալուխ

19. պլաստիկ տուփի պարիսպ, իմը 6 x 19 սմ էր

Գործիքներ:

1. ironոդման երկաթ `զոդումով

2. Լարի կտրիչ

3. Տարբեր պտուտակահաններ

4. Դանակ

5. ուժային փորվածք և 8,5 մմ տրամաչափիչ

6. USB սերիական FTDI ադապտեր FT232RL ՝ arduino pro mini ծրագրավորելու համար

7. ArduinoIDE- ով նոթբուք տեղադրված է arduino- ն ծրագրավորելու համար

8. Կրակայրիչ, եթե օգտագործում եք Heat Shrink Tubing

9. Սմարթֆոն, որն ունակ է bluetooth միացման (օրինակ ՝ android եմ օգտագործում) `տեղադրված bluetooth ծրագրակազմով

10. Լրացուցիչ `խոշորացույց, բազմաչափ, տափակաբերան աքցան

Քայլ 2: Նախապատրաստական աշխատանքներ

Պատրաստուկներ
Պատրաստուկներ
Պատրաստուկներ
Պատրաստուկներ
Պատրաստուկներ
Պատրաստուկներ

Էլեկտրամատակարարման և պլաստիկ տուփի ընտրություն

Նախևառաջ պետք է որոշել, թե որքան ընթացիկ և ինչ լարվածությամբ են աշխատում ստվերների շարժիչները:

Դա կարելի է անել `կարդալով բնութագրերը կամ չափումներ կատարելով` օգտագործելով բազմաչափը: Սովորաբար նրանք գործում են 12 Վ և 1-3 Ամպեր (իմը `2.5 Ա և 12 Վ): Բազմապատկեք հոսանքը, թե դրանցից քանիսին է պետք միաժամանակ վարել (ես քշում եմ երկուսը) `անհրաժեշտ առավելագույն հոսանքը պարզելու համար: Դուք պետք է գտնեք էլեկտրամատակարարում, որը միևնույն լարման է և իդեալականորեն նույն հզորությունն է կամ մի փոքր ավելի բարձր:

Այս քայլին ես մի փոքր խաբել եմ ՝ օգտագործելով 12 Վ և 2.5 Ա հոսանքի աղբյուր երկու 12 Վ և 2.5 Ա շարժիչներ քշելու համար, ինչը նշանակում է, որ շարժիչներն օգտագործում են երկու անգամ ավելի շատ էներգիա, քան կարող է տալ էլեկտրասնուցումը: Բայց օգտագործելով PWM կոչվող տեխնիկան (ստուգեք հղումը ՝ ավելի մանրամասն տեսնելու համար) ինձ հաջողվել է միաժամանակ շարժիչով վարել ավելի ցածր արագությամբ:

Պատճառը, որ ես դա արեցի, տուփի մեջ տարածք խնայելն է (ես ընտրել եմ ավելի փոքր տուփ):

Պլաստիկ պատյանին կպահանջվի էլեկտրամատակարարում, երկու ռելեներ, էլեկտրոնիկայի և լարերի հետ մի փոքր հատ, այնպես որ ընտրեք չափը, որպեսզի ամեն ինչ տեղավորվի:

Էլեկտրամատակարարումս ունեի պլաստիկ պատյան, որը ես քանդել էի ՝ օգտագործելով dremel գործիքը, ես կտրել էի առկա լարերը և այս կերպ ստացել էի էժան և փոքր էներգիայի մատակարարում, որը հարմար էր իմ նախագծին (տես նկարները):

Պատրաստեք շարժիչի մալուխները

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

Երկարացման մալուխի վերջում կլինի արական 5.5 մմ DC Power Plug Jack վարդակից: Դուք պետք է երկու լարերը միացնեք վարդակին, վերջնական արդյունքը կլինի այնպես, ինչպես նկարներում:

5,5 մմ DC Power Plug Jack- ը տեղադրեք տուփի մեջ

Հորատման մեքենայի միջոցով երկու անցք կատարեք, որոնք բավականաչափ մեծ են, որպեսզի խցիկը սահի: Տեղադրեք հոսանքի խրոցակի խցիկները, պտուտակեք ընկույզների միջոցով: Այնուհետև խիտ սև և կարմիր լարերը կպցրեք վարդակների յուրաքանչյուր մուտքին, որից հետո դրանք մեկուսացրեք ՝ օգտագործելով ջերմության նվազեցման խողովակ: Հաղորդալարերը պետք է բավականաչափ երկար լինեն, որպեսզի հեշտությամբ մտնեն տերմինալային ժապավեն, բայց ոչ այնքան երկար, որ շատ տեղ զբաղեցնեն:

Ապահովիչին ամրացնելով ապահովիչը

Տուփի մի կողմում մի փոքր անցք բացեք, որպեսզի տեղադրեք մի փոքր ընկույզ, որը պահում է ապահովիչների ամրակը: Այնուհետեւ օգտագործելով տափակաբերան աքցանը, պտուտակահանն ու ընկույզը, այն ամուր պտուտակեցրեք իր դիրքում: Ապահովիչների պահիչը պետք է լինի էլեկտրամատակարարման վայրի մոտ և տուփի ներսում: Եվս մեկ անգամ ստուգեք նկարները:

Քայլ 3. Էլեկտրոնիկայի միջոցով PCB- ի կառուցում

PCB- ի կառուցում էլեկտրոնիկայի միջոցով
PCB- ի կառուցում էլեկտրոնիկայի միջոցով
PCB- ի կառուցում էլեկտրոնիկայի միջոցով
PCB- ի կառուցում էլեկտրոնիկայի միջոցով
PCB- ի կառուցում էլեկտրոնիկայի միջոցով
PCB- ի կառուցում էլեկտրոնիկայի միջոցով

PCB- ում կպահպանվեն միկրոկառավարիչը, bluetooth հաղորդակցությունը, RTC մոդուլը, հզորության տրանզիստորը `պաշտպանության համար նախատեսված դիոդով և փոքր դիմացկունով, միակցիչների լարերով և 5V կարգավորիչով:

Ես կցել եմ fritzig սխեման, որպեսզի ամեն ինչ հեշտ լինի: Առաջին նկարը ներկայացնում է սխեմատիկ պատկերի արտահանված պատկերը, և ես կցել եմ նաև sketch.fzz (սկզբնական ֆայլը, կարող եք բացել այս գործիքի միջոցով)

Sոդման քայլեր

1. կտրեք կին PCB միակցիչները, միկրոկոնտրլերի համար կա երկու 12 միակցիչ միակցիչ, կա նաև bluetooth- ի համար 6 փին միակցիչ և միկրոկոնտրոլերի աջ կողմում ևս 12 միակցիչ և ռելեի բացասական երկու կապակցիչ: և դրական ուժ

2. Բոլոր միակցիչները կտրվելուց հետո պետք է զոդել PCB- ի հետևի մասում

3. erոդեք երկու KF301-2P խրոցակի միակցիչները

4. Տեղադրեք L7805CV 5V կարգավորիչը PCB- ի վրա: Թեքեք նրա ոտքերը և կպցրեք այն մյուս կողմից, այնուհետև կտրեք ավելորդ ոտքերը մալուխի կտրիչով

5. Sոդեք NPN Tip142T տրանզիստորը և 1N4004 պաշտպանության դիոդը, կտրեք ավելորդ ոտքերը հետո

6. oldոդեք 220 օմ դիմացկուն համապատասխան թվային կապի 5 -ի և տրանզիստորային բազայի քորոցի միջև

7. Տրանզիստորի և KF301-2P խրոցակների միջև ավելի հաստ լարեր կպցրեք (կարմիր և սև, ինչպես նշված են նկարներում)

8. erոդել բոլոր կարմիր (+), սև (-) և սպիտակ (ազդանշանային) բարակ լարերը ՝ ըստ ֆրիցիգ սխեմատիկայի

9. microոդեք միկրոկառավարիչի արական կապում Ձեզ անհրաժեշտ է երկու 12 արական կապում կողքերից

10. Կապեր հաստատեք միկրոկառավարիչի աջ կողմի կանանց համապատասխան կապումներից յուրաքանչյուրի միջև (դա ավելի լավ է բացատրված նկարներում): Կապերը կկատարվեն միայն զոդման միջոցով (կապումներն ամուր կլինեն)

11. Լրացուցիչ. Խոշորացույցով ստուգեք զոդումները կարճ միացումների համար և ստուգեք, արդյոք լարերը պատշաճ կերպով կպցված են PCB- ի հետևի մասում, ինչպես նաև կարող եք ստուգել բազմիմետրով (դիմադրության կարգավորում), եթե կա կարճ միացում դրական և բացասական կապեր: Մեկ այլ փորձություն է միացումն ապահովել առանց միկրոկառավարիչի ՝ bluetooth- ի

12. Տեղադրեք միկրոկոնտրոլերը և HC-05 bluetooth- ը համակարգչի վրա

Քայլ 4: Էլեկտրամոնտաժ և հավաքում

Էլեկտրամոնտաժ և հավաքում
Էլեկտրամոնտաժ և հավաքում
Էլեկտրամոնտաժ և հավաքում
Էլեկտրամոնտաժ և հավաքում

Մինչ այժմ մենք պատրաստ ենք մեր PCB- ն, պլաստիկ տուփը պատրաստ է երանգների մալուխները միացված, և մեր մյուս բաղադրիչները պատրաստ են: Մեզ մնում է միայն համակարգը լարել:

1. տուփի վերին կողային անցքի միջոցով տեղադրեք AC հոսանքի մալուխը, քանդեք մալուխը և ամրացրեք այն սնուցման աղբյուրի վրա (եթե ձեր էներգիայի աղբյուրը պտուտակներ ունի, ապա պտուտակեք այն)

2. կարմիր մետաղալարով միացրեք էլեկտրասնուցման ելքը (+) ապահովիչների կողմերից մեկին, օգտագործեք մի փոքր ջերմության նվազեցման խողովակ `թաքցված բացված մետաղալարը թաքցնելու համար:

3. Ապահովիչի մյուս կողմին ամրացրեք մեկ այլ կարմիր մետաղալար, կիրառեք նեղացման խողովակ, մետաղալարերի մյուս կողմը պետք է տեղադրվի և պտուտակվի KF301-2P պտուտակավոր միակցիչի մուտքի (+) մեջ:

4. Սև մետաղալարը միացրեք հոսանքի աղբյուրի ելքային (-) կողմին, այնուհետև այն պտուտակեք PCB մուտքի KF301-2P պտուտակով միակցիչի վրա:

4. Օգտագործելով արական և իգական տախտակի միակցիչներ, ռելեը դրական և բացասական միացրեք pcb դրական և բացասական իգական միակցիչներին: Նաև միացրեք միկրոկառավարիչի 8 -րդ և 9 -րդ կապերը (օգտագործելով PCB մայր միակցիչները PCB- ի ձախ կողմում) ռելեի ձգան կապումներին

5. միացրեք տերմինալի ժապավենի բլոկի մի կողմը կարմիր համապատասխանաբար սև լարերին, որոնք գալիս են իգական 5.5 մմ DC Power Plug միակցիչներից: Եթե դուք ունեք ավելի քան մեկ 5,5 մմ կին միակցիչ, ինչպես ես, ապա բոլոր կարմիր լարերը կավարտվեն տերմինալի բլոկի վերևի ձախ մասում, իսկ տերմինալի բլոկի վերին աջ կողմում գտնվող բոլոր սև լարերը (տես նկարները): Երբ գործարկեք երանգները, եթե դրանք չշարժվեն նույն ուղղությամբ, մենք այստեղ կշրջենք լարերը (դրա մասին ավելի ուշ)

6. միացրեք KF301-2P (out) պտուտակավոր միակցիչից եկող դրական և բացասական լարերը ռելեի տերմինալների միջնապատերին: Տերմինալների կեսը կոչվում են ընդհանուր:

7. ձախ ռելեի ձախ կողմը (կարևոր չէ, թե իրականում ինչպես եք նայում) աջ ռելեի ձախ կողմին տերմինալային բլոկի ստորին ձախ կողմին: Այնուհետեւ ձախ ռելեի աջ կողմը միացրեք աջ ռելեի աջ կողմին տերմինալային բլոկի ստորին աջ կողմին: Տերմինալային բլոկը կունենա վերին կողմը, որը միացված է իգական 5,5 մմ միակցիչներին (տես քայլ 5):

Նշում. Ես նկարագրել եմ, որ տերմինալային բլոկը ունի վերին և ստորին կողմեր, որոնցից յուրաքանչյուրն ունի ձախ և աջ կողմ: Կարևոր չէ, թե ինչպես եք պահում տերմինալային բլոկը, քանի դեռ հիշում եք, թե որն է ինչ կողմը: Դուք կարող եք ստուգել նկարները և հատկապես fritzig սխեման:

Քայլ 5. Arduino ծածկագիրը

Arduino ծածկագիրը
Arduino ծածկագիրը

Կոդը պետք է վերբեռնվի arduino pro mini- ում ՝ օգտագործելով USB սերիական FTDI ադապտեր FT232RL:

Ձեզ հարկավոր է միացնել GND, VCC, Rx, Tx և DTR կապը arduino pro mini- ին: Այնուհետև բացեք arduino ծրագրաշարը, ընտրեք գործիքներ/նավահանգիստ և ինչ նավահանգիստ եք օգտագործում: Հետո Գործիքներ/տախտակ/Arduino Pro կամ Pro Mini: Հետո Գործիքներ/տախտակ/պրոցեսոր/ATmega328 (5V 16Mhz):

Վերջապես, բացեք ներքևի ուրվագիծը և սեղմեք վերբեռնում:

Կարգավորումներ. Միակ բանը, որը կարող է ճշգրտվել ուրվագծում, pwmPower- ն է: Արժեքը կարող է լինել 0 -ից 255 -ի սահմաններում, և դա մոտավորապես ներկայացնում է, թե էներգիայի մատակարարման էներգիայի որ մասն է հատկացվելու երանգների շարժիչներին: Հիմնականում դա արագորեն անջատում և անջատում է հոսանքը: Ես այն հիմնականում իրականացրել եմ, որպեսզի թույլ տամ ավելի փոքր էներգիայի աղբյուր օգտագործել առանց գերտաքացման կամ անջատման: Եթե ձեր էներգիայի աղբյուրն ունի ավելի մեծ հզորություն, քան շարժիչները կքաշեն, կարող եք pwmPower- ը սահմանել 255:

Այսպիսով, ինչպես է աշխատում այս ծրագիրը. Նախ այն լսում է սերիական գիծը (երկրորդային ծրագրային սերիալ) մուտքային հաղորդումների համար: Երբ հաղորդումը գալիս է, հաղորդագրությունը կարդացվում է բուֆերում մինչև «;»: առկա է կամ բուֆերի ավարտը հասել է: Այնուհետև այն վերլուծված է, և եթե այն ունի ճիշտ ձևաչափ (օրինակ ՝ O45;) toggleState գործառույթը կանչվում է առաջին պարամետրի վիճակով, այնուհետև տևողությամբ:

Բևեռայնության անջատիչին հասնելու համար երկու ռելեներ կամ բացվում են, կամ փակվում: Տրանզիստորը միացված և անջատված է PWM- ի միջոցով `նշված տևողությամբ: O45- ը կնշանակի բացվել 45 վայրկյան:

Հրամանի կատարումից հետո բուֆերը մաքրվում է:

Քայլ 6: Օգտագործում

Օգտագործումը
Օգտագործումը
Օգտագործումը
Օգտագործումը
Օգտագործումը
Օգտագործումը

Մենք կարող ենք օգտագործել վերահսկիչները մեկից ավելի եղանակներով

1. android կամ iphone bluetooth հավելվածի միջոցով (ամենապարզ)

Իմ ցուցադրման ժամանակ ես ընտրել եմ Android ծրագիր, որը կոչվում է Bluetooth Controller: Այս ծրագիրը թույլ է տալիս Ձեզ հարմարեցնել կոճակները, որոնք կուղարկեն սերիական տվյալներ: Ես ստեղծել եմ երկու կոճակ, որոնք կոչվում են վերև և ներքև, ես վերևը կապել եմ «C40» կոդի հետ: և ներքև ՝ «O35;» - ով:

«C40»; նշանակում է, որ ես կփակեմ (հետ կանչեմ) երանգները 40 վայրկյան, «035» նշանակում է, որ դրանք կբացվեն (դրանք բարձրանում են) 35 վայրկյան: ";" հրամանի տերմինատորն է, որը ես ընտրել եմ իմ ուրվագծում, ինչը նշանակում է, որ այն ազդանշան է տալիս հրամանի ավարտին:

2. Պիտոնի սցենարի միջոցով, որն անընդհատ աշխատում է հետին պլանում

Սա ձեռնարկի պաշտպանված մասն է: Ես ունեմ պիթոնի սցենար, որը կաշխատի սերվերի վրա, ինչպես ազնվամորու pi- ն կամ ինտերնետ հասանելիությամբ նոթբուքը: Այն կմիանա կառավարման վանդակի bluetooth- ին և կբացահայտի http API- ն: API- ին կարելի է մուտք գործել ուղղակիորեն կամ բաների միջոցով:

Քայլ առ քայլ կբացատրեմ, թե ինչ պետք է անեք

ա առաջին բանը bluetooth- ի զուգավորումն է

դուք օգտագործելու եք bluetoothctl հրամանը մխիթարիչից, ներսի տիպից

իշխանությունը միացված է

հայտնաբերելի է գործակալի վրա կանխադրված-գործակալի վրա զուգակցելի զույգով xx: xx: xx: xx: xx: xx (և մուտքագրեք գաղտնաբառը) վստահեք xx: xx: xx: xx: xx: xx (եթե գաղտնաբառ չկա):

հաջորդը բացեք bluetooth- ի կազմաձևման ֆայլը

vim /etc/bluetooth/rfcomm.conf

ներսում ձեզ հարկավոր է կարգավորել ձեր bluetooth սարքը այսպես.

rfcomm1 {

կապել այո; սարքը քո_բլութու_մակ_հասցե 97 -ի նման մի բան ՝ 97: D3: 31: 21: A0: 51; ալիք 1; մեկնաբանություն «Միացում իմ երանգներին bt»; }

կապել, վերագործարկել bluetooth ծառայությունները

sudo rfcomm կապել allsudo /etc/init.d/bluetooth վերագործարկում sudo hciconfig hci0 up

բ. տեղադրել տափաշիշ, տափաշիշ հիմնական հեղինակ.

sudo -H pip տեղադրել Flask Flask -BasicAuth

գ. ստեղծել ֆայլ server.py հետևյալ կոդով և գործարկել սերվերը

# օգտագործում. python httpToBluetooth օգտվողի գաղտնաբառ bluetooth_address

# Նշում. Օգտագործվում են օգտվողի անունը, գաղտնաբառը

ներմուծման օպերացիոն համակարգ, bluetooth, sys, թելավորում

flask import- ից flask_basicauth import BasicAuth հերթից ներմուծում Queue app = Flask (_ name_) configuration = sys.argv app.config ['BASIC_AUTH_USERNAME'] = configuration [1] app.config ['BASIC_AUTH_PASSWORD'] = configuration = Հերթ () Basic_auth = BasicAuth (հավելված) դաս BluetoothBackground (threading. Thread): def _init _ (self, bluetooth_address, queue): threading. Threading.hread._ init _ (self) self._ bluetooth_address = bluetooth_address self._ queue = queue self.shutdown = False def run (self): self._ bluetooth = self.get_bluetooth () մինչդեռ ոչ self.shutdown: message = self._ queue.get () self._ bluetooth.send (message) self._ bluetooth.close () def get_bluetooth (self): կապ = bluetooth. BluetoothSocket (bluetooth. RFCOMM) կապ. settimeout (Չկա) փորձեք..setblocking (False) վերադարձի կապի դասը Webserver (threading. Thread): def run (self): port = in t (os.environ.get ('PORT', 5000)) app.run (host = '0.0.0.0', port = port, debug = True, use_reloader = False) @app.route ("/send_to_serial/") @basic_auth.required def send_to_serial (command): queue.put (command) return 'ok' threads = threads.append (BluetoothBackground (configuration [3], queue)) threads.append (Webserver ()) [thread.start () թելերի համար թելերի համար]

սերվերը գործարկելու համար կատարեք

python server.py օգտվողի գաղտնաբառ 97: D2: 31: 20: A0: 51

Լավ, այնպես որ server.py- ն մեր սցենարն է, օգտվողն ու գաղտնաբառը ՝ ձեր իսկության համար օգտագործվող հավատարմագրերն են, իսկ «97: D2: 31: 20: A0: 51» -ը ձեր bluetooth MAC հասցեն է:

դ. օգտագործեք ձեր սերվերը ՝ աշխարհի ցանկացած վայրից հրամաններ ուղարկելու համար

բրաուզերի տեսակից ՝ https:// your_ip: 5000/send_to_serial/C30;

- մուտքագրեք օգտվողին և գաղտնաբառին, որը դուք ավելի վաղ սահմանել եք, երբ սկսել եք Python սերվերը

- "C30;" այն հրամանն է, որը կփոխանցվի bluetooth սարքին (մեր տուփը, որը կկառավարի երանգները)

- ստուգեք, որ 5000 նավահանգիստը արգելափակված չէ ձեր firewall- ի կողմից (մենք օգտագործում ենք այդ նավահանգիստը)

- եթե դուք գտնվում եք երթուղիչի հետևում (օրինակ ՝ ազնվամորու pi), ապա պետք է երթուղիչից նավահանգիստ փոխանցեք 5000 նավահանգստից 5000 նավահանգիստ:

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

Դուք կարող եք միացնել երանգները (Python սերվերը, որը մենք ավելի վաղ ստեղծել ենք) ThingsHTTP- ի միջոցով ՝ բաների հետ:

Ես ներառել եմ ThingHTTP ձևի նկար ՝ որպես օրինակ լրացված տվյալներով և պատկեր TimeControl- ով: Այսպիսով, առավելագույն ճկունության համար բաները պետք է անեն այն, ինչ ձեզ հարկավոր է:

3. Իմ տան ավտոմատացման հավելվածի միջոցով

Սա մի փոքր ավելի բարդ է, իմ տան ավտոմատացման ծրագիրը շատ ավելին է անում, քան ստվերները վերահսկելը:

Այն նաև վերահսկում է լույսերը, դուռը, ունի բազմաթիվ սենսորներ, ինտեգրվում է անջատիչներին և ունի օգտագործողի կողմից սահմանված բարդ կանոններ, որոնք կարող են օրինակ բացել երանգները, եթե ներսում լուսավորության մակարդակը ցածր է, կամ առավոտ է:

Դուք կարող եք ստուգել իմ github պահոցը, և եթե հարցեր ունեք, ես ուրախ կլինեմ պատասխանել դրանց:

Եթե իմ ձեռնարկը ինչ -որ չափով օգտակար համարեցիք, խնդրում ենք տարածել այն կամ ավելացնել այն ընտրյալների մեջ: Եվ ես ուզում եմ տեսնել մի քանի հետաքրքիր մեկնաբանություններ:)

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