Përmbajtje:

Përdorimi i sensorit infra të kuqe me Arduino: 8 hapa (me fotografi)
Përdorimi i sensorit infra të kuqe me Arduino: 8 hapa (me fotografi)

Video: Përdorimi i sensorit infra të kuqe me Arduino: 8 hapa (me fotografi)

Video: Përdorimi i sensorit infra të kuqe me Arduino: 8 hapa (me fotografi)
Video: Использование Melexis MLX90614 Инфракрасный термометр с Arduino 2024, Qershor
Anonim
Përdorimi i sensorit infra të kuqe me Arduino
Përdorimi i sensorit infra të kuqe me Arduino

Çfarë është një sensor infra të kuqe (aka IR)?

Një sensor IR është një instrument elektronik që skanon sinjalet IR në një gamë të caktuar frekuencash të përcaktuar nga standardet dhe i konverton ato në sinjale elektrike në kunjin e tij të daljes (i quajtur zakonisht kunja e sinjalit). Sinjalet IR përdoren kryesisht për transmetimin e komandave në ajër në distanca të shkurtra (zakonisht disa metra) si ajo me të cilën keni punuar tashmë në telekomandat televizive ose pajisje të tjera të ngjashme elektronike.

Protokolli i komunikimit IR

Çdo sinjal përfaqëson një kod specifik. Sinjalet elektrike mund të konvertohen përsëri në të dhënat/kodin aktual që dërguesi ka dërguar. Kur shtypni një buton në telekomandën e televizorit, ai gjeneron një sinjal që korrespondon me kodin e butonit (p.sh. On/Off, Volume Up, etj.) Dhe e dërgon atë për një marrës (në këtë rast TV tuaj). Si dërguesi ashtu edhe marrësi ranë dakord për një sërë kodesh në mënyrë që marrësi të dijë se çfarë të bëjë bazuar në secilin kod. Mënyra se si një kod duhet moduluar (modeluar) si një sinjal është përcaktuar në standarde të ndryshme dhe secili prodhues i sensorit normalisht përpiqet të prodhojë një produkt të pajtueshëm me ta në mënyrë që të mund të përdoret në pajisje të ndryshme. Një nga protokollet standarde më të njohur është nga NEC. Ju mund të gjeni një histori të shkurtër të protokolleve IR në Wikipedia nën titullin IR të Konsumatorit.

Hapi 1: Si duket një sensor IR?

Si duket një sensor IR?
Si duket një sensor IR?
Si duket një sensor IR?
Si duket një sensor IR?
Si duket një sensor IR?
Si duket një sensor IR?

Sensorët IR janë në dispozicion në pako të ndryshme. Këtu mund të shihni disa paketime tipike për një marrës IR.

Hapi 2: Bordi/moduli i ndarjes së sensorit IR

Bordi/moduli i ndezjes së sensorit IR
Bordi/moduli i ndezjes së sensorit IR
Bordi/moduli i ndezjes së sensorit IR
Bordi/moduli i ndezjes së sensorit IR
Bordi/moduli i ndezjes së sensorit IR
Bordi/moduli i ndezjes së sensorit IR
Bordi/moduli i ndezjes së sensorit IR
Bordi/moduli i ndezjes së sensorit IR

Ju gjithashtu mund t'i blini ato si një modul IR/bord shpërthimi në eBay, Aliexpress ose Amazon. Module të tilla normalisht përfshijnë njërin nga sensorët e përmendur më sipër me një paketë të këndshme miqësore me bukë, së bashku me një LED që do të ndizet kur sensori të zbulojë një sinjal. Duke vepruar kështu ju do të vini re nëse ndonjë e dhënë po transferohet. Unë sugjeroj shumë të filloni me një nga këto module.

Shënim: nëse keni një sensor IR të papërpunuar, asgjë nuk do të ndryshonte, përveç që ju duhet të kontrolloni fletën e të dhënave të sensorit për t'u siguruar që e lidhni siç duhet, sepse përndryshe mund të keni një tym të bukur blu me një erë që do të zgjasë për një orë Ti më kupton se ku e kam fjalën;)

Hapi 3: Pjesët dhe komponentët e kërkuar

Pjesët dhe komponentët e kërkuar
Pjesët dhe komponentët e kërkuar

Këtu mund të gjeni listën e përbërësve që ju nevojiten për të përfunduar këtë tutorial:

Lidhjet eBay:

  • 1 x Arduino Uno:
  • 1 x modul sensori IR me telekomandë:
  • 4 x 220 rezistenca ohm:
  • 4 x LED:
  • 8 x kabllo Dupont:
  • 1 x Bordele pa saldim:
  • 1 x Mini breadboard (opsionale):

Lidhjet e Amazon.com:

  • 1 x Arduino Uno:
  • 1 x modul sensori IR me telekomandë:
  • 1 x Bordele pa saldim:
  • 4 rezistente 220 ohm:
  • 4 x LED:
  • 8 x kabllo Dupont:
  • 1 x Mini breadboard (opsionale):

Hapi 4: Lidhja e sensorit IR me Arduino

Lidh sensorin IR me Arduino
Lidh sensorin IR me Arduino
Lidh sensorin IR me Arduino
Lidh sensorin IR me Arduino
Lidh sensorin IR me Arduino
Lidh sensorin IR me Arduino

Vendosja e lidhjes së sensorit IR me Arduino është shumë e thjeshtë. Përveç kunjit VCC dhe GND, sensori ka vetëm një kunj dalës që duhet të lidhet me një nga kunjat dixhitale të Arduino. Në këtë rast është i lidhur me pin 13.

Unë u përpoqa të demonstroj modulin e sensorit IR dhe konfigurimin e papërpunuar të sensorit IR. Siç mund të shihet në fotografi, pozicioni i kunjave VCC dhe GND në modulin e sensorit është e kundërta e sensorit të papërpunuar. Sidoqoftë, mund të mos jetë rasti për sensorin tuaj, kështu që siç u përmend në hapin e mëparshëm, në rast të përdorimit të sensorit të papërpunuar, kontrolloni së pari fletën e të dhënave.

Hapi 5: Gjeni kodin që korrespondon me secilin çelës në telekomandë

Gjeni kodin që korrespondon me secilin çelës në telekomandë
Gjeni kodin që korrespondon me secilin çelës në telekomandë
Gjeni kodin që korrespondon me secilin çelës në telekomandë
Gjeni kodin që korrespondon me secilin çelës në telekomandë
Gjeni kodin që korrespondon me secilin çelës në telekomandë
Gjeni kodin që korrespondon me secilin çelës në telekomandë

Në mënyrë që të programoni Arduino të bëjë diçka kur shtypni një çelës në telekomandë, së pari duhet të keni kodin që korrespondon me atë çelës. Kodi kryesor është një numër që normalisht paraqitet si heksadecimal. Çdo telekomandë ka grupin e vet të kodeve kryesore, ndërsa është e mundur që dy kontrollues të ndajnë të njëjtin kod për qëllime të ndryshme. Duke pasur kode të ndryshme kyçe së bashku me përdorimin e frekuencave të ndryshme, siguron që dy telekomandë të pajisjeve të ndryshme nuk do të kenë ndërhyrje. Kjo është arsyeja pse kur ndryshoni kanalin tuaj televiziv, DVD player nuk reagon fare.

Për të zbuluar kodet për telekomandën tuaj IR, së pari duhet të ekzekutoni një skicë të thjeshtë që përpiqet të lexojë kodin nga sensori kur shtypni një çelës dhe e dërgon atë nëpërmjet portës serike në kompjuterin tuaj, ku mund ta përdorni atë duke përdorur mjetet e Serial Monitor të Arduino IDE. Kjo është ajo që bën skica e bashkangjitur në këtë seksion. Do të ishte më mirë të shtypni çdo buton në mënyrë që të shihni kodin dhe të shkruani listën e kodeve diku, në mënyrë që të mos keni nevojë ta përdorni përsëri këtë kod në të ardhmen. Lista e kodeve kryesore që shihni si tabelë në foto janë në të vërtetë kodet që kam marrë kur shtypni butonat në telekomandën time të lirë IR.

Ju gjithashtu mund të hyni në kodin burimor aktual të ndarë në redaktorin tim të uebit Arduino në ir-key-code-logger.

Shënim: Mos kini frikë nëse shihni një kod si FFFFFF diku në mes. Do të thotë që keni shtypur dhe mbajtur një buton për një kohë. Ne do të kthehemi në të më vonë. Tani për tani thjesht injorojini ato dhe përqendrohuni në kode të tjera.

Hapi 6: Kontrolloni një sërë LEDs duke përdorur telekomandën IR

Kontrolloni një sërë LEDs duke përdorur telekomandën IR
Kontrolloni një sërë LEDs duke përdorur telekomandën IR
Kontrolloni një sërë LEDs duke përdorur telekomandën IR
Kontrolloni një sërë LEDs duke përdorur telekomandën IR
Kontrolloni një sërë LEDs duke përdorur telekomandën IR
Kontrolloni një sërë LEDs duke përdorur telekomandën IR

Tani që kemi një kod për secilën buton, është koha të përqëndrohemi në mënyrën se si mund t'i përdorim ato. Normalisht ju përdorni telekomandën IR për të dërguar komanda tek Arduino për të bërë diçka si ndezja ose fikja e një llambë, lëvizja e një roboti në drejtim të veçantë, shfaqja e diçkaje në një ekran LCD/OLED, etj. Këtu ne përpiqemi të demonstrojmë procesin duke përdorur një të thjeshtë qark i përbërë nga 4 LED në ngjyra të ndryshme. Ne duam të ndezim ose fikim secilën prej tyre me një buton të veçantë të telekomandës IR. Siç mund ta shihni në skemë, ju duhet të lidhni Arduino në mënyrën e mëposhtme me LED dhe sensorin:

Arduino GND -> Sensori IR GND.

Arduino VCC -> IR sensor VCC.

Arduino 13 -> Dalja e sinjalit të sensorit IR.

Arduino 2 -> Anode e LED blu (kunja më e shkurtër e LED blu)

Arduino 3 -> Anodë e LED -it të gjelbër (kunja më e shkurtër e LED -it të gjelbër)

Arduino 4 -> Anodë e LED të verdhë (kunja më e shkurtër e LED e verdhë)

Arduino 5 -> Anodë e LED të kuq (kunja më e shkurtër e LED e kuqe)

Arduino GND -> Katoda e të gjitha LED -ve përmes një rezistence 220 ohm (kunja më e gjatë e LED -ve)

Kodin që korrespondon me këtë qark mund ta gjeni në skedarin e bashkangjitur ose në redaktorin tim të uebit Arduino në ir-led-control.

Hapi 7: Zgjidhja e problemeve

Ndërsa vendosni projektin tuaj dhe ndiqni hapat, mund të hasni në shumë situata të çuditshme. Këtu është lista e disa gabimeve të zakonshme që mund të merrni kur punoni me sensorin IR.

Marrja e FFFFFF kur shtypni një çelës

Kur shtypni një buton mund të vini re se shumicën e kohës raporton një kod si FFFFFF. Kjo ndodh kur shtypni një buton dhe e mbani atë për një kohë, edhe për një periudhë të shkurtër kohe. Skenari është që kur shtypni butonin fillimisht, telekomanda IR dërgon kodin e butonit dhe për sa kohë që mbani butonin, ai përsërit dërgimin e FFFFFF që do të thotë se përdoruesi është ende duke shtypur butonin e raportuar kohët e fundit. Kjo do të ishte në rregull. Thjesht mund t'i anashkaloni ato. Kodi aktual është ai që keni marrë menjëherë para FFFFFF në Monitor Serial.

Sensori IR nuk reagon fare dhe duket se po ngrohet

Ndërpriteni energjinë !!! Nëse jeni të sigurt se skica e regjistruesit të kodit kyç është e saktë, atëherë problemi ndoshta është për shkak të konfigurimit të gabuar të telave tuaj. Skenari që më ndodhi ishte që për modulin tim IR (ai i bashkangjitur në tabelë) të kisha lidhur VCC dhe GND në mënyrë të kundërt (për shkak të mos përdorimit të ngjyrave të duhura për telat e mi lidhës). Duke vepruar kështu, përbërësi i sensorit u dogj dhe u ngrit një tym i bukur blu. Bleva një paketë me sensorë IR të papërpunuar dhe u përpoqa ta zëvendësoja dhe tani funksionon si një bukuri:). Fatkeqësisht bëra të njëjtin gabim kur isha duke testuar me sensorin IR të papërpunuar dhe këtë herë asgjë nuk ndodhi përveç se sensori u ngroh. Pra, gjithmonë kontrolloni qarkun para se të ndizni energjinë!

Ndonjëherë sensori zbulon një kod që nuk e kam parë kurrë më parë

Kjo është një nga çështjet më të zakonshme. Ka shumë të ngjarë të jetë për një nga arsyet e mëposhtme:

Nuk po e drejtoni telekomandën tuaj drejtpërsëdrejti në drejtim të sensorit

Kjo do të çojë në marrjen e disa kodeve të reja (kryesisht kode më të gjata) që nuk i keni marrë kurrë më parë dhe normalisht nuk përputhen me gjatësinë e kodeve që tashmë i keni. Prandaj mos harroni të drejtoni gjithmonë telekomandën drejt sensorit tuaj.

Po përdorni një telekomandë të lirë IR (si ajo që kam përdorur në këtë tutorial)

Në vend që të përdorni një telekomandë të lirë të paparashikueshme, mund të provoni të njëjtin skenar duke përdorur telekomandën tuaj TV ose DVD Player ose një telekomandë IR të çdo pajisjeje që keni. Ata normalisht kanë një sinjal të mirë/cilësi harduerike (dhe natyrisht që janë më të shtrenjtë) dhe bazuar në përvojën time, ato normalisht funksionojnë mirë edhe nëse nuk e drejtoni telekomandën drejtpërsëdrejti te sensori.

Si mund ta di nëse një kod i regjistruar nuk është mbeturinë

Kodet zakonisht paraqiten në formatin heksadecimal. Nëse i konvertoni në vlerën përkatëse binare, do të vini re se përfaqësimi binar i bajtit të fundit është mohimi i bajtit që vjen para kësaj. Nëse e dini këtë, mund ta bëni këtë kontroll në kodin tuaj për t'u siguruar që kodi që keni marrë është në të vërtetë i vlefshëm ose jo. Si shembull, nëse merrni FF7A85, përfaqësimi i tij binar do të ishte si më poshtë:

1111 1111 0111 1010 1000 0101

Nga e majta në të djathtë, secila grup prej 4 shifrash përfaqëson një karakter në numrin heksadecimal origjinal. Siç mund ta shihni, grupi që korrespondon me 7 është 0111 dhe grupi që korrespondon me 8 është 1000 që është mohimi i saktë i tij. Me mohim dua të them që të gjitha 0 do të ishin 1 dhe të gjitha 1 do të zëvendësoheshin me 0. E njëjta gjë vlen edhe për tjetrën që është A (1010) dhe 5 (0101).

Hapi 8: Çfarë duhet të bëni tjetër?

Tani është radha juaj. E gjitha varet nga imagjinata juaj për të parë se çfarë mund të bëni me këtë sensor të vogël të thjeshtë në dorën tuaj. Këtu janë disa ide për të filluar:

  • Përdorni telekomandën IR të njërës prej pajisjeve që keni në shtëpi (TV, Stereo, etj.) Dhe përpiquni ta përdorni në projektin tuaj Arduino
  • Mundohuni të ndizni të gjitha LED -të menjëherë duke shtypur një buton dhe pastaj fikini ato duke përdorur një çelës tjetër
  • Përdorni butonin Lart/Poshtë të telekomandës për të ndezur/fikur LED -et një nga një derisa të gjithë të ndizen/fiken
  • Krijoni një semafor duke përdorur LED dhe kontrolloni atë duke përdorur telekomandën tuaj
  • Nëse keni një motor të vogël DC në dorë, përpiquni të filloni/ndaloni ose ndryshoni drejtimin e tij të rrotullimit përmes telekomandës IR
  • Mund të përdorni telekomandën tuaj televizive për të kontrolluar robotin tuaj ose për të aktivizuar/çaktivizuar disa sensorë/aktivizues në të

Më tregoni për komentet, çfarë do të bënit (ose keni bërë tashmë) duke përdorur telekomandën IR.

Recommended: