Satura rādītājs:

Infrasarkano kauliņu sensors: 5 soļi
Infrasarkano kauliņu sensors: 5 soļi

Video: Infrasarkano kauliņu sensors: 5 soļi

Video: Infrasarkano kauliņu sensors: 5 soļi
Video: Lampu Sensor Untuk Remote, IR Remote Detector 2024, Novembris
Anonim
Infrasarkano kauliņu sensors
Infrasarkano kauliņu sensors
Infrasarkano kauliņu sensors
Infrasarkano kauliņu sensors

Mans vārds ir Kalvins, un es jums parādīšu, kā izveidot infrasarkano kauliņu sensoru, un paskaidrošu, kā tas darbojas.

Pašlaik es esmu Teilora universitātes students, kurš studē datoru inženieriju, un man un manai komandai tika lūgts izstrādāt un izveidot mehānismu, kas var sakārtot jebkuru objektu, kas var ietilpt 1 collas kvadrātā. Mēs būtu varējuši izvēlēties vienkāršāko ceļu un izvēlēties šķirot m & m, izmantojot vienkāršu krāsu sensoru, bet mēs nolēmām doties augstāk un tālāk un kārtot kauliņus pēc parādītā numura. Pēc neskaitāmām stundām, mēģinot atrast ceļvedi, kā izlasīt kauliņu seju, es uzgāju šo saiti šeit:

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

Tomēr šī saite man nedeva daudz vairāk par ideju, kā lasīt kauliņu seju, tāpēc, izmantojot piedāvāto ideju, es turpināju veidot un attīstīt sensoru, ko var savienot ar Arduino viegli un var nolasīt kauliņu seju pēc iespējas precīzāk, tādējādi dodot mums šo infrasarkano kauliņu sensoru.

Piegādes

Tagad par piegādēm:

Jums būs nepieciešams:

1 x Arduino Uno

5 x IR uztvērēji

5 x IR izstarotāji

www.sparkfun.com/products/241

5 x 270 omi rezistori

5 x 10k omu rezistori

1 x 74HC595N mikroshēma

dažādi vīriešu galvenes

1 x prototipa dēlis (ja jūs nesaņemat pielāgotu frēzētu dēli)

1. darbība. Izpratne par to, kā tā darbojas

Izpratne par to, kā tā darbojas
Izpratne par to, kā tā darbojas
Izpratne par to, kā tā darbojas
Izpratne par to, kā tā darbojas

Šis sensors izmanto 5 pipas vietas, lai nolasītu kauliņu sejas. Tas izmanto infrasarkano gaismu, lai atlēktu no kauliņu sejas šajās pip vietās, un norāda kontrolierim, vai tā ir balta vai melna.

Jums var rasties jautājums, kāpēc tad tikai 5 pipas vietas? Vai jums nebūtu vajadzīgi visi 9, lai efektīvi izlasītu kauliņus?

Sakarā ar kauliņu simetriju, ar 5 konkrētām kauliņu vietām var pietikt, lai noteiktu atšķirību starp dažādiem kauliņu numuriem neatkarīgi no orientācijas (1. attēls). Tas padara kauliņu sensoru efektīvāku, jo tas meklē tikai to, kas tam nepieciešams, un neko papildus.

Izstarotājs atrodas tieši zem uztvērēja uz sensora katrā no šīm 5 pip vietām, sensors izstaro IR gaismu, un pēc tam uztvērējs nolasa IR gaismas daudzumu, kas atlec no kauliņu sejas. (3. attēls) Ja saņemtā vērtība ir lielāka par norādītajiem kalibrēšanas skaitļiem, sensors redzēs šo punktu kā punktu, ja nē, tad tā ir atstarpe. (2. attēls)

2. solis: projektēšana un plānošana

Projektēšana un plānošana
Projektēšana un plānošana
Projektēšana un plānošana
Projektēšana un plānošana
Projektēšana un plānošana
Projektēšana un plānošana
Projektēšana un plānošana
Projektēšana un plānošana

Pirmais solis, lai izveidotu kauliņu sensoru, ir izveidot shēmas, tas var būt visgrūtākais vai vieglākais attīstības posms. Vispirms jums ir nepieciešama programmatūra, ko Autodesk sauc par EAGLE. Šo programmatūru es izmantoju, lai izveidotu shēmas.

Esmu iekļāvis 2 dažādu veidu shēmas, vienā shēmā ir nobīdes reģistra mikroshēma, kas palīdz padarīt sensoru precīzāku, un otrā ir viena bez maiņu reģistra mikroshēmas, tomēr šī shēma nedarbosies ar kodu, ko es sniegšu vēlāk, tāpēc jums būs kaut kas jāizstrādā pašam.

Esmu iekļāvis arī tāfeles izkārtojumu sensoram, ko esmu izstrādājis ar maiņu reģistru.

Lai sāktu dēļa projektēšanu, jums ir 5 IR uztvērēji un 5 IR emitētāji, uztvērējiem ir nepieciešams 10 k rezistors, un izstarotājiem ir nepieciešams 270 omu rezistors, tāpēc katram no šiem elementiem jūs dodaties no:

VCC (5V) -> Rezistors -> Analog Read Pin -> IR uztvērējs -> GND

VCC (5V) -> Rezistors -> IR emitētājs -> GND

Analogā lasīšanas tapa iznāk starp rezistoru un IR uztvērēju kā citu filiāli un iet uz Arduino analogo tapu. Jums arī jāpārliecinās, ka emitētājs iet tieši zem uztvērēja. Es to izdarīju pirmo reizi, kad to izdarīju, un man bija ļoti slikti rezultāti, tāpēc pārliecinieties, ka uztvērējs iet uz augšu.

Savā pielāgotajā panelī es izmantoju maiņu reģistru, lai nodrošinātu strāvas padevi katram emitētāja un uztvērēja pārim pa vienam, lai izvairītos no citu izstarotāju izplūdes. Tas dod man vēl precīzāku nolasījumu no katras pip atrašanās vietas. Ja izvēlēsities neizmantot maiņu reģistru, tas joprojām darbosies jūsu vietā, tas varētu būt nedaudz mazāk precīzs. Maiņu reģistrā jūs varat savienot tapas 3-4 un 7-8 kopā, jo nav pilnīgi nepieciešams, lai tās būtu galvenes. Es atstāju tos kā galvenes un uzliku džemperus virsrakstiem gadījumam, ja vēlos turpmāk attīstīties.

Kad esat izstrādājis shēmu, jums ir jāizveido shēmas shēma. Šī daļa var kļūt ļoti sarežģīta, jo jums jāpārliecinās, ka jūsu ceļi nepārklājas, un jāpārliecinās, ka ceļi un caurumi atbilst jūsu mašīnas specifikācijām. Plāksnes izkārtojumam, kuru es pievienoju, bija konkrēti mašīnas izmēri, ar kuriem es izmantoju dēļa frēzēšanu. Es pavadu dažas stundas, klājot dēli, lai tas būtu pēc iespējas mazāks. Šajā panelī vēl bija ko uzlabot, bet man tas izdevās, tāpēc es atstāju to tādu, kāds tas ir. Ir versija ar vara GND, kas savieno visus zemes elementus, un versija bez pievienota.

Jūs varat arī izmantot savu shēmu, lai to izveidotu uz maizes dēļa vai prototipa dēļa, jo tos ir daudz vieglāk iegūt, un tas ir lētāks risinājums, jo jums nav jābūt frēzētam pēc pasūtījuma.

Kad esat izveidojis tāfeles dizainu, varat pāriet uz nākamo soli!

3. solis: valdes veidošana

Valdes veidošana
Valdes veidošana
Valdes veidošana
Valdes veidošana
Valdes veidošana
Valdes veidošana

Šī daļa ir pilnībā atkarīga no tā, kā vēlaties izveidot dēli. Es izveidoju sensoru uz prototipa plates, lai pārbaudītu, vai koncepcija darbojas un cik tā ir precīza, tāpēc es sekoju shēmai bez maiņu reģistra un izveidoju tāfelīti. Jums ir jāpārliecinās, ka viss ir izkārtots tā, lai līnijas nepārklātu un nejauši netiktu pielodētas līnijas, kuras nevajadzētu savienot. Darot to uz prototipa dēļa, jums jābūt ļoti uzmanīgam, tāpēc nesteidzieties un nesteidzieties. Jāuzmanās arī no atvērtiem vadiem, jo tie var pārvietoties un izraisīt īsslēgumus sistēmā.

Ja izvēlējāties frēzēt dēli, šis process ir vienkāršāks. Nosūtiet tāfeles failu dzirnavniekam ar konkrētiem dzirnavnieka iestatījumiem. Ja to darāt pats, pagatavojiet pirms izņemšanas, pārliecinieties, vai viss varš ir pienācīgi samalts pietiekami dziļi, Pirmā tāfele, kuru es biju izgatavojis, varš nebija pietiekami dziļi frēzēts, un man bija jānoslīpē vēl viens.

Pārliecinieties, ka viss ir pielodēts pie tāfeles vēlamajā izkārtojumā, un noteikti veltiet laiku, un, ja lodējat uz PCB, pārliecinieties, ka lodējat pareizajā plāksnes pusē.

Uzliekot IR uztvērējus un emitētājus, pārliecinieties, vai emitētājs atrodas tieši zem uztvērēja. Jums būs jāspēlējas, saliekot IR komponentu kājas, lai tās nokļūtu pareizajā vietā. Turiet arī kauliņus pie rokas, lai pārbaudītu, vai pipu atrašanās vietas ir tur, kur tām jābūt.

Kad viss ir pielodēts un pievienots uz tāfeles, jūs sākat programmēt sensoru.

4. solis: valdes programmēšana

Valdes programmēšana
Valdes programmēšana
Valdes programmēšana
Valdes programmēšana

Šī ir sarežģītā daļa, lai padarītu sensoru pēc iespējas precīzāku, programmējot dēli. Par laimi, esmu izveidojis bibliotēku, lai jūs varētu to izmantot kopā ar tikko izveidoto sensoru, lai padarītu to daudz vieglāku, tomēr jums būs jākalibrē sensors atkarībā no apgaismojuma, kurā atrodas šis sensors.

Lai sāktu, jums ir jābūt Arduino, lai izveidotu saskarni ar šo sensoru. Tas izmanto 5 analogās tapas un 3 digitālās tapas.

Jums ir iespēja izmantot manu izveidoto bibliotēku, lai izvēlētos savus analogos un digitālos tapas, taču es to izskaidrošu, izmantojot tapas, kuras es darīju, lai izveidotu saskarni ar sensoru. Es esmu atzīmējis attēlu, kas saistīts ar tapu numuriem un krāsainām kastēm ap tapu komplektu, lai viegli izskaidrotu, kura tapa ir pievienota kur.

Uz sensora tapas 1-5 Sarkanā iet uz A0-A4, tātad sarkanā 1 uz A0 un tā tālāk. Tapas 1-8 Balta prasa nedaudz plašāku skaidrojumu.

Balts 1 - datu tapa, šeit Arduino nosūta datus uz maiņu reģistru. Es iestatīju šo tapu uz Arduino 3. ciparu tapu

Balts 2 - Q0, šajā gadījumā novecojis, es to iekļāvu gadījumā, ja es vispār nolēmu paplašināties

Balta 3 un 4 - tiks savienots pārī, jūs varat šos abus lodēt kopā vai izmantot džemperi, kā es to darīju.

Balta 5 fiksatora tapa, ļoti svarīga tapa, kas ir pēdējais solis procesā, lai redzētu kauliņu ieslēgšanos un izslēgšanos. Es iestatīju šo tapu uz 12. tapu Arduino

Balts 6 - pulksteņa tapa, tas nodrošina pulksteni no Arduino uz maiņu reģistru. Es to iestatīju uz ciparu tapu 13.

Baltais 7 un 8 - tiks savienots pārī, jūs varat šos abus lodēt kopā vai izmantot džemperi, kā es to darīju.

Blakus baltajai kastei ir zemējuma un VCC tapas. Šī sensora barošanai jums ir jānodrošina 5 V spriegums no Arduino vai cita avota.

PIP atrašanās vietas numurus var atrast kodā.

Tagad, kad jums tas jāpieslēdz, mums tas ir jākalibrē. Mans mērķis bija izveidot skriptu, kas to varētu jums kalibrēt, bet man pietrūka laika, lai to izdarītu. Kalibrējot, jums jāpārliecinās, vai sensors atrodas kontrolētā apgaismojuma vidē, lai tas būtu jutīgs pret ārējo secināto gaismu. Jums ir jāiegūst vērtība no katras pip atrašanās vietas ar melnu un baltu punktu un jānovērtē atšķirība. Kalibrēšanai es izmantoju tikai divas kauliņu puses, es izmantoju 1. pusi, 6. pusi un 6. pusi, kas pagriezta par 90 grādiem. Kad katrai pip atrašanās vietai ir balts un melns numurs, jums tie ir jānovērtē vidēji un jāatrod abu ciparu vidus. Piemēram, ja es saņēmu 200 baltai no pirmās pip atrašanās vietas un 300 pirmās tumšās vietas tumšajai vērtībai, tad kalibrēšanas numurs būtu 250. Kad jūs to darīsit visām 5 pip vietām, jūsu sensors būs pareizi kalibrēts, tad varat izmantot kauliņus. ReadFace (); lai iegūtu kauliņu pašreizējo seju.

5. darbība

Pieteikums
Pieteikums
Pieteikums
Pieteikums
Pieteikums
Pieteikums

Jūs tagad esat veiksmīgi izveidojis kauliņu sensoru! Apsveicam! Šī sensora izveidošana man ir bijis ilgs izmēģinājumu un kļūdu ceļš, tāpēc mans mērķis ir palīdzēt ikvienam, kas vēlas izveidot kauliņu sensoru.

Esmu iekļāvis dažus mūsu veidotā projekta piemērus, kuros tika izmantots šis sensors. Pirmajā attēlā mēs izmantojām lāpstiņu, lai katru reizi pareizi novietotu sensora virsotni. Otrais attēls bija mūsu projekta galaprodukts, un pamatne rotēs atkarībā no kauliņu sejas, un trešais attēls ir displeja kaste, kuru es izstrādāju un uzbūvēju, lai šos sensorus parādītu.

Šī sensora iespēja ir bezgalīga, ja jūs to pārdomājat. Es ceru, ka šī apmācība jums šķitīs patīkama un izglītojoša, un es ceru, ka jūs mēģināsit to izveidot sev.

Dievs svētī!

Ieteicams: