Բովանդակություն:
- Քայլ 1: Ինչպե՞ս է նման IR սենսորը:
- Քայլ 2: IR սենսորային բեկման տախտակ/մոդուլ
- Քայլ 3: Պահանջվող մասեր և բաղադրիչներ
- Քայլ 4. IR սենսորը միացնելով Arduino- ին
- Քայլ 5. Գտեք հեռակառավարման վահանակի յուրաքանչյուր բանալին համապատասխան ծածկագիրը
- Քայլ 6: Կառավարեք LED- ների մի շարք IR հեռակառավարման միջոցով
- Քայլ 7: Խնդիրների վերացում
- Քայլ 8: Ի՞նչ անել հաջորդը:
Video: Ինֆրակարմիր տվիչի օգտագործումը Arduino- ով. 8 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Ի՞նչ է ինֆրակարմիր (հայտնի IR) սենսորը:
IR սենսորը էլեկտրոնային գործիք է, որը սկանավորում է IR ազդանշանները ստանդարտներով սահմանված որոշակի հաճախականությունների տիրույթներում և դրանք վերածում է ելքային ազդանշանի էլեկտրական ազդանշանների (սովորաբար կոչվում են ազդանշանային քորոց): IR ազդանշանները հիմնականում օգտագործվում են կարճ հեռավորության վրա (սովորաբար մի քանի մետր) օդով հրամաններ փոխանցելու համար, ինչպես այն, ինչով արդեն աշխատել եք հեռուստատեսության հեռակառավարման վահանակների կամ նման այլ էլեկտրոնային սարքերի վրա:
IR հաղորդակցության արձանագրություն
Յուրաքանչյուր ազդանշան ներկայացնում է որոշակի ծածկագիր: Էլեկտրական ազդանշանները կարող են վերադառնալ փաստացի տվյալների/ուղարկողի ուղարկած կոդի: Երբ սեղմում եք հեռուստացույցի հեռակառավարման վահանակի կոճակին, այն ազդանշան է ստեղծում, որը համապատասխանում է կոճակի կոդին (օրինակ ՝ միացված/անջատված, ձայնի բարձրացում և այլն) և այն ուղարկում է ընդունիչի (այս դեպքում ՝ ձեր հեռուստացույցի) համար: Եվ ուղարկողը, և ստացողը համաձայնեցին մի շարք ծածկագրերի շուրջ, որպեսզի ստացողը իմանա, թե ինչ պետք է անի յուրաքանչյուր կոդի հիման վրա: Կոդի ձևավորման (մոդելավորման) եղանակը որպես ազդանշան սահմանվում է տարբեր ստանդարտներով, և յուրաքանչյուր ցուցիչ արտադրող սովորաբար փորձում է արտադրել իրենց հետ համատեղելի արտադրանք, որպեսզի այն կարողանա օգտագործվել տարբեր սարքերում: Ամենահայտնի ստանդարտ արձանագրություններից մեկը NEC- ից է: Վիքիպեդիայում կարող եք գտնել IR արձանագրությունների հակիրճ պատմություն Consumer IR վերնագրի ներքո:
Քայլ 1: Ինչպե՞ս է նման IR սենսորը:
IR սենսորները հասանելի են տարբեր փաթեթների վրա: Այստեղ կարող եք տեսնել մի քանի տիպիկ փաթեթավորում IR ընդունիչի համար:
Քայլ 2: IR սենսորային բեկման տախտակ/մոդուլ
Դուք կարող եք դրանք գնել նաև որպես IR մոդուլ/բեկումնային տախտակ eBay- ում, Aliexpress- ում կամ Amazon- ում: Նման մոդուլները սովորաբար ներառում են վերը նշված սենսորներից մեկը ՝ գեղեցիկ տախտակի համար հարմար փաթեթով, LED- ի հետ միասին, որը կթափվի, երբ սենսորը ազդանշան է հայտնաբերում: Դրանով դուք կնկատեք, եթե որևէ տվյալ փոխանցվի: Ես բարձր եմ առաջարկում սկսել այս մոդուլներից մեկով:
Նշում. Եթե ունեք չմշակված IR սենսոր, ոչինչ չի փոխվի, բացառությամբ այն, որ դուք պետք է ստուգեք սենսորի տվյալների թերթիկը `համոզվելու համար, որ այն ճիշտ եք միացնում, քանի որ հակառակ դեպքում կարող է ունենալ գեղեցիկ կապույտ ծուխ, որի հոտը տևելու է մեկ: ժամ Դուք գիտեք, թե ինչ նկատի ունեմ;)
Քայլ 3: Պահանջվող մասեր և բաղադրիչներ
Այստեղ դուք կարող եք գտնել այն բաղադրիչների ցանկը, որոնք ձեզ անհրաժեշտ են այս ձեռնարկը լրացնելու համար.
eBay հղումներ
- 1 x Arduino Uno ՝
- 1 x IR տվիչի մոդուլ ՝ հեռակառավարմամբ ՝
- 4 x 220 օմ դիմադրություն ՝
- 4 x LED:
- 8 x Dupont մալուխ ՝
- 1 x Եռակցման տախտակ ՝
- 1 x մինի տախտակ (ըստ ցանկության) ՝
Amazon.com- ի հղումներ
- 1 x Arduino Uno ՝
- 1 x IR տվիչի մոդուլ ՝ հեռակառավարմամբ ՝
- 1 x Եռակցման տախտակ ՝
- 4 x 220 օմ դիմադրողներ ՝
- 4 x LED:
- 8 x Dupont մալուխ ՝
- 1 x մինի տախտակ (ըստ ցանկության) ՝
Քայլ 4. IR սենսորը միացնելով Arduino- ին
IR սենսորային կապը Arduino- ի հետ շատ պարզ է: VCC- ի և GND կապի կողքին, սենսորը ունի միայն մեկ ելքային քորոց, որը պետք է միացված լինի Arduino- ի թվային կապումներից մեկին: Այս դեպքում այն միացված է 13 -րդ կապին:
Ես փորձեցի ցուցադրել ինչպես IR սենսորային մոդուլը, այնպես էլ IR սենսորի հումքի կարգավորումը: Ինչպես երևում է նկարներում, սենսորային մոդուլի VCC և GND կապանքների դիրքը հում սենսորի հակառակն է: Այնուամենայնիվ, դա չի կարող լինել ձեր սենսորի դեպքում, այնպես որ, ինչպես նշվեց նախորդ քայլում, հում սենսորն օգտագործելու դեպքում նախ ստուգեք տվյալների թերթիկը:
Քայլ 5. Գտեք հեռակառավարման վահանակի յուրաքանչյուր բանալին համապատասխան ծածկագիրը
Հեռակառավարման բանալին սեղմելիս Arduino- ին ինչ -որ բան ծրագրելու համար նախ պետք է ունենալ այդ ստեղնին համապատասխան կոդ: Հիմնական ծածկագիրը մի թիվ է, որը սովորաբար ներկայացվում է որպես տասնվեցական: Յուրաքանչյուր հեռակառավարիչ ունի իր առանցքային կոդերի փաթեթը, մինչդեռ հնարավոր է, որ երկու վերահսկիչ կիսեն նույն ծածկագիրը տարբեր նպատակների համար: Ունենալով տարբեր առանցքային կոդեր ՝ հաճախությունների տարբեր տիրույթների օգտագործմամբ, ապահովում է, որ տարբեր սարքերի երկու հեռակառավարիչ միջամտություն չունենան: Ահա թե ինչու, երբ փոխում եք ձեր հեռուստաալիքը, ձեր DVD նվագարկիչն ընդհանրապես չի արձագանքում:
Ձեր IR հեռակառավարման վահանակի կոդերը հայտնաբերելու համար դուք պետք է նախ գործեք մի պարզ ուրվագիծ, որը փորձում է կարդալ սենսորից ստեղնը, երբ սեղմում եք ստեղնը և այն սերիական պորտի միջոցով ուղարկում ձեր համակարգչին, որտեղից կարող եք մուտք գործել ՝ օգտագործելով Serial Monitor գործիքները: Arduino IDE: Ահա թե ինչ է անում այս հատվածին կցված ուրվագիծը: Ավելի լավ կլինի սեղմել յուրաքանչյուր կոճակ, որպեսզի տեսնեք ծածկագիրը և ինչ -որ տեղ գրի առեք կոդերի ցանկը, որպեսզի հետագայում կարիք չունենաք նորից գործարկել այս կոդը: Հիմնական կոդերի ցանկը, որոնք պատկերված եք որպես աղյուսակ, իրականում այն կոդերն են, որոնք ես ստացել եմ իմ էժան IR հեռակառավարման վահանակի կոճակները սեղմելիս:
Կարող եք նաև մուտք գործել իմ Arduino վեբ խմբագրիչում տարածված իրական աղբյուրի կոդը `ir-key-code-logger:
Նշում. Մի վախեցեք, եթե ինչ -որ տեղ տեսնեք FFFFFF- ի նման կոդ: Նշանակում է, որ որոշ ժամանակ սեղմել և պահել եք կոճակը: Հետագայում կանդրադառնանք դրան: Առայժմ պարզապես անտեսեք դրանք և կենտրոնացեք այլ կոդերի վրա:
Քայլ 6: Կառավարեք LED- ների մի շարք IR հեռակառավարման միջոցով
Այժմ, երբ մենք ունենք յուրաքանչյուր կոճակի ծածկագիր, ժամանակն է կենտրոնանալ դրանք օգտագործելու եղանակի վրա: Սովորաբար դուք օգտագործում եք IR հեռակառավարիչը ՝ Arduino- ին հրամաններ ուղարկելու համար ՝ լամպը միացնելու կամ անջատելու համար, ռոբոտին որոշակի ուղղությամբ տեղափոխելու, LCD/OLED էկրանին ինչ -որ բան ցուցադրելու և այլն: Այստեղ մենք փորձում ենք ցույց տալ գործընթացը ՝ օգտագործելով մի պարզ միացում, որը բաղկացած է 4 LED- ից `տարբեր գույներով: Մենք ցանկանում ենք նրանցից յուրաքանչյուրը միացնել կամ անջատել IR հեռակառավարման վահանակի հատուկ կոճակով: Ինչպես տեսնում եք սխեմատիկայում, դուք պետք է Arduino- ն միացնեք LED- ների և սենսորների հետևյալ եղանակներին.
Arduino GND -> IR տվիչ GND:
Arduino VCC -> IR տվիչ VCC:
Arduino 13 -> IR տվիչի ազդանշանի ելք:
Arduino 2 -> կապույտ LED- ի անոդ (կապույտ LED- ի ավելի կարճ կապում)
Arduino 3 -> Կանաչ LED- ի անոդ (կանաչ LED- ի ավելի կարճ կապում)
Arduino 4 -> Դեղին LED- ի անոդ (դեղին LED- ի ավելի կարճ քորոց)
Arduino 5 -> կարմիր LED- ի անոդ (կարմիր LED- ի ավելի կարճ կապում)
Arduino GND -> Բոլոր LED- ների կաթոդ 220 օմ դիմադրության միջոցով (LED- ների ավելի երկար քորոց)
Այս սխեմանին համապատասխան ծածկագիրը կարող եք գտնել կից ֆայլում կամ իմ Arduino վեբ խմբագրիչում ՝ ir-led-control:
Քայլ 7: Խնդիրների վերացում
Ձեր նախագիծը կազմավորելիս և քայլերին հետևելիս կարող եք հանդիպել շատ տարօրինակ իրավիճակների: Ահա մի քանի սովորական սխալների ցանկը, որոնք կարող են առաջանալ IR սենսորով աշխատելիս:
Ստանալով FFFFFF ստեղնը սեղմելիս
Կոճակը սեղմելիս կարող եք նկատել, որ շատ ժամանակ այն հայտնում է FFFFFF- ի նման կոդի մասին: Դա տեղի է ունենում, երբ սեղմում եք կոճակը և պահում այն որոշ ժամանակ, նույնիսկ կարճ ժամանակով: Սցենարն այն է, որ երբ սկզբում սեղմում ես կոճակը, IR հեռակառավարիչը ուղարկում է կոճակի ծածկագիրը, և քանի դեռ դու պահում ես կոճակը, այն կրկնում է FFFFFF ուղարկելը, ինչը նշանակում է, որ օգտվողը դեռ սեղմում է վերջերս հայտնված կոճակը: Դա լավ կլիներ: Դուք պարզապես կարող եք դրանք բաց թողնել: Փաստացի կոդն այն է, որը դուք ստացել եք անմիջապես FFFFFF- ից Սերիական մոնիտորի վրա:
IR սենսորն ընդհանրապես չի արձագանքում և կարծես թե տաքանում է:
Կտրեք հոսանքը !!! Եթե վստահ եք, որ առանցքային կոդի գրանցիչի ուրվագիծը ճիշտ է, ապա խնդիրը գուցե ձեր լարերի սխալ տեղադրման պատճառով է: Ինձ հետ պատահած սցենարն այն էր, որ իմ IR մոդուլի (տախտակին կցվածի) համար ես միացրել էի VCC- ն և GND- ը հակառակ ձևով (կապող լարերիս համար համապատասխան գույներ չօգտագործելու պատճառով): Դրանով սենսորի բաղադրիչն այրվեց, և մի գեղեցիկ կապույտ ծուխ բարձրացավ: Ես գնել եմ մի փաթեթ չմշակված IR սենսորներ և փորձել եմ այն փոխարինել, և այժմ այն աշխատում է որպես հմայք:): Unfortunatelyավոք, ես նույն սխալն արեցի, երբ փորձարկում էի չմշակված IR սենսորով, և այս անգամ ոչինչ տեղի չունեցավ, բացի սենսորի տաքացումից: Այսպիսով, միշտ միացրեք էլեկտրահաղորդումը հոսանքը միացնելուց առաջ:
Երբեմն սենսորը հայտնաբերում է այնպիսի կոդ, որը ես երբեք չէի տեսել
Սա ամենատարածված հարցերից մեկն է: Ամենայն հավանականությամբ, դա պայմանավորված է հետևյալ պատճառներից մեկով.
Դուք ձեր IR հեռակառավարման վահանակը չեք ուղղում դեպի սենսորը
Սա կհանգեցնի որոշ նոր կոդերի (հիմնականում ավելի երկար կոդերի), որոնք նախկինում երբեք չեք ստացել և սովորաբար չեն համընկնում արդեն իսկ ունեցած կոդերի երկարության հետ: Ուստի հիշեք, որ միշտ հեռակառավարիչը ուղղեք դեպի ձեր տվիչը:
Դուք օգտագործում եք էժան IR հեռակառավարիչ (ինչպես այն, ինչ ես օգտագործել եմ այս ձեռնարկում)
Էժան անկանխատեսելի հեռակառավարման վահանակների փոխարեն կարող եք փորձել նույն սցենարը `օգտագործելով ձեր հեռուստատեսության կամ DVD նվագարկիչի հեռակառավարման վահանակը կամ ձեր ունեցած ցանկացած սարքի IR հեռակառավարիչը: Նրանք սովորաբար ունեն լավ ազդանշանի/սարքավորումների որակ (և, իհարկե, ավելի թանկ) և, իմ փորձից ելնելով, նրանք սովորաբար լավ են աշխատում, նույնիսկ եթե ձեր հեռակառավարիչը ուղղակիորեն դեպի սենսորը չեք ուղղում:
Ինչպես կարող եմ իմանալ, եթե մուտքագրված կոդը աղբ չէ
Սովորաբար ծածկագրերը ներկայացված են տասնվեցերորդ ձևաչափով: Եթե դրանք փոխարկեք համապատասխան երկուական արժեքի, կնկատեք, որ վերջին բայտի երկուական ներկայացումը բայտի ժխտումն է մինչ այդ: Եթե դուք դա գիտեք, կարող եք ստուգել ձեր ծածկագիրը ՝ համոզվելու համար, որ ձեր ստացած կոդը իրականում վավեր է, թե ոչ: Որպես օրինակ, եթե ստանայիք FF7A85- ը, նրա երկուական ներկայացումը կլիներ ստորև.
1111 1111 0111 1010 1000 0101
Ձախից աջ ՝ 4 թվանշաններից յուրաքանչյուր խմբաքանակը բնույթի ներկայացում է սկզբնական տասնվեցերորդ թվով: Ինչպես տեսնում եք, 7 -ին համապատասխանող խմբաքանակը 0111 է, իսկ 8 -ին համապատասխանող խմբաքանակը ՝ 1000, ինչը դրա ճշգրիտ մերժումն է: Ationխտմամբ ես նկատի ունեմ, որ բոլոր 0 -երը կլինեն 1 -եր, և բոլոր 1 -երը կփոխարինվեն 0 -ով: Նույնը վերաբերում է հաջորդին, որը A (1010) և 5 (0101) է:
Քայլ 8: Ի՞նչ անել հաջորդը:
Հիմա ձեր հերթն է: Ամեն ինչ կախված է ձեր երևակայությունից ՝ տեսնել, թե ինչ կարող եք անել ձեր ձեռքում եղած այս փոքրիկ պարզ սենսորով: Ահա մի քանի գաղափար ՝ սկսելու համար.
- Օգտագործեք տանը գտնվող սարքերից մեկի (հեռուստացույց, ստերեո և այլն) IR հեռակառավարման վահանակը և փորձեք օգտագործել այն ձեր Arduino նախագծում
- Փորձեք միանգամից միացնել բոլոր LED- ները ՝ սեղմելով ստեղնը, այնուհետև անջատեք դրանք ՝ օգտագործելով մեկ այլ ստեղն
- Օգտագործեք հեռակառավարման վահանակի վեր/վար կոճակը ՝ LED- ները մեկ առ մեկ միացնելու/անջատելու համար, մինչև բոլորը միացվեն/անջատվեն
- Ստեղծեք լուսացույց LED- ների միջոցով և կառավարեք այն հեռակառավարման վահանակի միջոցով
- Եթե ձեռքի տակ ունեք մի փոքր DC շարժիչ, փորձեք միացնել/դադարեցնել կամ փոխել դրա պտույտի ուղղությունը IR հեռակառավարման վահանակի միջոցով
- Դուք կարող եք օգտագործել ձեր հեռուստատեսության հեռակառավարիչը ՝ վերահսկելու ձեր ռոբոտը կամ միացնելու/անջատելու դրա վրա որոշ տվիչներ/գործարկիչներ
Տեղեկացրեք ինձ մեկնաբանությունների վերաբերյալ, թե ինչ կանեիք (կամ արդեն արել եք) IR հեռակառավարման վահանակի միջոցով:
Խորհուրդ ենք տալիս:
Arduino ինտերֆեյս ուլտրաձայնային տվիչի և անհպում ջերմաստիճանի տվիչի հետ `8 քայլ
Arduino- ի ինտերֆեյս ուլտրաձայնային տվիչի և ջերմաստիճանի անշփման սենսորի հետ. Մեր օրերում արտադրողները, ծրագրավորողները նախընտրում են Arduino- ն `նախագծերի նախատիպերի արագ զարգացման համար: Arduino- ն բաց կոդով էլեկտրոնիկայի հարթակ է, որը հիմնված է հեշտ օգտագործման ապարատային և ծրագրային ապահովման վրա: Arduino- ն ունի շատ լավ օգտագործողների համայնք: Այս նախագծում
Աչքի շարժման հետևում ինֆրակարմիր տվիչի միջոցով `5 քայլ
Աչքի շարժման հետևում ինֆրակարմիր սենսորով. Ես օգտագործել եմ ինֆրակարմիր սենսոր ՝ աչքերի շարժումները զգալու և LED- ն վերահսկելու համար: Ես ակնագնդեր եմ պատրաստել LED Կասետային NeoPixel- ով
Շարժման տվիչի օգտագործումը RaspberryPi- ով և Telegram Bot- ով ՝ 4 քայլ
Շարժման սենսորի օգտագործումը RaspberryPi- ի և Telegram Bot- ի հետ. Բարև տղերք: Այս գրառման մեջ մենք պատրաստվում ենք օգտագործել Raspberry Pi Telegram Bot- ը PIR (շարժման) սենսորով:
Ուլտրաձայնային տվիչի միջոցով Arduino- ի վրա հիմնված ինքնավար բոտ. 5 քայլ (նկարներով)
Ուլտրաձայնային տվիչի միջոցով Arduino- ի վրա հիմնված ինքնավար բոտ. Ստեղծեք ձեր սեփական Arduino- ի վրա հիմնված ինքնավար բոտ `օգտագործելով ուլտրաձայնային տվիչ: Այս բոտը կարող է շատ ինքնուրույն տեղաշարժվել` առանց որևէ խոչընդոտի բախվելու: Հիմնականում այն, ինչ անում է, այն է, որ իր ճանապարհին հայտնաբերում է ցանկացած տեսակի խոչընդոտներ և որոշում լավագույնը
DS18B20 տվիչի չափաբերում Arduino UNO- ով. 3 քայլ (նկարներով)
DS18B20 սենսորի չափաբերում Arduino- ով UNO: ՀԱISՈ :Ո :ԹՅՈՆ. Սարքը, որը տեսնում եք նկարներում, օգտագործվում է մեկ այլ նախագծում `որպես ֆիլմի մշակման գործընթացի թերմոստատ: Այդ նախագծին կարող եք ծանոթանալ այստեղ: Սենսորը կամ մեկից ավելին ճշգրտելու համար ձեզ հարկավոր կլինի այն, ինչ կգտնեք այս նախագծում