Kazalo:

Infrardeči senzor za kocke: 5 korakov
Infrardeči senzor za kocke: 5 korakov

Video: Infrardeči senzor za kocke: 5 korakov

Video: Infrardeči senzor za kocke: 5 korakov
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Julij
Anonim
Infrardeči senzor za kocke
Infrardeči senzor za kocke
Infrardeči senzor za kocke
Infrardeči senzor za kocke

Moje ime je Calvin in pokazal vam bom, kako narediti infrardeči senzor za kocke, ter razložil, kako deluje.

Trenutno sem študent univerze Taylor, ki študira računalniški inženiring, in moja ekipa sta me prosila, naj oblikujemo in izdelamo mehanizem, ki lahko razvrsti kateri koli predmet, ki se prilega kvadratu velikosti 1 palca. Lahko bi ubrali enostavno pot in se odločili, da m & m razvrstimo s preprostim barvnim senzorjem, vendar smo se odločili, da gremo čez in presežemo kocke po prikazani številki. Po neštetih urah iskanja vodnika, kako prebrati obraz kock, sem naletel na to povezavo tukaj:

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

Ta povezava pa mi ni dala veliko več kot le zamisel o tem, kako prebrati obraz kock, zato sem z uporabo predložene ideje odšel na pot za izdelavo in razvoj senzorja, ki ga je mogoče povezati z Arduinom z lahkoto in lahko čim natančneje prebere obraz kock, s čimer dobimo ta infrardeči senzor kock.

Zaloge

Zdaj pa k zalogam:

Boste potrebovali:

1 x Arduino Uno

5 x IR sprejemniki

5 x IR oddajniki

www.sparkfun.com/products/241

5 x 270 ohmski upori

5 x 10k ohmski upori

1 x 74HC595N čip

različne moške glave

1 x prototipna plošča (če ne dobite rezkane plošče po meri)

1. korak: Razumevanje, kako deluje

Razumevanje, kako deluje
Razumevanje, kako deluje
Razumevanje, kako deluje
Razumevanje, kako deluje

Ta senzor uporablja 5 mest pip za branje obrazov kock. Uporablja infrardečo svetlobo za odbijanje kocke na teh mestih pip in pove krmilniku, ali je bela ali črna.

Morda se sprašujete, zakaj potem samo 5 pip lokacij? Ali ne bi potrebovali vseh 9 za učinkovito branje kock?

No, zaradi simetrije kock lahko uporaba 5 določenih mest na kocki zadostuje za razliko med različnimi številkami na kocki, ne glede na orientacijo (slika 1). Tako je senzor za kocke učinkovitejši, saj išče samo tisto, kar potrebuje, in nič dodatnega.

Oddajnik gre točno pod sprejemnik na senzorju na vsakem od teh petih pipovih mest, senzor nato oddaja IR svetlobo, nato pa sprejemnik odčita količino IR svetlobe, ki odbije površino kocke. (slika 3) Če je prejeta vrednost večja od določenih kalibracijskih številk, bo senzor to točko videl kot piko, če ne, potem je to prazen prostor. (slika 2)

2. korak: Oblikovanje in načrtovanje

Oblikovanje in načrtovanje
Oblikovanje in načrtovanje
Oblikovanje in načrtovanje
Oblikovanje in načrtovanje
Oblikovanje in načrtovanje
Oblikovanje in načrtovanje
Oblikovanje in načrtovanje
Oblikovanje in načrtovanje

Prvi korak pri izdelavi senzorja za kocke je ustvariti sheme, to je lahko najtežji ali najlažji korak razvoja. Najprej potrebujete programsko opremo Autodesk EAGLE, to je programska oprema, ki sem jo uporabil za ustvarjanje shem.

Vključil sem 2 različni shemi, ena shema ima čip registra za premik, ki pomaga narediti senzor natančnejši, druga pa je ena brez čipa registra zamika, vendar ta shema ne bo delovala s kodo, ki jo bom posredoval pozneje, zato boste morali nekaj razviti sami.

Vključil sem tudi postavitev plošče za senzor, ki sem ga oblikoval s premičnim registrom.

Če želite začeti oblikovati ploščo, imate 5 IR sprejemnikov in 5 IR oddajnikov, sprejemniki potrebujejo 10k upor, oddajniki pa 270 ohmski upor, zato za vsakega od teh elementov uporabite:

VCC (5V) -> Upor -> Analogni bralni pin -> IR sprejemnik -> GND

VCC (5V) -> Upor -> IR oddajnik -> GND

Pin za analogno branje pride med upor in IR sprejemnik kot druga veja in gre do analognega zatiča na Arduinu. Poskrbeti morate tudi, da gre oddajnik neposredno pod sprejemnik, to napako sem naredil prvič, ko sem to naredil, in dosegel sem zelo slabe rezultate, zato se prepričajte, da je sprejemnik na vrhu.

V svoji plošči po meri uporabljam premični register za napajanje vsakega para oddajnikov in sprejemnikov, enega za drugim, da se izognem kakršni koli krvavitvi IR svetlobe iz drugih oddajnikov. To mi daje še natančnejše branje z vsakega od mest pipa. Če se ne odločite za uporabo registra premikov, vam bo še vedno deloval, morda bo le nekoliko manj natančen. V registru premikov lahko združite nožici 3-4 in 7-8 skupaj, saj nista nujno, da ju imate kot glave. Pustil sem jih kot glave in dal skakalce na glave, če bi se želel v prihodnosti ukvarjati z razvojem.

Ko oblikujete shemo, morate narediti shemo plošče. Ta del je lahko zelo zapleten, ker morate paziti, da se vaše poti ne prekrivajo, in poskrbite, da vaše poti in luknje ustrezajo specifikacijam vašega stroja. Postavitev plošče, ki sem jo priložil, je imela posebne velikosti za stroj, ki sem ga uporabil za rezkanje plošče. Nekaj ur porabim, da postavim desko, da bo čim manjša. Na tej plošči je bilo še prostora za izboljšave, vendar mi je uspelo, zato sem jo pustil tako, kot je. Obstaja različica z bakrenim GND, ki povezuje vse ozemljitvene elemente, in različica brez pritrjenih.

Svoje sheme lahko uporabite tudi za izdelavo na plošči ali prototipni plošči, saj je do njih veliko lažje priti in je cenejša možnost, saj vam ni treba rezkati plošče po meri.

Ko imate obliko plošče, lahko preidete na naslednji korak!

3. korak: Izdelava odbora

Sestavljanje odbora
Sestavljanje odbora
Sestavljanje odbora
Sestavljanje odbora
Sestavljanje odbora
Sestavljanje odbora

Ta del je v celoti odvisen od tega, kako želite ustvariti tablo. Senzor sem ustvaril na prototipni plošči, da bi preveril, ali koncept deluje in kako natančen je, zato sem sledil shemi brez registra premikov in ustvaril ploščo. Poskrbeti morate, da vse postavite tako, da se črte ne prekrivajo in da po naključju ne spajkate linij, ki jih ne bi smeli povezati. Ko to počnete na prototipni plošči, morate biti zelo previdni, zato si vzemite čas in ne hitite. Prav tako morate biti previdni pri odprtih žicah, ker se lahko premikajo in povzročijo kratke stike v sistemu.

Če ste se odločili za rezkanje plošče, je ta postopek enostavnejši. Datoteko plošče pošljite mlinarju z določenimi nastavitvami mlinarja. Če to počnete sami, preden ga vzamete, se prepričajte, da je ves baker dovolj globoko rezkan. Prva plošča, ki sem jo naredil, baker ni bila dovolj globoko rezkana, zato sem moral narediti še eno.

Prepričajte se, da je vse spajkano na ploščo v želeni postavitvi in si vzemite čas, če pa spajkate na tiskano vezje, pazite, da ste spajkali na pravilni strani plošče.

Ko nameščate IR sprejemnike in oddajnike, se prepričajte, da je oddajnik točno pod sprejemnikom. Morali se boste poigrati z upogibanjem nog IR komponent, da jih postavite na pravo mesto. Pri roki imejte tudi kocke, da preverite, ali so mesta pipa tam, kjer morajo biti.

Ko vse spajkate in dodate na ploščo, nadaljujete s programiranjem senzorja.

4. korak: Programiranje plošče

Programiranje odbora
Programiranje odbora
Programiranje odbora
Programiranje odbora

To je zapleten del pri čim bolj natančnem senzorju, programiranju plošče. Na srečo sem ustvaril knjižnico, ki jo boste lahko uporabili z novo ustvarjenim senzorjem, da bo olajšalo programiranje, vendar boste morali senzor umeriti glede na osvetlitev, kjer se ta senzor nahaja.

Za začetek morate imeti Arduino za povezavo s tem senzorjem. Uporablja 5 analognih in 3 digitalne nožice.

S pomočjo knjižnice, ki sem jo naredil, lahko izberete lastne analogne in digitalne nožice, vendar bom to razložil z zatiči, ki sem jih naredil za vmesnik s senzorjem. Podobo, označeno s številkami pin in barvnimi polji, sem označil okoli nabora zatičev, da lahko preprosto razložim, katera čepka se priklopi.

Na senzorju so zatiči 1-5 rdeči na A0-A4, torej rdeči 1 na A0 in tako naprej. Zatiči 1-8 bele zahtevajo malo več razlage.

Bela 1 - Podatkovni pin, tukaj Arduino pošlje podatke v register premikov. Ta pin sem nastavil na digitalni pin 3 na Arduinu

Bela 2 - Q0, v tem primeru zastarela, vključil sem jo, če sem se sploh odločil za širitev

Bela 3 in 4 - Seznanjena bosta, lahko jih spajate skupaj ali uporabite mostiček, kot sem ga jaz.

Beli zatič s 5 zapahi, zelo pomemben zatič, ki je zadnji korak v procesu, da vidite, kako se pipe vklopijo in izklopijo. Ta pin sem nastavil na pin 12 na Arduinu

Bela 6 - zatič ure, ki zagotavlja uro od Arduina do registra premika. To sem nastavil na digitalni pin 13.

Bela 7 in 8 - Seznanjena bosta, lahko jih spajate skupaj ali uporabite mostiček, kot sem ga jaz.

Tik ob belem polju imate zatiči za ozemljitev in VCC. Za napajanje tega senzorja morate zagotoviti 5v iz Arduina ali drugega vira.

Številke lokacije PIP lahko najdete v kodi.

Zdaj, ko ga morate priključiti, ga moramo umeriti. Moj cilj je bil ustvariti skript, ki bi ga lahko umeril, vendar mi je za to zmanjkalo časa. Pri umerjanju se morate prepričati, da je senzor v okolju nadzorovane svetlobe, da je občutljiv na zunanjo svetlobo. Od vsake pip lokacije morate dobiti vrednost s črno piko in belo piko ter povprečje razlike. Za umerjanje sem uporabil samo dve strani kocke, stran 1, stran 6 in stran 6 sta se zasukala za 90 stopinj. Ko imate za vsako pip številko za belo in črno, jih morate povprečiti in poiskati sredino obeh številk. Če na primer dobim 200 za belo z prvega mesta pipa in 300 za temno vrednost prve pip lokacije, bi bila kalibracijska številka 250. Ko to storite za vseh 5 pip lokacij, je vaš senzor pravilno kalibrirano, potem lahko uporabite kocke. ReadFace (); da dobite trenutno stran kocke.

5. korak: Aplikacija

Uporaba
Uporaba
Uporaba
Uporaba
Uporaba
Uporaba

Zdaj ste uspešno ustvarili senzor za kocke! Čestitamo! Za ustvarjanje tega senzorja je bila dolga pot poskusov in napak, zato je moj cilj pomagati vsem, ki želijo ustvariti senzor za kocke.

Vključil sem nekaj primerov projekta, ki smo ga zgradili in uporabljali ta senzor. Na prvi sliki smo uporabili veslo, da smo kocke vsakič pravilno postavili na vrh senzorja. Druga slika je bila končni izdelek našega projekta, osnova pa se bo vrtela glede na to, kakšna je bila kocka, tretja slika pa je okvir za prikaz, ki sem ga oblikoval in izdelal za prikaz teh senzorjev.

Možnost tega senzorja je neskončna, če se odločite. Upam, da se vam zdi ta vadnica prijetna in poučna, in upam, da jo poskusite narediti sami.

Bog požegnaj!

Priporočena: