Мазмұны:

Теледидардың қашықтан басқару пультін немесе басқасын Arduino Irlib көмегімен қалай еліктеуге болады: 3 қадам (суреттермен)
Теледидардың қашықтан басқару пультін немесе басқасын Arduino Irlib көмегімен қалай еліктеуге болады: 3 қадам (суреттермен)

Бейне: Теледидардың қашықтан басқару пультін немесе басқасын Arduino Irlib көмегімен қалай еліктеуге болады: 3 қадам (суреттермен)

Бейне: Теледидардың қашықтан басқару пультін немесе басқасын Arduino Irlib көмегімен қалай еліктеуге болады: 3 қадам (суреттермен)
Бейне: Урок 101. Использование ИК-пульта дистанционного управления для управления телевизором, лампочкой переменного тока с реле, двигателем постоянного тока и серводвигателем. 2024, Қараша
Anonim
Теледидардың қашықтан басқару пультін немесе басқасын Arduino Irlib көмегімен қалай еліктеуге болады
Теледидардың қашықтан басқару пультін немесе басқасын Arduino Irlib көмегімен қалай еліктеуге болады

Кіріспе

Барлығына сәлем және менің бірінші нұсқаулығыма қош келдіңіз.

Бүгін біз тақырыпта айтылғандай, Arduino (кез келген модель) көмегімен инфрақызыл сигналмен жұмыс істейтін электронды теледидардың қашықтан басқару құралын немесе соған ұқсас нәрсені еліктеуді үйренеміз.

Мәселе мынада болды: егер мен кодты білмесем, кодты объектке қалай ауыстыруға болады?

Интернеттен іздегенде мен сұрағыма жауап таппадым, сондықтан мен ойлана бастадым және бұл әдісті өзім ойлап таптым.

Бұл оқулықта мен мұны қалай жасау керектігін көрсетемін.

P. S.:

Жұмысқа кіріспес бұрын мен сізге айтарым, байланыс өте күрделі және алдымен біраз білімді қажет етеді.

1 -қадам: Материал

Материал
Материал

Сізге ойлағаннан аз компоненттер қажет:

-Ардуино (мен Леонардоны қолдандым)

-470 Ом немесе ұқсас резистор! НАЗАР АУДАРЫҢЫЗ!: Резистордың мәні сіздің ИҚ жарықдиодты шамасына байланысты өзгеруі мүмкін

-IR LED (мен SFH4546 қолдандым)

-Кейбір секіргіштер

-IR қабылдағышы (мен TSOP38238 қолдандым)

-Нан тақтасы

Бұл мен қарапайым, бірақ маңызды схема үшін қолдандым.

EDIT: Егер сіз менің бірдей сымды қолдансаңыз, Arduino түйрегіш пен сымның арасында резисторды пайдаланбаңыз, себебі ол қашықтан басқару пультін пайдалануға болатын қашықтықты едәуір азайтады

Егер сіз бірдей ледті қолданбасаңыз, мен қайшыны салып, оны қалағаныңызша реттеуге кеңес беремін

2 -қадам: Схема және кодтау

Енді біз тізбекті қарастырамыз.

Бізге 2 схеманы құру қажет:

-Бірінші схема қашықтан басқару пультінен сигнал алу керек.

-Екіншісі біз бұрын түсірген сигналды жібереді.

Сонымен, arduino, нан тақтасын, сымдар мен қабылдағышты алыңыз және жұмысқа кірісейік

Алдымен 5v және GND қабылдағышқа қосыңыз (менікі OUT, GND, 5V ретімен)

OUT түйреуішін Arduino pin 2 -ге қосу керек. (Схема қалай көрінеді)

Сіз мұны істегеннен кейін бізге анодты резистор мен катодты жерге қосу керек.

Резистордан кейін біз Ир кітапханасы анықтайтын түйреуішке қосамыз. (Схема қалай көрінеді)

Код өте қарапайым:

Алдымен біз кітапханаларды орнатуымыз керек:

-қабылдауға арналған IrLib2 кітапханасы

Содан кейін сізге zip файлын ашып, сол қалталарды кітапханалар қалтасына көшіру қажет.

-жіберуге арналған IrRemote кітапханасы

Сіз мұны жасағаннан кейін Arduino IDE ашыңыз және мысалдар мәзірінен IrLib2 мысалдар қалтасына өтіңіз, содан кейін Arduino тақтасына «RawRecv.ino» нобайын жүктеңіз.

Тақтаға жүктелгеннен кейін сериялық мониторды ашыңыз, еліктегіңіз келетін қашықтан басқару пультін алыңыз, оны IR қабылдағышына бағыттаңыз және түймені басыңыз: сіз мониторда кейбір шығуды (шикізат кодын) көресіз, сондықтан оны көшіріңіз алмасу буфері

Келесі үзінді - біз алған кодтарды жіберу.

Arduino -ның әрбір үлгісінде IRsend класы үшін жеке түйреуіш бар және оны аппараттық құралдардың кейбір шектеулеріне байланысты өзгертуге болмайды.

Мұнда кейбір Arduino тақталарының түйреуіштері бар кесте бар.

Бұл менің эскизім, ол channel_up пәрменін ескі Samsung теледидарына жібереді:

#қосу

IRsend irsend; #dewine RAW_DATA_LEN 68 // RawRecv uint16_t rawData шығысы [RAW_DATA_LEN] = {4458, 4482, 546, 1698, 550, 1690, 554, 1690, 546, 606, 518, 610, 526, 602, 522, 606, 526, 602, 522, 1694, 554, 1686, 550, 1694, 550, 602, 522, 606, 530, 598, 526, 602, 522, 606, 526, 602, 522, 1694, 554, 598, 522, 606, 530, 1686, 554, 602, 518, 610, 522, 602, 522, 1694, 554, 602, 522, 1694, 550, 1690, 546, 610, 526, 1690, 546, 1694, 554, 1690, 546, 1000}; void setup () {} void loop () {irsend.sendRaw (rawData, RAW_DATA_LEN, 38); // 38 кГц жиіліктегі кідіріс кезінде шикі деректерді жіберу (1000); // әр сигналдың жарылуы арасында 1 секунд кідіріс}

НАЗАР АУДАРЫҢЫЗ: оны IDE -ге көшіру және қою жұмыс істемеуі мүмкін, егер ол жұмыс істемесе, әр жолды жазу керек

3 -қадам: тестілеу және аяқтау

Енді тестілеудің уақыты келді!

Қашықтан басқару құралын көрсетіп, Arduino -ды қосқаныңыздай, сенсорды қабылдағышқа бағыттаңыз, бір секунд күтіңіз, сонда сіз қабылдайтын құрылғы біз айтқандай істей бастайтынын көресіз!

Егер бірдеңе дұрыс болмаса, астына пікір қалдырыңыз.

Нұсқауымыз осымен аяқталды. Сізге пайдалы деп үміттенемін.

Егер сіз осы оқулықтың бейнесін алғыңыз келсе, түсініктеме беріңіз және ……….

келесі нұсқаулыққа!

Ұсынылған: