Mündəricat:
- Addım 1: IR sensoru necə görünür?
- Addım 2: IR Sensor Breakout Board/modul
- Addım 3: Lazım olan hissələr və komponentlər
- Addım 4: IR Sensorunu Arduinoya bağlayın
- Addım 5: Uzaqdan Hər Açarına Uyğun Kodu Tapın
- Addım 6: IR Uzaqdan istifadə edərək bir LED dəstini idarə edin
- Addım 7: Problemlərin aradan qaldırılması
- Addım 8: Bundan sonra nə etməli?
Video: Arduino ilə İnfraqırmızı Sensorun İstifadəsi: 8 Addım (Şəkillərlə birlikdə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
İnfraqırmızı sensoru (aka IR) nədir?
IR sensoru, standartlar tərəfindən müəyyən edilmiş müəyyən bir tezlik aralığında İQ siqnallarını tarayan və çıxış pinindəki elektrik siqnallarına çevirən elektron cihazdır (adətən siqnal pimi adlanır). IR siqnalları əsasən televizorun uzaqdan idarəetmə pultlarında və ya digər oxşar elektron cihazlarda işlədiyiniz kimi qısa məsafələrdə (adətən bir neçə metr) əmrləri havadan ötürmək üçün istifadə olunur.
IR rabitə protokolu
Hər bir siqnal müəyyən bir kodu təmsil edir. Elektrik siqnalları, göndərənin göndərdiyi faktiki məlumatlara/koda çevrilə bilər. Televizorunuzun pultundakı bir düyməyə basdığınızda, düymə koduna uyğun bir siqnal yaradır (məsələn, Açma/Kapama, Səsin Yüksəldilməsi və s.) Və alıcıya (bu halda TV) göndərir. Həm göndərən, həm də alıcı bir sıra kodlar üzərində razılığa gəldi ki, alıcı hər bir kod əsasında nə edəcəyini bilsin. Bir siqnalın fərqli bir modulda (modelləşdirilməsinin) yolu fərqli bir standartda müəyyən edilir və hər bir sensor istehsalçısı normal olaraq fərqli cihazlarda istifadə edilməsi üçün onlarla uyğun bir məhsul istehsal etməyə çalışır. Ən məşhur standart protokollardan biri NEC -dir. İQ protokollarının qısa tarixçəsini Vikipediyada İstehlakçı MR başlığı altında tapa bilərsiniz.
Addım 1: IR sensoru necə görünür?
IR sensorlar müxtəlif paketlərdə mövcuddur. Burada IR alıcısı üçün tipik bir qablaşdırma görə bilərsiniz.
Addım 2: IR Sensor Breakout Board/modul
Onları eBay, Aliexpress və ya Amazon -da IR modulu/kəsmə lövhəsi olaraq da ala bilərsiniz. Bu cür modullar, adətən yuxarıda göstərilən sensorlardan birini, gözəl bir çörək bortu dostu paketi ilə birlikdə, sensor bir siqnal alanda yanıb -sönəcək bir LED -i özündə birləşdirir. Bunu etməklə hər hansı bir məlumatın ötürüldüyünü görəcəksiniz. Bu modullardan birindən başlamağı şiddətlə təklif edirəm.
Qeyd: Xam IR sensoru varsa, heç bir şey dəyişməyəcək, ancaq sensoru düzgün bağladığınızdan əmin olmaq üçün məlumat cədvəlini yoxlamalısınız, çünki əks halda qoxusu olan gözəl mavi tüstü ola bilər. saat Nə demək istədiyimi bilirsən;)
Addım 3: Lazım olan hissələr və komponentlər
Bu təlimatı tamamlamaq üçün lazım olan komponentlərin siyahısını burada tapa bilərsiniz:
eBay bağlantıları:
- 1 x Arduino Uno:
- Uzaqdan idarə olunan 1 x IR sensor modulu:
- 4 x 220 ohm rezistorlar:
- 4 x LED:
- 8 x Dupont kabeli:
- 1 x Lehimsiz çörək taxtası:
- 1 x Mini çörək taxtası (isteğe bağlı):
Amazon.com bağlantıları:
- 1 x Arduino Uno:
- Uzaqdan idarə olunan 1 x IR sensor modulu:
- 1 x Lehimsiz çörək taxtası:
- 4 x 220 ohm rezistorlar:
- 4 x LED:
- 8 x Dupont kabeli:
- 1 x Mini çörək taxtası (isteğe bağlı):
Addım 4: IR Sensorunu Arduinoya bağlayın
Arduino ilə IR sensoru bağlantısının qurulması çox sadədir. VCC və GND pininin yanında, sensorun Arduinonun rəqəmsal pinlərindən birinə bağlanmalı olan yalnız bir çıxış pimi var. Bu vəziyyətdə pin 13 -ə bağlanır.
Həm IR sensoru modulunu, həm də xam IR sensoru quruluşunu nümayiş etdirməyə çalışdım. Şəkillərdə göründüyü kimi, sensor modulundakı VCC və GND sancaqlarının mövqeyi xam sensorun əksidir. Ancaq sensorunuzda belə olmaya bilər, buna görə də əvvəlki addımda qeyd edildiyi kimi, xam sensordan istifadə edildikdə əvvəlcə məlumat cədvəlini yoxlayın.
Addım 5: Uzaqdan Hər Açarına Uyğun Kodu Tapın
Uzaqdan idarəetmə düyməsinə basdığınızda Arduinonun bir şey etməsini proqramlaşdırmaq üçün əvvəlcə həmin düyməyə uyğun olan kod olmalıdır. Açar kodu normal olaraq onaltılıq olaraq təqdim olunan bir rəqəmdir. Hər bir uzaqdan idarəedicinin öz açar kodları dəsti var, iki idarəedicinin eyni kodu fərqli məqsədlər üçün paylaşması mümkündür. Fərqli açar kodlarının olması, fərqli tezlik aralığının istifadəsi, fərqli cihazların iki uzaqdan idarəedicisinin müdaxilə etməməsini təmin edir. Buna görə TV kanalınızı dəyişdirdiyiniz zaman DVD pleyeriniz heç bir reaksiya vermir.
IR uzaqdan idarəetmə sisteminizin kodlarını aşkar etmək üçün əvvəlcə bir düyməyə basıldıqda kodu sensordan oxumağa çalışan və bunu Serial Monitor vasitələrindən istifadə edərək əldə edə biləcəyiniz kompüterə serial portu ilə göndərən sadə bir eskiz hazırlamalısınız. Arduino IDE. Bu hissəyə əlavə edilmiş eskiz bunu edir. Gələcəkdə bu kodu yenidən işlətməyiniz üçün kodu görmək və kodların siyahısını bir yerə yazmaq üçün hər düyməni basmaq daha yaxşı olar. Şəkildə bir cədvəl olaraq gördüyünüz açar kodların siyahısı əslində ucuz IR uzaqdan idarəetmə düymələrimə basarkən aldığım kodlardır.
İrdu-key-logger-də Arduino veb redaktorumda paylaşılan faktiki mənbə koduna da daxil ola bilərsiniz.
Qeyd: Arada bir yerdə FFFFFF kimi bir kod görsəniz qorxmayın. Bir düyməni bir müddət basıb saxlayın deməkdir. Daha sonra buna yenidən qayıdacağıq. Hələlik onlara məhəl qoymayın və digər kodlara diqqət yetirin.
Addım 6: IR Uzaqdan istifadə edərək bir LED dəstini idarə edin
İndi hər bir düymə üçün bir kodumuz var, onlardan istifadə etmə üsulumuza diqqət yetirməyin vaxtı gəldi. Normalda IR uzaqdan istifadə edərək lampanı yandırmaq və ya söndürmək, robotu müəyyən istiqamətdə hərəkət etdirmək, LCD/OLED ekranda bir şey göstərmək və s. müxtəlif rəngli 4 LEDdən ibarət dövrə. IR uzaqdan idarəetmə düyməsinin hər birini açmaq və ya söndürmək istəyirik. Şemada gördüyünüz kimi, Arduino'yu LED və sensora aşağıdakı şəkildə bağlamalısınız:
Arduino GND -> IR sensoru GND.
Arduino VCC -> IR sensoru VCC.
Arduino 13 -> IR sensoru siqnal çıxışı.
Arduino 2 -> Mavi LED anotu (mavi LED -in daha qısa pin)
Arduino 3 -> Yaşıl LED -in anodu (yaşıl LED -in daha qısa pimi)
Arduino 4 -> Sarı LED anodu (sarı LEDin daha qısa pin)
Arduino 5 -> Qırmızı LED anodu (qırmızı LED -in daha qısa pin)
Arduino GND -> 220 ohm rezistor vasitəsilə bütün LED -lərin katotu (LED -lərin daha uzun pimi)
Bu sxemə uyğun kodu əlavə edilmiş faylda və ya ir-led-nəzarətdəki Arduino veb redaktorumda tapa bilərsiniz.
Addım 7: Problemlərin aradan qaldırılması
Layihənizi qurarkən və addımları izləyərkən bir çox qəribə vəziyyətlə qarşılaşa bilərsiniz. IR sensoru ilə işləyərkən əldə edə biləcəyiniz bəzi ümumi səhvlərin siyahısı.
Bir düyməyə basarkən FFFFFF əldə etmək
Bir düyməni basarkən, çox vaxt FFFFFF kimi bir kodu bildirdiyini görə bilərsiniz. Bu, bir düyməni basıb bir müddət, hətta qısa bir müddət saxladığınız zaman olur. Ssenari budur ki, əvvəlcə düyməni basdığınız zaman, IR uzaqdan düymə kodunu göndərir və düyməni basılı tutduğunuz müddətdə FFFFFF göndərilməsini təkrarlayır, bu da istifadəçinin hələ də son vaxtlar bildirdiyi düyməni basdığını göstərir. Yaxşı olardı. Onları sadəcə buraxa bilərsiniz. Əsl kod, Serial Monitorda FFFFFF -dən əvvəl əldə etdiyiniz koddur.
IR Sensor heç bir reaksiya vermir və sanki istiləşir
Gücü kəsin !!! Açar kod yazan eskizinin düzgün olduğuna əminsinizsə, problem tellərinizin düzgün qurulmamasına görə ola bilər. Başıma gələn ssenari, IR modulum üçün (lövhəyə yapışdırılmış) VCC və GND -ni əksinə bağladığım (bağlama tellərim üçün uyğun rənglərdən istifadə etməməyim) idi. Bunu etməklə sensor komponenti yandı və gözəl mavi tüstü qalxdı. Bir paket xam IR sensoru aldım və onu dəyişdirməyə çalışdım və indi bir cazibədarlıq kimi işləyir:). Təəssüf ki, çiy IR sensoru ilə test edərkən eyni səhvi etdim və bu dəfə sensorun istiləşməsindən başqa heç nə baş vermədi. Buna görə gücü açmadan əvvəl həmişə dövrə yoxlayın!
Bəzən sensor əvvəllər görmədiyim kodu aşkarlayır
Bu ən çox yayılmış problemlərdən biridir. Çox güman ki, aşağıdakı səbəblərdən biridir:
İQ pultunuzu birbaşa sensora yönəltmirsiniz
Bu, əvvəllər heç almadığınız və ümumiyyətlə mövcud kodların uzunluğuna uyğun gəlməyən bəzi yeni kodların (daha uzun kodların) olmasına səbəb olacaq. Unutmayın ki, pultu həmişə sensorunuza yönəltməyi unutmayın.
Ucuz bir IR uzaqdan istifadə edirsiniz (bu təlimatda istifadə etdiyim kimi)
Ucuz bir proqnozlaşdırıla bilməyən pultdan istifadə etmək əvəzinə, televizorunuzu və ya DVD pleyerinizi və ya əlinizdə olan hər hansı bir cihazın IR uzaqdan idarə etməsini istifadə edərək eyni ssenarini sınaya bilərsiniz. Normalda yaxşı bir siqnal/aparat keyfiyyətinə malikdirlər (və əlbəttə ki, daha bahalıdır) və təcrübəmə əsaslanaraq, pultunuzu birbaşa sensora yönəltməsəniz də normal işləyirlər.
Daxil olan bir kodun zibil olmadığını necə bilə bilərəm
Kodlar ümumiyyətlə onaltılıq formatda təqdim olunur. Onları müvafiq ikili dəyərə çevirsəniz, son baytın ikili təsvirinin baytın inkar edilməsi olduğunu görürsünüz. Bunu bilirsinizsə, aldığınız kodun əslində etibarlı olub olmadığını yoxlamaq üçün kodunuzu yoxlaya bilərsiniz. Məsələn, FF7A85 -ə sahib olsanız, onun ikili təmsilçiliyi aşağıdakı kimi olacaq:
1111 1111 0111 1010 1000 0101
Soldan sağa, 4 rəqəmdən ibarət hər bir dəstə, orijinal onaltılıq sayında bir xarakterin nümayəndəsidir. Gördüyünüz kimi, 7 -yə uyğun olan dəstə 0111, 8 -ə uyğun toplu isə 1000 -dir ki, bunun tam inkarıdır. İnkar etməklə demək istəyirəm ki, bütün 0 -lar 1s olacaq və bütün 1 -lər də 0 -larla əvəz olunacaq. Eyni şey A (1010) və 5 (0101) olan növbəti biri üçün də keçərlidir.
Addım 8: Bundan sonra nə etməli?
İndi növbə sənindir. Əlinizdəki bu kiçik sensorla nələr edə biləcəyinizi görmək yalnız xəyalınıza bağlıdır. Başlamaq üçün bəzi fikirlər:
- Evinizdə olan cihazlardan birinin (TV, Stereo və s.) IR uzaqdan idarəetməsini istifadə edin və Arduino layihənizdə istifadə etməyə çalışın.
- Bir düyməni basaraq bütün LEDləri bir anda açmağa çalışın və sonra başqa bir düyməni istifadə edərək söndürün
- LED -lərin hamısı açılana/sönənə qədər bir -bir açmaq/açmaq üçün pultun yuxarı/aşağı düyməsini istifadə edin
- LED -lərdən istifadə edərək svetofor yaradın və pultunuzla idarə edin
- Əlinizdə kiçik bir DC mühərriki varsa, IR uzaqdan idarəetmə vasitəsi ilə başlamağa/dayandırmağa və ya fırlanma istiqamətini dəyişdirməyə çalışın
- Robotunuzu idarə etmək və ya üzərindəki bəzi sensorları/aktuatorları işə salmaq/söndürmək üçün televizorunuzun pultundan istifadə edə bilərsiniz
Şərhlərdə mənə bildirin, IR uzaqdan istifadə edərək nə edərdiniz (və ya artıq etmisiniz).
Tövsiyə:
USB ÜZƏRİNDƏ SENSORUN ƏLAQƏSİ: 3 addım
USB ÜZƏRİNDƏ SENSOR İLETİŞİMİ: Bu təlimat, İzolə edilmiş USB EZO Taşıyıcı Kartının EZO sxemləri ilə qarşılıqlı əlaqədə necə istifadə olunacağını göstərir. Bir neçə sadə addımla, sxemləri kalibr edə və ayıklaya və ya hətta sözügedən parametri real vaxtda izləyə biləcəksiniz
Həqiqi işləyən Harry Potter Çubuq Kompüter Görmə İstifadəsi: 8 Addım (Şəkillərlə birlikdə)
Həqiqi İşçi Harry Potter Çubuğu Kompüter Vizyonundan istifadə edərək: " Hər Kifayət qədər Qabaqcıl Texnologiya Sehrdən Ayrılmaz " - Arthur C. Clarke Bir neçə ay əvvəl qardaşım Yaponiyanı ziyarət etdi və Universal Studios -da Harry Potterin Sihirbazlıq Dünyasında əsl sehrbazlıq təcrübəsi var idi
DIYMall RFID-RC522 və Nokia LCD5110-un Arduino ilə İstifadəsi Başqa Bir Təlimat: 8 Addım (Şəkillərlə)
DIYMall RFID-RC522 və Nokia LCD5110-u Arduino ilə İstifadə etməyi Başqa Bir Təlimat: Niyə DIYMall RFID-RC522 və Nokia LCD5110 üçün başqa bir Təlimat yaratmağa ehtiyac duydum? Düzünü deyim ki, keçən il bir zamanlar bu cihazların hər ikisindən istifadə edərək bir Konsepsiya Proofu üzərində işləyirdim və birtəhər "səhvən"
IoT Sadə Oldu: Birdən çox Sensorun İzlənməsi: 7 Addım
IoT Sadə: Birdən çox Sensorun İzlənməsi: Bir neçə həftə əvvəl, burada 1 telli bir avtobusla əlaqə quran, NodeMCU və Blynk ilə internet üzərindən məlumat göndərən DS18B20 rəqəmsal sensoru istifadə edərək istiliyin monitorinqi ilə bağlı bir dərslik dərc etdim. : İstənilən yerdə İstiliyin İzlənməsiBu
Raspberry Pi Zero ilə İnfraqırmızı Lazer Etiketi: 6 Addım (Şəkillərlə)
Raspberry Pi Zero ilə İnfraqırmızı Lazer Etiketi: Bu Təlimat, hər bir oyunçu üçün bir baza server kompüteri və bir Raspberry Pi sıfırdan istifadə edərək İnfraqırmızı Lazer Etiket oyunu yaratmaq prosesini keçəcək. Layihə, serverlə ünsiyyət qurmaq üçün çoxlu Wifi bağlantısına əsaslanır