Мазмуну:
- 1 -кадам: IR сенсору кандай көрүнөт?
- 2 -кадам: IR Sensor Breakout Board/модулу
- 3 -кадам: керектүү тетиктер жана компоненттер
- 4 -кадам: IR сенсорун Arduino менен туташтыруу
- 5 -кадам: Алыстан башкаруунун ар бир ачкычына туура келген кодду табыңыз
- 6 -кадам: IR Remote колдонуп LEDлерди көзөмөлдөңүз
- 7 -кадам: Мүчүлүштүктөрдү оңдоо
- 8 -кадам: Эми эмне кылыш керек?
Video: Ардуино менен инфракызыл сенсорду колдонуу: 8 кадам (сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:38
Инфракызыл (ака IR) сенсор деген эмне?
IR сенсору - бул стандарттык ченемдер менен аныкталган белгилүү бир жыштык диапазонунда IR сигналдарын сканерлеп, аларды электрдик сигналга айландыруучу электрондук аспап. IR сигналдары негизинен телевизордун алыстан башкаруу пультунда же башка ушул сыяктуу электрондук түзүлүштөрдө иштеген сыяктуу кыска аралыктарга (адатта бир нече метрге) буйруктарды аба аркылуу берүү үчүн колдонулат.
IR байланыш протоколу
Ар бир сигнал белгилүү бир кодду билдирет. Электр сигналдары жөнөтүүчү жөнөткөн чыныгы маалыматка/кодго кайра которулушу мүмкүн. Сиз сыналгыңыздын пультундагы баскычты басканыңызда, ал баскычтын кодуна туура келген сигналды чыгарат (мисалы, күйгүзүү/өчүрүү, үнүн жогорулатуу ж.б.) жана аны ресиверге жөнөтөт (бул учурда сыналгыңыз). Жөнөтүүчү да, алуучу да коддордун топтомуна макул болушту, ошондуктан алуучу ар бир коддун негизинде эмне кылууну билет. Коддун модуляциялануу жолу (моделдөө) ар кандай стандартта аныкталган жана ар бир сенсор өндүрүүчүсү, адатта, ар кандай түзмөктөрдө колдонулушу үчүн, аларга шайкеш келген продукцияны чыгарууга аракет кылат. Белгилүү стандарттык протоколдордун бири NECтен. Сиз IR протоколдорунун кыскача тарыхын Википедиядан Керектөөчүнүн IR аталышынан таба аласыз.
1 -кадам: IR сенсору кандай көрүнөт?
IR сенсорлору ар кандай пакеттерде бар. Бул жерде сиз IR алуучунун типтүү таңгагын көрө аласыз.
2 -кадам: IR Sensor Breakout Board/модулу
Ошондой эле аларды IR модулу/eBay, Aliexpress же Amazon боюнча сатып алсаңыз болот. Мындай модулдар, адатта, жогоруда айтылган сенсорлордун бирин жакшы панель достук пакети менен бирге, сенсор сигналды аныктаганда жарк эте турган LED менен коштолот. Муну менен сиз кандайдыр бир маалымат өткөрүлүп жаткандыгын байкайсыз. Мен бул модулдардын биринен баштоону сунуштайм.
Эскертүү: эгерде сизде чийки IR сенсору болсо, анда эч нерсе өзгөрбөйт, сенсордун маалымат барагын текшерип турганыңыздан башка, аны туура зымдап жатканыңызды текшериңиз, антпесе сизде жыты бар кооз көк түтүн болушу мүмкүн. саат Эгер мен эмнени билебиз;)
3 -кадам: керектүү тетиктер жана компоненттер
Бул жерде сиз бул окуу куралын бүтүрүү үчүн керек болгон компоненттердин тизмесин таба аласыз:
eBay шилтемелери:
- 1 x Arduino Uno:
- 1 х IR сенсордук модуль алыстан башкарылган:
- 4 х 220 ом каршылыгы:
- 4 х LED:
- 8 x Dupont кабели:
- 1 x Solderless нан:
- 1 x Mini breadboard (милдеттүү эмес):
Amazon.com шилтемелери:
- 1 x Arduino Uno:
- 1 х IR сенсордук модуль алыстан башкарылган:
- 1 х Solderless нан:
- 4 х 220 ом каршылыгы:
- 4 х LED:
- 8 x Dupont кабели:
- 1 x Mini breadboard (милдеттүү эмес):
4 -кадам: IR сенсорун Arduino менен туташтыруу
IR сенсорунун Arduino менен туташуусун орнотуу абдан жөнөкөй. VCC жана GND пинден тышкары, сенсордо Arduino санарип казыктарынын бирине туташуу керек болгон бир гана чыгуучу пин бар. Бул учурда ал 13 -пинге туташат.
Мен IR сенсорунун модулун жана чийки IR сенсорунун орнотулушун көрсөтүүгө аракет кылдым. Сүрөттөрдөн көрүнүп тургандай, сенсор модулундагы VCC жана GND казыктарынын абалы чийки сенсорго карама -каршы. Бирок бул сенсор үчүн андай эмес болушу мүмкүн, андыктан мурунку кадамда айтылгандай, чийки сенсор колдонулганда, биринчи маалымат барагын текшериңиз.
5 -кадам: Алыстан башкаруунун ар бир ачкычына туура келген кодду табыңыз
Ардуинону алыстан башкаруу баскычын басканда бир нерсе кылууга программалоо үчүн, адегенде ошол ачкычка туура келген код болушу керек. Негизги код адатта он алтылык катары берилген сан. Ар бир алыстан башкаргычтын өзүнүн ачкыч коддору бар, ал эми эки контролер бир эле кодду ар кандай максатта колдонушу мүмкүн. Башка жыштык диапазондорун колдонуу менен бирге ар кандай ачкыч коддорго ээ болуу, ар кандай түзмөктөрдүн эки алыстан контролерунун кийлигишүүсүн камсыз кылат. Мына ошондуктан сиз телеканалыңызды алмаштырганда, DVD ойноткучуңуз такыр жооп бербейт.
IR пультуңуздун коддорун аныктоо үчүн, адегенде сиз баскычты басканыңызда кодду сенсордон окууга аракет кылган жөнөкөй эскизди иштетишиңиз керек жана аны сериялык порт аркылуу компьютериңизге жөнөтө аласыз, ал жерде Serial Monitor куралдарын колдоно аласыз. Arduino IDE. Бул бөлүмгө тиркелген эскиз ушуну кылат. Бул кодду көрүү үчүн ар бир баскычты басуу жана коддордун тизмесин бир жерге жазуу жакшы болмок, ошондо келечекте бул кодду кайра иштетпейсиз. Сүрөттөгү таблица катары көргөн негизги коддордун тизмеси чындыгында менин арзан IR пультундагы баскычтарды басканда алган коддор.
Сиз ошондой эле ir-key-code-logger менин Arduino веб редакторумда бөлүшүлгөн чыныгы булак кодуна кире аласыз.
Эскертүү: FFFFFF сыяктуу кодду көрсөңүз, коркпоңуз. Бул баскычты бир аз басып, кармап турганыңызды билдирет. Биз ага кийинчерээк кайра киребиз. Азырынча аларды этибарга албай, башка коддорго көңүл буруңуз.
6 -кадам: IR Remote колдонуп LEDлерди көзөмөлдөңүз
Эми бизде ар бир баскычтын коду бар, аларды кантип колдоно аларыбызга көңүл бурууга убакыт келди. Адатта сиз IR пультун колдонуп, Arduinoго чыракты күйгүзүү же өчүрүү, роботту белгилүү бир багытта жылдыруу, бир нерсени LCD/OLED экранда көрсөтүү ж.б буйруктарды жөнөтүү үчүн колдоносуз. ар кандай түстөгү 4 светодиоддон турган схема. Биз алардын ар бирин 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лердин узунураак пини)
Сиз бул схемага туура келген кодду тиркелген файлдан же менин Arduino веб редакторунан ir-led-control сайтынан таба аласыз.
7 -кадам: Мүчүлүштүктөрдү оңдоо
Долбооруңузду түзүү жана кадамдарды аткаруу учурунда көптөгөн кызыктай жагдайларга туш болушуңуз мүмкүн. Бул жерде IR сенсору менен иштөөдө пайда болушу мүмкүн болгон кээ бир жалпы каталардын тизмеси келтирилген.
Баскычты басканда FFFFFF алуу
Баскычты басканда, көбүнчө FFFFFF сыяктуу кодду билдирерин байкаса болот. Бул бир баскычты басып, аны бир азга, атүгүл кыска убакытка чейин кармаганда болот. Сценарий боюнча, сиз алгач баскычты басканыңызда, IR пульту баскычтын кодун жөнөтөт жана сиз баскычты кармап турганыңызда, ал FFFFFF жөнөтүүнү кайталайт, бул колдонуучу дагы эле жакында басылган баскычты басат дегенди билдирет. Макул болмок. Сиз аларды жөн эле таштап койсоңуз болот. Чыныгы код - бул FFFFFFтин алдында Сериялык Монитордо.
IR Sensor эч кандай реакция кылбайт жана күн жылый баштады окшойт
Күчтү кыскыла !!! Эгер сиз ачкыч кодунун эскизинин туура экенине ишенсеңиз, анда көйгөй зымдарыңыздын туура эмес орнотулушунан улам болушу мүмкүн. Менин башыма келген сценарий менин 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лерге алмаштырылат дегеним. Ошол эле кийинки (A (1010) жана 5 (0101) үчүн да ушундай.
8 -кадам: Эми эмне кылыш керек?
Эми кезек сизде. Колуңуздагы бул кичинекей сенсор менен эмне кыла алаарыңызды көрүү сиздин фантазияңызга байланыштуу. Бул жерде баштоо үчүн кээ бир идеялар:
- IR алыстан башкаруусун үйүңүздөгү түзмөктөрдүн биринде (сыналгы, стерео ж. Б.) Колдонуңуз жана аны Arduino долбооруңузда колдонууга аракет кылыңыз.
- Баскычты басуу менен бардык LED ди күйгүзүүгө аракет кылыңыз, андан кийин башка баскычты колдонуп өчүрүңүз
- Алыстан башкаруунун өйдө/ылдый баскычын колдонуп, LEDлерди күйгүзүп/өчүрмөйүнчө бирден -бирден күйгүзүңүз
- Светофорду светодиод менен түзүңүз жана аны пультуңуздун жардамы менен башкарыңыз
- Эгерде сизде кичинекей DC мотору бар болсо, IR пульту аркылуу анын айлануу багытын баштоого/токтотууга же өзгөртүүгө аракет кылыңыз
- Сыналгыңыздын пультун роботту башкарууга же андагы кээ бир сенсорлорду/кыймылдаткычтарды иштетүүгө/өчүрүүгө колдонсоңуз болот
Мага комментарийлерде айтып коюңуз, IR пультун колдонуп эмне кылмаксыз (же сиз буга чейин кылдыңыз).
Сунушталууда:
Ардуино лазердик инфракызыл термометр: 7 кадам (сүрөттөр менен)
Ардуино лазердик инфракызыл термометр: Бул долбоордо мен сизге 3D басылган корпусу бар санарип лазердик инфракызыл термометрди кантип курууну көрсөтөм
Ардуино менен инфракызыл радар: 6 кадам
Ардуино менен инфракызыл радар: Бул кичинекей долбоордо мен сизге Arduino менен үйдө жөнөкөй радарды кантип түзүүнү көрсөткүм келет. Интернетте көптөгөн окшош долбоорлор бар, бирок алардын баары аралыкты өлчөө үчүн УЗИ сенсорун колдонуп жатышат. Бул долбоордо мен инфо колдоном
Ардуино менен инфракызыл үйдү автоматташтыруу: 5 кадам
Ардуино менен инфракызыл үйдү автоматташтыруу: ARDUINO HOME AUTOMATION Үйдү автоматташтыруу - бул адатта кол менен жасай турган нерсеңизди автоматтык түрдө жасоону билдирет. Адатта, сиз которуштургучту өйдө көтөрө аласыз, эгерде сиз пультту бассаңыз, жарыгыңыз автоматтык түрдө келет
Ардуино менен 2.4Ghz NRF24L01 модулун колдонуу менен зымсыз алыстан башкаруу - Nrf24l01 4 каналы / 6 каналды берүүчү Quadcopter үчүн алуучу - Rc Helicopter - Rc учагы Arduino колдонуу: 5 кадам (сүрөттөр менен)
Ардуино менен 2.4Ghz NRF24L01 модулун колдонуу менен зымсыз алыстан башкаруу | Nrf24l01 4 каналы / 6 каналды берүүчү Quadcopter үчүн алуучу | Rc Helicopter | Arduino менен Rc учагы: Rc машинасын иштетүү | Quadcopter | Дрон | RC учагы | RC кайыгы, бизге дайыма рецептор жана өткөргүч керек, RC QUADCOPTER үчүн бизге 6 каналдуу өткөргүч жана кабыл алгыч керек деп ойлойбуз жана TX менен RXтин бул түрү өтө кымбат, ошондуктан биз аны өзүбүздө жасайбыз
Лазердик сенсорду жана үн буйруктарын колдонуу менен автоматтык кармоо: 5 кадам (сүрөттөр менен)
Лазердик сенсорду жана үн буйруктарын колдонуу менен автоматтык кармоо: Бизге жөнөкөй жана табигый көрүнгөн нерселерди кармоо - бул татаал иш. Адам кармоону каалаган нерседен алыстыгын аныктоо үчүн көрүү сезимин колдонот. Кол колго жакын турганда автоматтык түрдө ачылат