Satura rādītājs:
- 1. darbība: kā izskatās IR sensors?
- 2. solis: IR sensora sadalīšanas dēlis/modulis
- 3. darbība. Nepieciešamās detaļas un sastāvdaļas
- 4. solis: IR sensora pievienošana Arduino
- 5. darbība. Atrodiet kodu, kas atbilst katram tālvadības pults taustiņam
- 6. darbība: kontrolējiet gaismas diožu komplektu, izmantojot IR tālvadības pulti
- 7. darbība: problēmu novēršana
- 8. darbība: ko darīt tālāk?
Video: Infrasarkanā sensora izmantošana ar Arduino: 8 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:52
Kas ir infrasarkanais (pazīstams arī kā IR) sensors?
IR sensors ir elektronisks instruments, kas skenē IS signālus noteiktos frekvenču diapazonos, kas noteikti standartos, un pārveido tos par elektriskiem signāliem savā izejas tapā (parasti to sauc par signāla tapu). IR signālus galvenokārt izmanto komandu pārraidīšanai pa gaisu nelielos attālumos (parasti dažos metros), piemēram, ar tiem, ar kuriem jau esat strādājis, izmantojot televizora tālvadības pults vai citas līdzīgas elektroniskas ierīces.
IR sakaru protokols
Katrs signāls apzīmē noteiktu kodu. Elektriskos signālus var pārvērst atpakaļ faktiskajos sūtītāja nosūtītajos datos/kodos. Nospiežot televizora tālvadības pults pogu, tas ģenerē pogas kodam atbilstošu signālu (piemēram, ieslēgts/izslēgts, skaļuma palielināšana utt.) Un nosūta to uztvērējam (šajā gadījumā jūsu televizoram). Gan sūtītājs, gan saņēmējs vienojās par kodu kopumu, lai saņēmējs zinātu, kas jādara, pamatojoties uz katru kodu. Koda modulēšanas (modelēšanas) veids kā signāls ir definēts dažādos standartos, un katrs sensoru ražotājs parasti cenšas ražot ar tiem saderīgu produktu, lai to varētu izmantot dažādās ierīcēs. Viens no pazīstamākajiem standarta protokoliem ir no NEC. Īsu IR protokolu vēsturi varat atrast Wikipedia sadaļā Consumer IR title.
1. darbība: kā izskatās IR sensors?
IR sensori ir pieejami dažādos iepakojumos. Šeit jūs varat redzēt dažus tipiskus IR uztvērēja iepakojumus.
2. solis: IR sensora sadalīšanas dēlis/modulis
Jūs varat tos iegādāties arī kā IR moduli/sadalīšanas dēli vietnē eBay, Aliexpress vai Amazon. Šādos moduļos parasti ir viens no iepriekš minētajiem sensoriem ar jauku maizes dēļa komplektu, kā arī gaismas diode, kas mirgo, kad sensors uztver signālu. To darot, jūs pamanīsit, vai tiek pārsūtīti kādi dati. Es ļoti iesaku sākt ar vienu no šiem moduļiem.
Piezīme: ja jums ir neapstrādāts infrasarkanais sensors, nekas nemainīsies, izņemot to, ka jums jāpārbauda sensora datu lapa, lai pārliecinātos, ka esat to pareizi pievienojis, jo pretējā gadījumā jums var būt skaisti zili dūmi ar smaržu, kas saglabāsies ilgu laiku stunda. Tu saproti ko ar to domāju;)
3. darbība. Nepieciešamās detaļas un sastāvdaļas
Šeit varat atrast sastāvdaļu sarakstu, kas jums būs nepieciešams, lai pabeigtu šo apmācību:
eBay saites:
- 1 x Arduino Uno:
- 1 x IR sensora modulis ar tālvadības pulti:
- 4 x 220 omi rezistori:
- 4 x LED:
- 8 x Dupont kabelis:
- 1 x bezlodēšanas maizes dēlis:
- 1 x mini maizes dēlis (pēc izvēles):
Amazon.com saites:
- 1 x Arduino Uno:
- 1 x IR sensora modulis ar tālvadības pulti:
- 1 x bezlodēšanas maize:
- 4 x 220 omi rezistori:
- 4 x LED:
- 8 x Dupont kabelis:
- 1 x mini maizes dēlis (pēc izvēles):
4. solis: IR sensora pievienošana Arduino
IR sensora savienojuma iestatīšana ar Arduino ir ļoti vienkārša. Līdzās VCC un GND tapai sensoram ir tikai viena izejas tapa, kas jāpievieno vienai no Arduino digitālajām tapām. Šajā gadījumā tas ir savienots ar tapu 13.
Es mēģināju demonstrēt gan IR sensora moduli, gan neapstrādāto IR sensora iestatīšanu. Kā redzams attēlos, sensora moduļa VCC un GND tapu novietojums ir pretējs neapstrādātajam sensoram. Tomēr tas var nebūt jūsu sensora gadījumā, tāpēc, kā minēts iepriekšējā solī, ja izmantojat neapstrādātu sensoru, vispirms pārbaudiet datu lapu.
5. darbība. Atrodiet kodu, kas atbilst katram tālvadības pults taustiņam
Lai ieprogrammētu Arduino kaut ko darīt, nospiežot tālvadības pults taustiņu, vispirms vajadzētu būt šim taustiņam atbilstošam kodam. Atslēgas kods ir skaitlis, kas parasti tiek parādīts kā heksadecimāls. Katram tālvadības pultij ir savs atslēgu kodu kopums, lai gan ir iespējams, ka diviem kontrolieriem ir viens un tas pats kods dažādiem mērķiem. Dažādu atslēgu kodu izmantošana un dažādu frekvenču diapazonu izmantošana nodrošina, ka diviem dažādu ierīču tālvadības pultīm nav traucējumu. Tāpēc, mainot TV kanālu, jūsu DVD atskaņotājs vispār nereaģē.
Lai noteiktu IR tālvadības pults kodus, vispirms jāizpilda vienkārša skice, kas mēģina nolasīt kodu no sensora, nospiežot taustiņu, un nosūta to caur seriālo portu uz datoru, kur tam var piekļūt, izmantojot Serial Monitor rīkus. Arduino IDE. To dara šai sadaļai pievienotā skice. Būtu labāk nospiest katru pogu, lai redzētu kodu, un kaut kur pierakstīt kodu sarakstu, lai jums vairs nebūtu nepieciešams palaist šo kodu nākotnē. Galveno kodu saraksts, ko redzat kā tabulu attēlā, patiesībā ir kodi, kurus es saņēmu, nospiežot pogas uz mana lētā IR tālvadības pults.
Jūs varat arī piekļūt faktiskajam avota kodam, kas kopīgots manā Arduino tīmekļa redaktorā, izmantojot ir-key-code-logger.
Piezīme: nebaidieties, ja kaut kur pa vidu redzat tādu kodu kā FFFFFF. Tas nozīmē, ka kādu laiku esat nospiedis un turējis pogu. Vēlāk pie tā atgriezīsimies. Pagaidām vienkārši ignorējiet tos un koncentrējieties uz citiem kodiem.
6. darbība: kontrolējiet gaismas diožu komplektu, izmantojot IR tālvadības pulti
Tagad, kad mums ir katras pogas kods, ir pienācis laiks koncentrēties uz veidu, kā tās izmantot. Parasti jūs izmantojat IR tālvadības pulti, lai nosūtītu komandas Arduino, lai ieslēgtu vai izslēgtu lampu, pārvietotu robotu noteiktā virzienā, parādītu kaut ko LCD/OLED ekrānā utt. Šeit mēs mēģinām parādīt procesu, izmantojot vienkāršu ķēde, kas sastāv no 4 gaismas diodēm dažādās krāsās. Mēs vēlamies ieslēgt vai izslēgt katru no tiem, izmantojot īpašu IR tālvadības pults pogu. Kā redzams shēmā, jums ir jāpievieno Arduino šādā veidā ar gaismas diodēm un sensoru:
Arduino GND -> IR sensors GND.
Arduino VCC -> IR sensors VCC.
Arduino 13 -> IR sensora signāla izeja.
Arduino 2 -> zilās gaismas diodes anods (īsāks zilās gaismas diodes tapa)
Arduino 3 -> zaļās gaismas diodes anods (īsāks zaļās gaismas diodes tapa)
Arduino 4 -> dzeltenās gaismas diodes anods (dzeltenās gaismas diodes īsākā tapa)
Arduino 5 -> sarkanās gaismas diodes anods (īsāks sarkanās gaismas diodes tapa)
Arduino GND -> visu LED katods, izmantojot 220 omu rezistoru (garāka gaismas diodes tapa)
Šai shēmai atbilstošo kodu varat atrast pievienotajā failā vai manā Arduino tīmekļa redaktorā vietnē ir-led-control.
7. darbība: problēmu novēršana
Veidojot projektu un veicot darbības, jūs varat saskarties ar daudzām dīvainām situācijām. Šeit ir saraksts ar dažām bieži sastopamām kļūdām, kas var rasties, strādājot ar IR sensoru.
FFFFFF iegūšana, nospiežot taustiņu
Nospiežot pogu, jūs varat pamanīt, ka lielākoties tā ziņo par tādu kodu kā FFFFFF. Tas notiek, nospiežot pogu un kādu laiku turot nospiestu, pat īsu laiku. Scenārijs ir tāds, ka, sākotnēji nospiežot pogu, IR tālvadības pults nosūta pogas kodu, un, kamēr turat nospiestu pogu, tā atkārto FFFFFF sūtīšanu, kas nozīmē, ka lietotājs joprojām nospiež nesen ziņoto pogu. Tas būtu OK. Jūs varat tos vienkārši izlaist. Faktiskais kods ir tas, kuru saņēmāt tieši pirms FFFFFF sērijas monitorā.
IR sensors vispār nereaģē un šķiet, ka kļūst silts
Izslēdziet jaudu !!! Ja esat pārliecināts, ka atslēgas koda reģistrētāja skice ir pareiza, problēma var būt saistīta ar nepareizu vadu iestatīšanu. Scenārijs, kas notika ar mani, bija tāds, ka manam IR modulim (tam, kas piestiprināts pie tāfeles), es biju savienojis VCC un GND pretējā veidā (tāpēc, ka neizmantoju atbilstošas krāsas savienojuma vadiem). To darot, dega sensora komponents un izcēlās jauki zili dūmi. Es nopirku neapstrādātu IR sensoru iepakojumu un mēģināju to nomainīt, un tagad tas darbojas kā šarms:). Diemžēl es to pašu kļūdu izdarīju, testējot ar neapstrādāto IR sensoru, un šoreiz nekas nenotika, izņemot to, ka sensors sasildījās. Tāpēc pirms strāvas ieslēgšanas vienmēr pārbaudiet ķēdi!
Dažreiz sensors nosaka kodu, kuru es nekad neesmu redzējis
Šī ir viena no visbiežāk sastopamajām problēmām. Visticamāk, tas ir saistīts ar kādu no šiem iemesliem:
Jūs nenorādāt savu IR tālvadības pulti tieši pret sensoru
Tādējādi tiks iegūti daži jauni kodi (galvenokārt garāki kodi), kurus nekad neesat saņēmis un parasti neatbilst jau esošo kodu garumam. Tāpēc atcerieties vienmēr vērst tālvadības pulti pret sensoru.
Jūs izmantojat lētu IR tālvadības pulti (tādu, kādu izmantoju šajā apmācībā)
Tā vietā, lai izmantotu lētas neparedzamas tālvadības pultis, varat izmēģināt to pašu scenāriju, izmantojot televizora vai DVD atskaņotāja tālvadības pulti vai jebkuras jūsu ierīces IR tālvadības pulti. Parasti tiem ir laba signāla/aparatūras kvalitāte (un, protams, tie ir dārgāki), un, pamatojoties uz manu pieredzi, tie parasti darbojas labi, pat ja nenorādāt tālvadības pulti tieši pret sensoru.
Kā es varu zināt, vai reģistrētais kods nav atkritums
Parasti kodi tiek parādīti heksadecimālā formātā. Ja konvertējat tos uz atbilstošo bināro vērtību, pamanīsit, ka pēdējā baita binārais attēlojums ir baita noliegums. Ja jūs to zināt, varat to pārbaudīt savā kodā, lai pārliecinātos, ka saņemtais kods patiešām ir derīgs vai nē. Piemēram, ja jums ir FF7A85, tā binārais attēlojums būtu šāds:
1111 1111 0111 1010 1000 0101
No kreisās uz labo pusi katra 4 ciparu sērija attēlo rakstzīmi sākotnējā heksadecimālā skaitlī. Kā redzat, partija, kas atbilst 7, ir 0111, un partija, kas atbilst 8, ir 1000, kas ir precīzs tās noliegums. Ar noliegumu es domāju, ka visi 0 būs 1 un visi 1 tiks aizstāti ar 0. Tas pats attiecas uz nākamo, kas ir A (1010) un 5 (0101).
8. darbība: ko darīt tālāk?
Tagad ir tava kārta. Tas viss ir atkarīgs no jūsu iztēles, lai redzētu, ko jūs varat darīt ar šo mazo vienkāršo sensoru rokā. Šeit ir dažas idejas, ar kurām sākt:
- Izmantojiet IR tālvadības pulti vienai no mājās esošajām ierīcēm (TV, stereo u.c.) un mēģiniet to izmantot savā Arduino projektā
- Mēģiniet ieslēgt visas gaismas diodes vienlaikus, nospiežot taustiņu, un pēc tam izslēdziet tās, izmantojot citu taustiņu
- Izmantojiet tālvadības pults pogu Uz augšu/Uz leju, lai ieslēgtu/izslēgtu gaismas diodes pa vienam, līdz tās visas ieslēdzas/izslēdzas
- Izveidojiet luksoforu, izmantojot gaismas diodes, un kontrolējiet to, izmantojot tālvadības pulti
- Ja pie rokas ir mazs līdzstrāvas motors, mēģiniet iedarbināt/apturēt vai mainīt tā rotācijas virzienu, izmantojot IR tālvadības pulti
- Varat izmantot televizora tālvadības pulti, lai vadītu savu robotu vai iespējotu/atspējotu tajā esošos sensorus/izpildmehānismus
Paziņojiet man komentāros, ko jūs darītu (vai esat jau izdarījis), izmantojot IR tālvadības pulti.
Ieteicams:
Arduino infrasarkanā termometra lielgabala MDF korpuss: 4 soļi (ar attēliem)
Arduino infrasarkanā termometra lielgabala MDF korpuss: Šis projekts ir paredzēts infrasarkanā termometra izgatavošanai ar Arduino, ķēde tiek ievietota MDF korpusā, kas izskatās kā medicīnisks infrasarkanais termometrs tirgū. Sensora infrasarkanais termometrs GY-906 tiek izmantots, lai mērītu objekta temperatūru bez kontakta, tas var manīt
Pirkstu nospiedumu sensora izmantošana laika apmeklējumam kopā ar XAMP risinājumu: 6 soļi (ar attēliem)
Pirkstu nospiedumu sensora izmantošana kopā ar XAMP risinājumu: skolas projektam mēs meklējām risinājumu, kā izsekot skolēnu apmeklējumam. Daudzi mūsu studenti ierodas vēlu. Tas ir garlaicīgs darbs, pārbaudot viņu klātbūtni. No otras puses, ir daudz diskusiju, jo studenti bieži teiks
Kustības sensora izmantošana ar RaspberryPi un Telegram Bot: 4 soļi
Kustības sensora izmantošana ar RaspberryPi un Telegram Bot: Sveiki, puiši. Šajā amatā mēs izmantosim Raspberry Pi Telegram Bot ar PIR (kustības) sensoru
Raspberry Pi GPIO shēmas: LDR analoga sensora izmantošana bez ADC (analogā digitālā pārveidotāja): 4 soļi
Raspberry Pi GPIO shēmas: LDR analoga sensora izmantošana bez ADC (analogs digitālajam pārveidotājam): mūsu iepriekšējos norādījumos mēs parādījām, kā jūs varat saistīt Raspberry Pi GPIO tapas ar gaismas diodēm un slēdžiem un kā GPIO tapas var būt augstas vai Zems. Bet ko tad, ja vēlaties izmantot savu Raspberry Pi ar analogo sensoru? Ja mēs vēlamies izmantot
I2C infrasarkanā tālvadības pults ar Arduino: 8 soļi (ar attēliem)
I2C infrasarkanā tālvadības pults ar Arduino: preambulaŠajā pamācībā ir sīki aprakstīts, kā izveidot universālu tālvadības pulti, izmantojot interfeisu I2C. Cik dīvaini jūs sakāt, izmantojot I2C vergu ierīci? Jā, I2C vergu ierīce. Tas ir tāpēc, ka precīzs IR pakešu laiks ir diezgan prasīgs un