Агуулгын хүснэгт:

Хэт улаан туяаны мэдрэгчийг Arduino ашиглан ашиглах: 8 алхам (зурагтай)
Хэт улаан туяаны мэдрэгчийг Arduino ашиглан ашиглах: 8 алхам (зурагтай)

Видео: Хэт улаан туяаны мэдрэгчийг Arduino ашиглан ашиглах: 8 алхам (зурагтай)

Видео: Хэт улаан туяаны мэдрэгчийг Arduino ашиглан ашиглах: 8 алхам (зурагтай)
Видео: DIY Mod Gaggia Espresso Coffee Machine (Part 1) 2024, Оны зургадугаар сарын
Anonim
Хэт улаан туяаны мэдрэгчийг Arduino ашиглан ашиглах
Хэт улаан туяаны мэдрэгчийг Arduino ашиглан ашиглах

Хэт улаан туяаны мэдрэгч гэж юу вэ?

IR мэдрэгч нь стандартаар тодорхойлогдсон тодорхой давтамжийн муж дахь IR дохиог сканнердаж, гаралтын зүү (ихэвчлэн дохионы зүү гэж нэрлэдэг) дээрх цахилгаан дохио болгон хувиргадаг электрон төхөөрөмж юм. IR дохиог ихэвчлэн телевизийн алсын удирдлага эсвэл бусад ижил төстэй электрон төхөөрөмж дээр ажиллаж байсан шиг богино зайд (ихэвчлэн хэдхэн метрийн) команд дамжуулах зорилгоор ашигладаг.

IR холбооны протокол

Дохио бүр тодорхой кодыг илэрхийлдэг. Цахилгаан дохиог илгээгчийн илгээсэн бодит өгөгдөл/код руу буцааж хөрвүүлэх боломжтой. Та ТВ -ийн алсын удирдлага дээрх товчлуурыг дарахад энэ нь товчлуурын кодод харгалзах дохиог (жишээлбэл, On/Off, Volume Up гэх мэт) үүсгэж, хүлээн авагч руу илгээдэг (энэ тохиолдолд таны ТВ). Илгээгч болон хүлээн авагч хоёулаа кодын багц дээр тохиролцсон бөгөөд ингэснээр хүлээн авагч код тус бүр дээр үндэслэн юу хийхээ мэддэг болно. Сигналын хувьд кодыг модуляцлах (загварчлах) арга замыг өөр өөр стандартад тодорхойлдог бөгөөд мэдрэгч үйлдвэрлэгч бүр өөр өөр төхөөрөмжид ашиглахын тулд өөрт тохирсон бүтээгдэхүүн үйлдвэрлэхийг хичээдэг. Хамгийн алдартай стандарт протоколуудын нэг бол NEC юм. Та IR протоколуудын товч түүхийг Википедиа дээрээс Хэрэглэгчийн IR гарчиг дээрээс олж болно.

Алхам 1: IR мэдрэгч хэрхэн харагддаг вэ?

IR мэдрэгч хэрхэн харагддаг вэ?
IR мэдрэгч хэрхэн харагддаг вэ?
IR мэдрэгч хэрхэн харагддаг вэ?
IR мэдрэгч хэрхэн харагддаг вэ?
IR мэдрэгч хэрхэн харагддаг вэ?
IR мэдрэгч хэрхэн харагддаг вэ?

IR мэдрэгчийг өөр өөр багц дээр авах боломжтой. Эндээс та IR хүлээн авагчийн ердийн сав баглаа боодолыг харж болно.

Алхам 2: IR мэдрэгчийг таслах самбар/модуль

IR мэдрэгч таслах самбар/модуль
IR мэдрэгч таслах самбар/модуль
IR мэдрэгч таслах самбар/модуль
IR мэдрэгч таслах самбар/модуль
IR мэдрэгч таслах самбар/модуль
IR мэдрэгч таслах самбар/модуль
IR мэдрэгч таслах самбар/модуль
IR мэдрэгч таслах самбар/модуль

Та мөн тэдгээрийг eBay, Aliexpress эсвэл Amazon дээр IR модуль/таслагч самбар болгон худалдаж авах боломжтой. Ийм модуль нь ихэвчлэн дээр дурдсан нэг мэдрэгчийг талхны тавцанд ээлтэй сайхан багцтай, мэдрэгч нь дохио илрүүлэх үед анивчдаг LED -тэй байдаг. Ингэснээр та ямар нэгэн өгөгдөл дамжуулж байгаа эсэхийг анзаарах болно. Би эдгээр модулиудын аль нэгийг эхлүүлэхийг зөвлөж байна.

Анхаарна уу: хэрэв танд хэт улаан туяаны мэдрэгч байгаа бол мэдрэгчийн өгөгдлийн хүснэгтийг зөв холбож байгаа эсэхийг шалгахаас өөр юу ч өөрчлөгдөхгүй, эс тэгвээс үнэр нь сайхан цэнхэр утаа гарч магадгүй юм. цаг. Миний юу хэлэх гээд байгааг чи мэдэж байгаа;)

Алхам 3: Шаардлагатай эд анги, бүрэлдэхүүн хэсгүүд

Шаардлагатай эд анги, бүрэлдэхүүн хэсгүүд
Шаардлагатай эд анги, бүрэлдэхүүн хэсгүүд

Энэ хичээлийг бөглөхөд шаардлагатай бүрэлдэхүүн хэсгүүдийн жагсаалтыг эндээс олж болно.

eBay холбоосууд:

  • 1 x Arduino Uno:
  • Алсын удирдлагатай 1 x IR мэдрэгч модуль:
  • 4 х 220 ом эсэргүүцэл:
  • 4 x LED:
  • 8 x Dupont кабель:
  • 1 x Гагнуургүй талхны самбар:
  • 1 x Mini breadboard (заавал биш):

Amazon.com холбоосууд:

  • 1 x Arduino Uno:
  • Алсын удирдлагатай 1 x IR мэдрэгч модуль:
  • 1 x Гагнуургүй талхны самбар:
  • 4 х 220 ом эсэргүүцэл:
  • 4 x LED:
  • 8 x Dupont кабель:
  • 1 x Mini breadboard (заавал биш):

Алхам 4: IR мэдрэгчийг Arduino руу холбох

IR мэдрэгчийг Arduino руу холбож байна
IR мэдрэгчийг Arduino руу холбож байна
IR мэдрэгчийг Arduino руу холбож байна
IR мэдрэгчийг Arduino руу холбож байна
IR мэдрэгчийг Arduino руу холбож байна
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: IR алсын удирдлагатай LED багцыг удирдах

IR алсын удирдлагатай LED багцыг удирдах
IR алсын удирдлагатай LED багцыг удирдах
IR алсын удирдлагатай LED багцыг удирдах
IR алсын удирдлагатай LED багцыг удирдах
IR алсын удирдлагатай LED багцыг удирдах
IR алсын удирдлагатай LED багцыг удирдах

Одоо бид товчлуур бүрийн кодтой болсон тул тэдгээрийг хэрхэн ашиглах арга замдаа анхаарлаа хандуулах цаг болжээ. Ер нь та 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 -> 220 ом эсэргүүцэлтэй бүх LED -ийн катод (LED -ийн урт зүү)

Та энэ хэлхээнд харгалзах кодыг хавсаргасан файл эсвэл миний Arduino вэб редактор дээрээс ir-led-control дээрээс олж болно.

Алхам 7: Алдааг олж засварлах

Төслөө боловсруулж, алхамуудыг дагаж байхдаа олон хачин нөхцөл байдалтай тулгарч магадгүй юм. IR мэдрэгчтэй ажиллах явцад гарч болох нийтлэг алдаануудын жагсаалтыг энд оруулав.

Товчлуур дарахад FFFFFF авах

Товчлуур дарахад ихэнх тохиолдолд FFFFFF гэх мэт кодыг мэдээлдэг болохыг анзаарч болно. Энэ нь товчлуурыг дараад хэсэг хугацаанд, богино хугацаанд ч гэсэн барьсан тохиолдолд тохиолддог. Сценарийн дагуу та товчлуурыг анх дарахад IR алсын удирдлага товчлуурын кодыг илгээдэг бөгөөд хэрэв та товчлуурыг дарж байвал FFFFFF -ийг дахин илгээдэг бөгөөд энэ нь хэрэглэгч саяхан мэдээлсэн товчлуурыг дарсаар байгаа гэсэн үг юм. Энэ нь зүгээр байх болно. Та тэдгээрийг зүгээр л орхиж болно. Бодит код бол FFFFFF -ээс өмнө цуваа монитор дээр авсан код юм.

IR мэдрэгч огт хариу үйлдэл үзүүлэхгүй бөгөөд дулаарч байгаа юм шиг байна

Эрчим хүчээ таслаарай !!! Хэрэв та кодыг бүртгэх түлхүүрийн зураг зөв гэдэгт итгэлтэй байгаа бол энэ нь таны утасны буруу тохируулгаас үүдэлтэй байж магадгүй юм. Надад тохиолдсон хувилбар бол миний IR модулийн хувьд (самбар дээр хавсаргасан модулийн хувьд) би VCC ба GND -ийг эсрэгээр холбосон байсан (миний холбох утаснуудад тохирох өнгийг ашиглаагүйн улмаас). Ингэснээр мэдрэгчийн бүрэлдэхүүн хэсэг шатаж, сайхан цэнхэр утаа гарав. Би нэг ширхэг түүхий IR мэдрэгч худалдаж аваад солихыг оролдсон нь одоо увдис шиг ажиллаж байна:). Харамсалтай нь би түүхий IR мэдрэгчийг туршиж байхдаа ижил алдаа хийсэн бөгөөд энэ удаад мэдрэгч дулаарснаас өөр юу ч болсонгүй. Тиймээс хүчийг асаахаасаа өмнө хэлхээг үргэлж шалгаж байгаарай!

Заримдаа мэдрэгч өмнө нь харж байгаагүй кодыг илрүүлдэг

Энэ бол хамгийн нийтлэг асуудлуудын нэг юм. Энэ нь дараах шалтгаануудын нэгтэй холбоотой байж магадгүй юм.

Та IR алсын удирдлагаа мэдрэгч рүү шууд чиглүүлэхгүй байна

Энэ нь урьд өмнө хэзээ ч хүлээж аваагүй шинэ кодууд (ихэвчлэн урт кодууд) авахад хүргэдэг бөгөөд энэ нь өмнө нь авсан кодын урттай тохирохгүй байна. Тиймээс алсын удирдлагыг үргэлж мэдрэгч рүү чиглүүлэхээ мартуузай.

Та хямд IR алсын удирдлага ашиглаж байна (энэ хичээлд ашигласан шиг)

Урьдчилан таамаглах боломжгүй хямд алсын удирдлага ашиглахын оронд та өөрийн телевиз, DVD тоглуулагчийн алсын удирдлага эсвэл өөрт байгаа төхөөрөмжүүдийн IR алсын удирдлагыг ашиглан ижил хувилбарыг туршиж үзэх боломжтой. Тэд ихэвчлэн сайн дохио/тоног төхөөрөмжийн чанартай байдаг (мөн мэдээж илүү үнэтэй байдаг) бөгөөд миний туршлага дээр үндэслэн та алсын удирдлагаа мэдрэгч рүү шууд чиглүүлээгүй байсан ч сайн ажилладаг.

Бүртгэгдсэн код нь хог биш эсэхийг яаж мэдэх вэ

Кодуудыг ихэвчлэн арван зургаатын форматаар харуулдаг. Хэрэв та тэдгээрийг харгалзах хоёртын утга болгон хөрвүүлэх юм бол сүүлийн байтын хоёртын дүрслэл нь байтын үгүйсгэл гэдгийг үүнээс өмнө олж харах болно. Хэрэв та үүнийг мэдэж байгаа бол хүлээн авсан код нь хүчин төгөлдөр эсэхийг шалгахын тулд кодоо шалгана уу. Жишээлбэл, хэрэв та FF7A85 авсан бол түүний хоёртын дүрслэл дараах байдалтай байна.

1111 1111 0111 1010 1000 0101

Зүүнээс баруун тийш 4 оронтой багц бүр нь анхны арван зургаатын тоогоор тэмдэгтийг дүрсэлсэн болно. Таны харж байгаагаар 7 -тэй тохирох багц нь 0111, 8 -тэй тохирох багц нь 1000 бөгөөд энэ нь үүнийг үгүйсгэх болно. Үгүйсгэх замаар би бүх 0 -ийг 1 -ээр, бүх 1 -ийг 0 -ээр солино гэж хэлмээр байна. А (1010) ба 5 (0101) гэсэн дараагийнх нь мөн адил юм.

Алхам 8: Дараа нь юу хийх вэ?

Одоо чиний ээлж. Энэхүү бяцхан энгийн мэдрэгчийг гартаа хийж юу хийж болохыг харах нь таны төсөөллөөс хамаарна. Эхлэх хэдэн санаа энд байна:

  • Гэртээ байгаа төхөөрөмжүүдийн (ТВ, Стерео гэх мэт) IR алсын удирдлагыг ашиглан Arduino төсөл дээрээ ашиглахыг хичээ.
  • Бүх LED -ийг нэг товчлуур дээр дарж асаахыг оролдоод дараа нь өөр түлхүүр ашиглан унтраа
  • Удирдлагын дээш/доош товчлуурыг ашиглан LED -ийг нэг бүрчлэн асаах/унтраах хүртэл нэг бүрчлэн асаах/унтраах
  • LED ашиглан гэрлэн дохио үүсгэж, алсын удирдлагаар удирдана уу
  • Хэрэв танд жижиг DC мотор байгаа бол IR алсын удирдлагаар асаах/зогсоох эсвэл эргүүлэх чиглэлээ өөрчлөхийг оролдоорой
  • Та ТВ -ийн удирдлагаа ашиглан роботыг удирдах эсвэл түүн дээрх зарим мэдрэгч/идэвхжүүлэгчийг идэвхжүүлэх/идэвхгүй болгох боломжтой

IR алсын удирдлага ашиглан та юу хийх (эсвэл аль хэдийн хийсэн) сэтгэгдлээ надад хэлээрэй.

Зөвлөмж болгож буй: