Мазмұны:

Инфрақызыл сүйек сенсоры: 5 қадам
Инфрақызыл сүйек сенсоры: 5 қадам

Бейне: Инфрақызыл сүйек сенсоры: 5 қадам

Бейне: Инфрақызыл сүйек сенсоры: 5 қадам
Бейне: Әйелді қандыратын 5 әдіс 2024, Шілде
Anonim
Инфрақызыл сүйек сенсоры
Инфрақызыл сүйек сенсоры
Инфрақызыл сүйек сенсоры
Инфрақызыл сүйек сенсоры

Менің атым Калвин, мен сізге инфрақызыл диафрагманың қалай жасалатынын көрсетемін және оның қалай жұмыс істейтінін түсіндіремін.

Мен қазір Тейлор университетінің компьютерлік инженерия мамандығы бойынша оқушысымын және менің командамнан маған 1 дюймдік шаршыға сәйкес келетін кез келген нысанды сұрыптай алатын механизмді жобалауды және құруды сұрады. Біз қарапайым маршрутты таңдап, қарапайым түс сенсорының көмегімен m & m сұрыптауды таңдаған болар едік, бірақ біз жоғарыдан әрі асып кетуді және көрсетілген сан бойынша сүйектерді сұрыптауды шештік. Сүттің бетін қалай оқу керектігі туралы нұсқаулықты табуға тырысқан бірнеше сағаттан кейін мен мына сілтемеге кірдім:

makezine.com/2009/09/19/dice-reader-versio…

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

Жабдықтар

Енді жабдықтарға келейік:

Саған қажет болады:

1 x Arduino Uno

5 x IR қабылдағыштары

5 x IR сәуле шығарғыштары

www.sparkfun.com/products/241

5 x 270 Ом резисторлар

5х10 кОм резисторлар

1 x 74HC595N чипі

әр түрлі ерлер тақырыптары

1 x прототип тақтасы (егер сіз арнайы фрезерленген тақтаны алмасаңыз)

1 -қадам: Бұл қалай жұмыс істейтінін түсіну

Бұл қалай жұмыс істейтінін түсіну
Бұл қалай жұмыс істейтінін түсіну
Бұл қалай жұмыс істейтінін түсіну
Бұл қалай жұмыс істейтінін түсіну

Бұл сенсор сүйектердің беттерін оқу үшін 5 құбырлы орынды пайдаланады. Ол инфрақызыл сәулені осы құбырлардағы сүйектердің бетінен секіру үшін пайдаланады және контроллерге оның ақ немесе қара екенін айтады.

Сізді қызықтыруы мүмкін, неге тек 5 құбырлы орын? Сүйектерді тиімді оқу үшін барлық 9 қажет емес пе?

Сүйектің симметриялы болуына байланысты, сүйектердің 5 нақты орнын пайдалану сүйектердің әр түрлі сандарының арасындағы айырмашылықты бағдарға қарамастан айтуға жеткілікті болады (сурет 1). Бұл сүйек сенсорын тиімдірек етеді, себебі ол тек қажет нәрсені іздейді және артық ештеңе жоқ.

Эмитент осы 5 құбырлы орынның әрқайсысында сенсордағы қабылдағыштың астына түседі, содан кейін сенсор инфрақызыл сәулені шығарады, содан кейін қабылдағыш сүйектің бетіне секіретін инфрақызыл сәулесінің мөлшерін оқиды. (3 -сурет) Егер алынған мән көрсетілген калибрлеу сандарынан үлкен болса, онда сенсор нүктені нүкте ретінде көреді, егер олай болмаса - бұл бос орын. (сурет 2)

2 -қадам: Жобалау және жоспарлау

Жобалау және жоспарлау
Жобалау және жоспарлау
Жобалау және жоспарлау
Жобалау және жоспарлау
Жобалау және жоспарлау
Жобалау және жоспарлау
Жобалау және жоспарлау
Жобалау және жоспарлау

Сүйек сенсорын құрудың бірінші қадамы схеманы құру болып табылады, бұл дамудың ең қиын немесе қарапайым қадамы болуы мүмкін. Сізге алдымен Autodesk by EAGLE деп аталатын бағдарламалық қамтамасыз ету қажет, бұл мен схеманы жасау үшін қолданған бағдарламалық жасақтама.

Мен 2 түрлі схеманы қостым, бір схемада сенсорды дәлірек етуге көмектесетін ауысымдық регистр чипі бар, ал екіншісінде ауыспалы регистр чипі жоқ, бірақ бұл схема мен беретін кодпен жұмыс істемейді. Кейінірек, сіз өз бетіңізше бір нәрсені дамытуға тура келеді.

Мен сондай -ақ ауысым регистрімен жасалған сенсорға арналған тақтаның орналасуын енгіздім.

Тақтаны жобалауды бастау үшін сізде 5 IR қабылдағыш пен 5 IR сәулелендіргіші бар, қабылдағыштар үшін 10k резистор қажет, ал эмиттерлер үшін 270 Ом резистор қажет, сондықтан сіз осы элементтердің әрқайсысы үшін:

VCC (5V) -> Резистор -> Аналогты оқу түйреуі -> IR қабылдағышы -> GND

VCC (5V) -> Резистор -> IR сәулелендіруші -> GND

Аналогты оқу түйреуі резистор мен ИҚ қабылдағыш арасында басқа тармақ ретінде шығады және Arduino аналогтық түйреуішіне өтеді. Сондай -ақ, эмитенттің тікелей қабылдағыштың астына түсетініне көз жеткізу керек, мен бұл қатені бірінші рет жасадым және мен өте нашар нәтиже алдым, сондықтан қабылдағыштың жоғарғы жағында екеніне көз жеткізіңіз.

Жеке тақтада мен эмитенттер мен қабылдағыштардың әр жұбын бір уақытта қуатпен қамтамасыз ету үшін ауысымдық регистрді қолданамын, басқа сәулелендірушілерден инфрақызыл сәуленің түсуін болдырмау үшін. Бұл маған құбырлардың орналасу орындарының әрқайсысынан дәлірек оқуға мүмкіндік береді, егер сіз ауысым регистрін пайдаланбауды шешсеңіз, ол сіз үшін әлі де жұмыс істейді, ол дәлірек болуы мүмкін. Ауысым регистрінде сіз 3-4 және 7-8 түйреуіштерді біріктіре аласыз, себебі олардың тақырып ретінде болуы міндетті емес. Болашақта дамытуды қаласам, оларды тақырып ретінде қалдырдым және үстіңгі жағына секіргіштерді қойдым.

Схеманы жасағаннан кейін сіз схеманың тақтасының орналасуын жасауыңыз керек. Бұл бөлік өте қиын болуы мүмкін, себебі сіздің жолдарыңыз бір -біріне сәйкес келмейтініне көз жеткізіңіз және сіздің жолдар мен тесіктер сіздің машинаның сипаттамаларына сәйкес келетініне көз жеткізіңіз. Мен бекітілген тақтаның макеті мен тақтаны тегістеу үшін пайдаланылатын машинаның нақты өлшемдеріне ие болды. Мен бірнеше сағат бойы тақтаны мүмкіндігінше кішкентай етіп саламын. Бұл тақтада жақсартуға әлі де орын бар еді, бірақ ол мен үшін жұмыс істеді, сондықтан мен оны сол күйінде қалдырдым. Барлық Ground элементтерін байланыстыратын мыс GND нұсқасы бар және тіркемесіз нұсқасы бар.

Сіз сондай -ақ схеманы тақтаға немесе прототип тақтасына салу үшін қолдана аласыз, өйткені оларды алу әлдеқайда оңай және арзан нұсқа, өйткені арнайы тақтаны фрезерлеу қажет емес.

Сіз тақтаның дизайнын алғаннан кейін келесі қадамға өтуіңізге болады!

3 -қадам: тақтаны құру

Тақтаны құру
Тақтаны құру
Тақтаны құру
Тақтаны құру
Тақтаны құру
Тақтаны құру

Бұл бөлік тақтаны қалай құрғыңыз келетініне байланысты. Мен сенсорды прототип тақтасында тұжырымдаманың жұмыс істейтінін және оның қаншалықты дәл екенін тексеру үшін жасадым, сондықтан мен схеманы ауысымдық регистрсіз орындадым және тақтаны жасадым. Сызықтар бір -біріне жабысып қалмауы үшін және кездейсоқ қосылуға болмайтын сызықтарды дәнекерлемеу үшін бәрін орналастыру керек. Прототип тақтасында жасаған кезде сіз өте абай болуыңыз керек, сондықтан асықпаңыз және асықпаңыз. Сондай -ақ, ашық сымдардан абай болу керек, себебі олар жылжып, жүйеде шорт тудыруы мүмкін.

Егер сіз тақтаны фрезерлеуді таңдасаңыз, онда бұл процесс қарапайым. Тақта файлын диірменшіге арнайы диірмен параметрлері арқылы жіберіңіз. Егер сіз мұны өзіңіз жасасаңыз, оны шығарар алдында, барлық мыс жеткілікті тереңдікте ұнтақталғанына көз жеткізіңіз, мен жасаған бірінші тақта, мыс жеткілікті тереңдікте фрезерленбеген, мен тағы бір фрезер алуым керек болды.

Қажетті орналасуда тақтаға дәнекерленгенін тексеріңіз және сіздің уақытыңызды бөлуді ұмытпаңыз, ал егер ПХД -де дәнекерлеу болса, тақтаның дұрыс жағына дәнекерленгеніне көз жеткізіңіз.

Инфрақызыл қабылдағыштар мен эмитенттерді қосқанда, эмитенттің ресивердің астында екеніне көз жеткізіңіз. ИҚ компоненттерінің аяқтарын дұрыс жерге қою үшін оларды бүгу арқылы ойнауға тура келеді. Құбырлардың орналасуы қажет жерде екенін тексеру үшін сүйектерді қолыңызда ұстаңыз.

Барлығын дәнекерлеп, тақтаға қосқаннан кейін сенсорды бағдарламалауға кірісесіз.

4 -қадам: тақтаны бағдарламалау

Басқарманы бағдарламалау
Басқарманы бағдарламалау
Басқарманы бағдарламалау
Басқарманы бағдарламалау

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

Бастау үшін сізде осы сенсормен жұмыс істейтін Arduino болуы керек. Ол 5 аналогтық түйреуіш пен 3 сандық түйреуішті қолданады.

Сізде аналогты және цифрлық түйреуіштерді таңдау үшін мен жасаған кітапхананы пайдалану мүмкіндігіңіз бар, бірақ мен оны сенсормен интерфейс жасау үшін істікшелердің көмегімен түсіндіремін. Мен түйреуіштердің айналасында түйреуіштердің нөмірлері мен түрлі -түсті қораптармен байланыстырылған суретті белгілеп қойдым, бұл түйреуіш қай жерге қосылатынын оңай түсіндіру үшін.

Сенсорда 1-5 қызыл түйреуіштер A0-A4-ке ауысады, сондықтан Red 1 A0-ге ауысады және т.б. 1-8 ақ түйреуіштер сәл көбірек түсіндіруді қажет етеді.

Ақ 1 - деректер түйреуі, бұл жерде Arduino деректерді ауысым регистріне жібереді. Мен бұл түйреуішті Arduino -дағы цифрлық 3 -істікке қойдым

Ақ 2 - Q0, бұл жағдайда ескірген, мен оны кеңейтуге шешім қабылдаған жағдайда енгіздім

Ақ 3 & 4 - жұптасады, сіз бұл екеуін бірге дәнекерлей аласыз немесе мен сияқты секіргішті қолдана аласыз.

Ақ 5 - бекіткіш түйреуіш, пиптердің қосылуы мен өшуін көрудің соңғы кезеңі болып табылатын өте маңызды түйреуіш. Мен бұл түйреуішті Arduino -дегі 12 -ші істікке қойдым

Ақ 6 - Сағат түйрегіші, бұл Arduino -дан ауысым регистріне дейінгі сағатты қамтамасыз етеді. Мен мұны 13 цифрлық пинге қойдым.

Ақ 7 және 8 - жұптасады, сіз бұл екеуін бірге дәнекерлей аласыз немесе мен сияқты секіргішті қолдана аласыз.

Ақ жәшіктің жанында сізде Ground және VCC түйреуіштері бар. Бұл сенсорды қуаттандыру үшін сізге Arduino немесе басқа көзден 5 вольт беру керек.

PIP орналасу нөмірлерін кодтан табуға болады.

Енді сіз оны қосуыңыз керек, біз оны калибрлеуіміз керек. Менің мақсатым - сіз үшін калибрлейтін сценарий құру, бірақ менде бұған уақыт жоқ. Калибрлеу кезінде сенсордың басқарылатын жарық жағдайында екеніне көз жеткізу керек, ол сыртқы жарыққа сезімтал. Сіз әр нүктеден қара нүкте мен ақ нүктенің мәнін алуыңыз керек және айырмашылықты орташа мәнге келтіруіңіз керек. Мен калибрлеу үшін сүйектердің тек екі жағын қолдандым, 1 жағын, 6 жағын және 6 жағы 90 градусқа бұрылдым. Әр пиптің орналасуы үшін ақ пен қараға арналған нөмір болғаннан кейін, оларды ортаға салып, екі санның ортасын табу керек. Мысалы, егер менде бірінші түтік орнынан ақ түс үшін 200, ал бірінші құбырдың қараңғы мәні үшін 300 болса, онда калибрлеу нөмірі 250 болады. Мұны барлық 5 құбырлы орын үшін жасағаннан кейін сенсорыңыз дұрыс калибрленген, содан кейін dice. ReadFace () қолдануға болады; сүйектердің қазіргі бетін алу үшін.

5 -қадам: Өтініш

Қолдану
Қолдану
Қолдану
Қолдану
Қолдану
Қолдану

Сіз қазір сүйек сенсорын сәтті құрдыңыз! Құттықтаймын! Бұл сенсорды жасау мен үшін ұзақ сынақтар мен қателіктер болды, сондықтан менің мақсатым - сүйек сенсорын жасағысы келетіндерге көмектесу.

Мен осы сенсорды қолданатын жобаның бірнеше мысалын қостым. Бірінші суретте біз сенсордың жоғарғы жағындағы сүйектерді дұрыс орналастыру үшін дөңгелекті қолдандық. Екінші сурет біздің жобаның соңғы өнімі болды, ал негіз сүйектің бетіне байланысты айналады, ал үшінші сурет - бұл сенсорларды дисплейге қою үшін мен құрастырған дисплей қорабы.

Егер сіз бұл туралы ойласаңыз, бұл сенсордың мүмкіндігі шексіз. Сізге бұл оқу құралы қызықты және тәрбиелік әсер береді деп сенемін, және сіз өзіңіз үшін бір сабақ жасауға тырысасыз деп үміттенемін.

Құдай сақтасын!

Ұсынылған: