Բովանդակություն:
- Պարագաներ
- Քայլ 1: Կարգավորեք ձեր երթուղիչը (ըստ ցանկության, բայց խորհուրդ է տրվում)
- Քայլ 2: Կոդ
- Քայլ 3: Սարքաշար (բետա)
- Քայլ 4: Outlook/հղումներ
Video: [15 րոպե] Ուիզլի ժամացույց / Ո՞վ է տանը ցուցիչ - հիմնված TR -064 (բետա) ՝ 4 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:47
ԹԱՐՄԱՈՄ. Տեսեք քայլ 3 -ը:
Երկար պատմություն (TL; DR ստորև). Որոշ ժամանակ առաջ ես գրեցի մի փոքրիկ bash-script իմ համակարգչում, որը սկանավորելու էր ցանցը գրանցված սարքերի համար և համեմատելու էր նրանց սերվերի անունները համապատասխան անունների ցուցակի հետ: Ամեն անգամ, երբ սարքը մտնում կամ դուրս էր գալիս ցանցից, ես ծանուցում էի ստանում: Այսպես ես գաղափար ունեի, թե ով է տանը (ոչ միայն երբեմն հաճելի է իմանալ, թե ով է տանը, հարցնել նրանց, թե արդյոք նրանք ցանկանում են միանալ ճաշի կամ նման ուտեստների, բայց դա կարող է նաև օգնել ձեզ խուսափել անհարմար իրավիճակներից): Խնդիրն այն է, որ այս մեթոդը այնքան էլ հուսալի չէ: Unfortunatelyավոք, որոշ սարքեր չեն պատասխանում պինգներին (օրինակ ՝ սմարթֆոններին) և, կարծես, անցնում են էներգախնայողության ռեժիմի, ուստի հուսալիորեն չեն հայտնաբերվում այնպիսի հրամաններով, ինչպիսիք են nmap- ը: Ես փորձեցի հաղթահարել դա ՝ պահանջելով առնվազն 10 բացասական, մինչ վերջնականապես հայտարարելը, որ սարքը լքել է ցանցը: Ընդհանուր առմամբ, այն աշխատեց, բայց դանդաղ, անհուսալի և ոչ այնքան գեղեցիկ: Նաև ուզում էի, որ կարողանամ ստուգել, թե ով է տանը ՝ առանց համակարգիչս բացելու: Այսպիսով, ես ունեի այս ESP8266- երը պառկած և ուզում էի խաղալ նրանց հետ: Բայց ես չէի ուզում կառուցել 10.120.124.812-րդ ESP- ով հիմնված եղանակային կայանը կամ այդպիսի (ինչու՞ կցանկանայիք վերահսկել եղանակը ձեր խայտառակ ± 2 ° C ջերմաչափով, երբ ամեն դեպքում կարող եք պարզապես այցելել որևէ կայք): Այսպիսով, ծրագիրը կազմվեց: Unfortunatelyավոք, պարզվում է, որ ESP- ը, կարծես, սարքավորված չէ պատշաճ կերպով պինգ անելու համար (ինչը սկզբից վատն էր, հիշո՞ւմ եք), էլ չենք խոսում ցանցի ամբողջական սկան կատարելու մասին: Ես մտածեցի դրա համար ինչ -որ գրադարան գրել, բայց քանի որ իմ C ++ - ը շատ սահմանափակ է, սա իմ առաջին ESP ծրագիրն է, և ես հանճար չեմ ցանցային իրերով, կամ ես հրաժարվեցի այդ գաղափարից: Որոշ հետազոտություններ կատարելուց հետո պարզեցի, որ իմ երթուղիչ (ապրանքանիշ Fritz! Box) իրականում ունի API: ԱՅՈ !!!! Արձանագրությունը կոչվում է TR-064: Նման ոգեշնչող անուն, ճիշտ է: Որոշակի հետազոտություն կատարելով այս հարցի շուրջ, ես առցանց (բավականին խայտառակ) փաստաթուղթ գտա: Ինձանից որոշ ժամանակ պահանջվեց այն մշակելու համար: Հնարավոր է, որ հաջորդ օրերին ավելի գործնական հրահանգներ տեղադրեմ (և ինչպես հաղորդակցվել/ստուգել այս API- ն բրաուզերի հավելման միջոցով): API- ն հասկանալուց հետո ես սկսեցի օգտագործել այն իմ ESP- ից: Կարճ պատմություն. Ես ստացա բադի-ժապավենի և wd40 լուծում, որն աշխատում էր և անում այն, ինչ ուզում էի (հարցված API- ի միացված սարքերի համար, դրանք համեմատիր MAC- հասցեների ցուցակի հետ և համապատասխանաբար LED- ների միացում): Բայց ես ավելի ուժեղ էի ուզում և ճկուն լուծում, և այս API- ն դեռ շատ բան ունի առաջարկելու (կարող եք փոխել կարգավորումները (միացնել/անջատել wifi- ն, փոխել գաղտնաբառը, բացել/փակել հյուրի WiFi- ն, փոխել ազդանշանի հզորությունը), վերագործարկել երթուղիչը, հարցնել կապի արագությունը,…) - ուստի որոշեցի ստեղծել ունիվերսալ TR -064 գրադարան: TL; DR; Սարքը, որը LED- ների միջոցով ցույց է տալիս, թե ով է այժմ տանը: Աշխատում է հիանալի, դեռ հիանալի բնակարան չունի (հե --յ - նկատեցի վերնագրում բետա տարբերակը): Օգտագործում է SOAP- արձանագրությունը `երթուղղիչի հետ հաղորդակցվելու համար: Գրեց Arduino գրադարանը `դա իրականացնելու համար: Պահանջվող գիտելիքներ • Հիմնական Arduino/ESP գիտելիքներ • Եթե ձեր ESP- ով հավաքել եք Blink- ի օրինակ, ապա ամեն ինչ լավ կլինի: • Հակառակ դեպքում, կարող եք հետևել այս ուսանելի առաջին երկու քայլերին: օգտակար եղեք, եթե ցանկանում եք թողնել տախտակի բեմը • Որոշ 3D նախագծեր կամ փայտամշակման աշխատանքներ կարող են օգտակար լինել բնակարանային Github ծրագրի հղմանը [https://github.com/Aypac/Arduino-TR-064-SOAP-Library] արագ հղման համար:
Պարագաներ
- ESP8266 կամ ESP32 Development-Board- ում կամ այլ ծրագրավորողի հետ (2 ~ 6 €)
- USB մալուխ, որը համապատասխանում է ծրագրավորողին
- Էլեկտրական ադապտեր (օրինակ ՝ USB կամ մարտկոց ~ 2 €)
- Մի քանի LED և ռեզիստորներ (€ 1 €)
- (Պատյան)
=> Մոտ 4-6 € նվազագույն դիզայնի համար: Դա ինձ համար նշանակում է, որ ես հեշտությամբ կարող եմ մի քանիսին կախել տան շուրջը: Եթե ծույլ եք, կարող եք օգտագործել նաև զարգացման տախտակ `ներառված լուսադիոդներով (ավելի մանրամասն տե՛ս 4-րդ քայլը):
Քայլ 1: Կարգավորեք ձեր երթուղիչը (ըստ ցանկության, բայց խորհուրդ է տրվում)
Արձանագրությունը նախագծված էր որպես ընդհանուր արձանագրություն երթուղիչների համար, բայց ես միայն գիտեմ, որ (շատ) Fritz! Box երթուղիչները (շատ տարածված գոնե Եվրոպայում) օգտագործում են այն: Չգիտեմ այլ ապրանքանիշերի մասին: Այսպիսով, ես ենթադրում եմ, որ դուք օգտագործում եք Fritz! Box: Եթե կարողանաք այս աշխատանքը կատարել (կամ դա անել) ցանկացած այլ երթուղիչի վրա, ես ուրախ կլինեի այն ավելացնել այս ուսանելի (գուցե նույնիսկ սկսել համատեղելիության կարճ ցուցակ):
Այս քայլը անհրաժեշտ չէ, կարող եք պարզապես օգտագործել ձեր ադմինիստրատորի հաշիվը, բայց դա նպատակահարմար չէ ակնհայտ պատճառներով (կարող է գաղտնալսվել կամ հանվել ձեր ESP- ից, կարող եք պատահաբար փոխել այն, ինչ չեք ցանկանում,…) - այնպես որ, ես խորհուրդ եմ տալիս դա անել:
Ինչևէ, ահա մենք գնում ենք.
- Մուտք գործեք ձեր Fritz! Box ՝ մուտքագրելով fritz.box ձեր նախընտրած դիտարկիչի url-bar- ում:
- Գտեք FRITZ! Box- ի նոր օգտվող ստեղծելու էջը (դուք պետք է այն զարգացած լինեք, որը պետք է լինի System- ի ներքո, եթե այն չեք գտնում, փորձեք թարմացնել ձեր սարքը):
- Ստեղծեք նոր հաշիվ, ինչպես տեսնում եք նկարում (օգտագործելով այլ օգտվողի անուն/գաղտնաբառ):
- Դուրս գալ
Քայլ 2: Կոդ
-
Գրադարանը կարող եք ձեռք բերել Github- ից:
- Օրինակներում դուք կգտնեք home-indicator.ino անունով ֆայլ, որն այս ծրագրի կոդն է: Տեղադրեք օրինակների թղթապանակը ձեր arduino IDE ծրագրի տնային թղթապանակում, իսկ մյուս թղթապանակը `նույն նախագծի տնային պանակի գրադարանների պանակում:
- (Re) Սկսեք IDE- ն:
- IDE- ում բացեք home-indicator.ino և մուտքագրեք ձեր կարգավորումները: Պետք է միանգամայն ակնհայտ լինի, թե ինչ է գնում ուր: Եթե հարցեր ունեք, տեղեկացրեք ինձ:
- Այժմ կարող եք այն կազմել և փոխանցել ձեր ESP- ին:
Քայլ 3: Սարքաշար (բետա)
Այո … Սա այն քայլն է, որտեղ ես դեռ պետք է աշխատեմ: Բայց ես ենթադրում եմ, որ համացանցում կա բավականաչափ նյութ ՝ ինչ -որ բան պարզելու համար:) Տեղադրումը, ինչպես նկարներում է, պարզապես դիոդ է ՝ O 100 Օմ ռեզիստորով, որը միացված է GPIO {5, 4, 0, 2}, որոնք D1 են, D2, D3, D4 (այդ կարգով) իմ MCU ESP8266 տախտակի և փոքրիկ նարնջագույն մալուխի կաթոդները GND են տանում (նշվում է իմ տախտակի վրա G): Եթե ծույլ եք, կարող եք անել այն, ինչ տեսնում եք երկրորդ նկարում: Պարզապես օգտագործեք զարգացման տախտակ `ներառված LED- ներով (ինչպես« ESP-202 »-ը, տես նկարները` մոտ 3.50-5.00 € մոտ առաքումը ներառյալ): Այնուհետև կարող եք պարզապես միացնել USB հոսանքին կամ օգտագործել ներառված մարտկոցը, թղթի վրա գծել միջերես և կպցնել պատին: Կատարված է: Այս հատուկ տախտակի համար նավահանգիստներն են.
int userPins [numUser] = {5, 4, 2, 14, 16};
վերեւից ներքեւ.
Քայլ 4: Outlook/հղումներ
Սա այն է, ինչ ես դեռ պլանավորում եմ. դանդաղ արձագանքեք (դա մի փոքր տևում է մինչև դրանք անջատվելը, սարքը թողնելուց հետո) `առանց որևէ ակնհայտ պատճառի: 5. Կցեք իրը միջանցքում և գուցե ևս մի քանի տան շուրջ: Կցանկանայի որոշ տեղեկություններ ստանալ ձեզանից: Եվ ինչպես միշտ, ինձ իսկապես ուրախացնում է տեսնել, թե ինչպես են ուրիշները կառուցում ձեր մտածած տականքները, ուստի խնդրում եմ մեկ րոպե տրամադրեք մեկնաբանելու և նկարներ տեղադրելու համար::):) Եվս մի քանի հղումներ: Ես այստեղ կկապեմ որոշ իրեր, որոնք կարող են օգնել ձեզ. • TR-064 հղում. Ուիզլի ժամացույցի մուտք • Որոշ տղաներ կառուցում են գեղեցիկ, բայց բարդ Weasly ժամացույց*_*Այն հիմնված է ձեր հեռախոսի ծրագրի վրա, որը գրավում է ձեր գտնվելու վայրը: Եթե դուք գտնվում եք որոշակի նախապես սահմանված տարածքներում, ժամացույցի համապատասխան լույսը կմիանա: Ինձ համար դա չափազանց բարդ էր և պետք է լիներ շատ վայրերում, որտեղ այն կարող էր կոտրվել/ձախողվել. կապ • Դուք պետք է օգտագործեք միջանկյալ սերվեր ՝ հաղորդակցությանը միջամտելու համար (եթե չեք ցանկանում կարգավորել ձեր ծառայությունը որպես սերվեր և բացել ձեր տնային ցանցը արտաքին երթևեկության համար. միջանկյալ ծառայությունը կարող է մի օր անցանց լինել/փոխել API- ն, •… Ձեզ անհրաժեշտ է ավելի շատ ծրագրակազմ: Ավելի շատ ծրագրակազմ նշանակում է սխալ թույլ տալու ավելի շատ տեղեր;) Բայց նրանք զարմանալի աշխատանք են կատարել, և եթե ցանկանում եք նման բան անել, ապա գլխավորեք նրանց կայքը, դա իսկապես հիանալի է:
Խորհուրդ ենք տալիս:
«Ուիզլի» տեղադրության ժամացույցը 4 ձեռքով. 11 քայլ (նկարներով)
«Ուիզլի» տեղադրության ժամացույցը 4 ձեռքով. Այսպիսով, Raspberry Pi- ով, որը որոշ ժամանակ պտտվում էր, ես ուզում էի գտնել մի գեղեցիկ նախագիծ, որը թույլ կտար ինձ լավագույնս օգտագործել այն: Ես հանդիպեցի այս հիանալի հրահանգով Կառուցեք ձեր սեփական Ուիզլիի տեղադրության ժամացույցը ppeters0502- ի կողմից և մտածեցի, որ
Կենսաթոշակային ժամացույց / հաշվել / Dn ժամացույց ՝ 4 քայլ (նկարներով)
Կենսաթոշակային ժամացույց / Count Up / Dn ockամացույց. Ես դարակում ունեի այս 8x8 LED dot-matrix ցուցադրումներից մի քանիսը և մտածում էի, թե ինչ անել դրանց հետ: Ոգեշնչված այլ հրահանգներով, ես գաղափար ստացա կառուցել հետհաշվարկի/վերևի ցուցադրում `հետ հաշվելու համար մինչև ապագա ամսաթիվը/ժամը և եթե նպատակային ժամանակը պ
Բետա հաշվիչ ՝ 6 քայլ
Բետա հաշվիչ. Մի օր դուք ուզում էիք դառնալ դեբիլ, ուսումնասիրեցիք տրանզիստորը, իմացաք տրանզիստորի փոփոխական բետայի (ընթացիկ շահույթի) մասին, հետաքրքրվեցինք և գնեցիք մեկը, բայց չկարողացաք գնել չափիչ սարք, որը ձեզ կասի բետա արժեքը: տրանզիստորի
C51 4 բիթանոց էլեկտրոնային ժամացույց - փայտյա ժամացույց ՝ 15 քայլ (նկարներով)
C51 4 բիթանոց էլեկտրոնային ժամացույց - Փայտե ժամացույց. Այս հանգստյան օրերին որոշ ժամանակ ունեի, այնպես որ առաջ գնացի և հավաքեցի այս 2.40 ԱՄՆ դոլար արժողությամբ 4 -բիթանոց DIY էլեկտրոնային թվային ժամացույցը, որը ես գնել էի AliExpress- ից քիչ առաջ
Ո՞վ է իմ դռան մոտ: PIR Շարժման ցուցիչ/միջակայքի ցուցիչ `5 քայլ
Ո՞վ է իմ դռան մոտ: PIR Շարժման սենսոր/Շարժման սենսորային նախագիծ. Մեր նախագիծը նպատակ ունի զգալ շարժումը PIR և հեռավորության տվիչների միջոցով: Arduino ծածկագիրը կտա տեսողական և ձայնային ազդանշան ՝ օգտագործողին մոտակայքում հայտնելու համար: MATLAB ծածկագիրը կուղարկի էլեկտրոնային փոստի ազդանշան ՝ օգտագործողին զգուշացնելու համար, որ ինչ -որ մեկը մոտ է: Այս սարքը