Sisukord:

Executive Par 3 golfimängu automaatne hindamine: 12 sammu (koos piltidega)
Executive Par 3 golfimängu automaatne hindamine: 12 sammu (koos piltidega)

Video: Executive Par 3 golfimängu automaatne hindamine: 12 sammu (koos piltidega)

Video: Executive Par 3 golfimängu automaatne hindamine: 12 sammu (koos piltidega)
Video: Golfimängu õppevideo alustajatele 2024, November
Anonim
Executive Par 3 golfimängu automaatne hindamine
Executive Par 3 golfimängu automaatne hindamine
Executive Par 3 golfimängu automaatne hindamine
Executive Par 3 golfimängu automaatne hindamine

Hiljuti postitasin Instructable'i lõbusa kaasaskantava mängu loomiseks, mida saab mängida nii sees kui väljas. Seda nimetatakse "Executive Par 3 golfimänguks". Kujundasin koopia tulemuskaardi, et registreerida iga mängija skoor 9 “augu” eest. Nagu päris golfis, võidab madalaim tulemus.

Hakkasin mõtlema; mis siis, kui saaksin tulemusi automaatselt jälgida?

Samm: golfipalli elektrooniline loendamine

Golfipalli elektrooniline loendamine
Golfipalli elektrooniline loendamine

Mul oli vaja leida viis veeretatud golfipalli loendamiseks, kui see kukkus läbi punktiaugu. Pidage meeles, et igal augul on erinev skooriväärtus, kusjuures „Ace“augul on madalaim punktiväärtus. Olen varasemates mängudes kasutanud infrapuna (IR) katkestusandureid ja arvasin, et lisan need ka sellesse mängu. Kasutasin Adafruit Industriesi toodet nimega “IR Break Beam Sensor - 3mm LEDs”. Toote ID on 2167:

www.adafruit.com/product/2167

Neid müüakse paarikaupa (emitter ja vastuvõtja) ning need pakuvad lihtsat viisi liikumise tuvastamiseks. Need töötavad üksteisest kuni 10 tolli kaugusel ja neid saab toita Arduino 5V toiteallikast. Saate neid kasutada koos Arduino sisseehitatud tõmbetakistiga, nii et eraldi takisti pole vaja. Emitter saadab välja infrapunakiire ja vastuvõtja, otse selle vastas, on selle IR -valguse suhtes tundlik. Kui tala läbib midagi tahket (näiteks golfipall), on tala katki ja vastuvõtja saab programmeerida teile sellest teada andma.

2. samm: andurite paigaldamine sihtlauale

Andurite paigaldamine sihtlauale
Andurite paigaldamine sihtlauale
Andurite paigaldamine sihtlauale
Andurite paigaldamine sihtlauale
Andurite paigaldamine sihtlauale
Andurite paigaldamine sihtlauale
Andurite paigaldamine sihtlauale
Andurite paigaldamine sihtlauale

Paigaldamise sihtlaud ei olnud ümbritseva kapi külge kinnitatud. See istus lihtsalt 2 ½”nurgakõrgusega vahekaugustel, nii et sain selle eemaldada ja andurite paigaldamiseks ümber pöörata. Mul oli vaja paigaldada infrapunaandurid vineerist mängulaua alumisele küljele, et need ei segaks golfipallide vabalangemist. Iga punktiava vastaskülgedele puuriti 1”läbimõõduga auk 3/8 tolli sügavusele. IR -vastuvõtja ja kiirgur asetati augu serva sisse, nii et pallid neid ei tabaks. Need paigaldati püsivalt väikese puidukruvi ja mõne epoksüliimiga, nii et need olid üksteise suhtes ideaalselt joondatud.

3. samm: andurite ühendamine sihtlaual

Andurite ühendamine sihtlaual
Andurite ühendamine sihtlaual
Andurite ühendamine sihtlaual
Andurite ühendamine sihtlaual

Kui IR -andurid olid kõik paigaldatud, tuli need ühendada ühise maa ja 5 V ühenduste jaoks. Iga väljundtraat (valge) tuli pikendada sihtplaadi servani. Iga juhtme külge kinnitati 6-juhtmeline pistik, et laiendada sihtplaadi komplekti tagumist kappi. Kogu juhtmestik kinnitati ja kinnitati kindlalt vastu mängulaua sisemust, et mitte segada golfipalli tagasitulekut, kui see läbib punktiaugu.

4. samm: tulemustabeli juhtumi loomine

Tulemustabeli juhtumi ehitamine
Tulemustabeli juhtumi ehitamine
Tulemustabeli juhtumi ehitamine
Tulemustabeli juhtumi ehitamine
Tulemustabeli juhtumi ehitamine
Tulemustabeli juhtumi ehitamine

Natuke puidutöötlemist oli selles juhendis veel vaja. Puidust ristkülikukujuline tulemustabeli ümbris valmistati ½”paksusest vineerist. Korpuse mõõtmed on 15 5/8 tolli lai x 9 ¼ tolli kõrge x 4 tolli sügav. Selle korpuse ehitamise järjekorda näete fotodel. Mõlema korpuse külje siseküljele paigutati umbes ¾ tolli samast välisservast ¼”lai dado soon. Seda soont kasutatakse tulemustabeli graafika hoidmiseks kahe 0,2 tolli paksuse pleksiklaasi vahel. Lõigatava korpuse viimane osa on elektrooniliste komponentide kinnitusplaat. See plaat lõigati 1/8 tolli paksusest vineerist ja kinnitati alusena ¾”männitüki külge täisnurga all. See toimib ka juhtumi enda külge kinnitamise vahendina. Laud tuli sälkuda, et see sobiks väikeste nurgatugede vahele.

Samuti on tulemustabeli korpusele paigaldatud sisse- ja väljalülitusnupp. See paigaldatakse korpuse välisküljele süvistatud asendisse, et kaitsta seda juhusliku löögi eest. Sisse-/väljalüliti ühendatakse vastavalt 9-voldise alalisvoolu akuallikaga, mis toidab Arduino Uno plaati ja kõiki teisi tulemustabeli elektroonilisi komponente.

5. samm: tulemustabeli graafika kujundamine

Tulemustabeli graafika kujundamine
Tulemustabeli graafika kujundamine

Selle asemel, et proovida tulemustabeli graafikat ise maalida, otsustasin kujundada selle PowerPointis ja lõigata erinevate punktinäidikute aknad välja. Tahtsin, et tulemustabel annaks mängijatele tagasisidet ja kuvaks võimalikult palju teavet. Kaasas oleks:

1. Eri värvi tuli viimase golfipalli skoori jaoks.

2. Ekraan, mis näitab, millist auku mängite (1–9).

3. Tuli, mis süttib, kui 2 mängija nuppu vajutada.

4. Uue mängu jaoks süttib tuli (Reset nuppu vajutati)

5. Kaks näidikut iga mängija skoori kohta.

Lõplik graafika on näidatud lisatud failis. Skooride kuvamiseks lõigatakse mustad ristkülikud välja.

6. samm: mängu sisendnupud (lülitid) ja ümbris

Mängu sisendnupud (lülitid) ja ümbris
Mängu sisendnupud (lülitid) ja ümbris
Mängu sisendnupud (lülitid) ja ümbris
Mängu sisendnupud (lülitid) ja ümbris
Mängu sisendnupud (lülitid) ja ümbris
Mängu sisendnupud (lülitid) ja ümbris

Puttamismängu voolu juhtimiseks oli vaja mõnda nuppu. Vajalik oli kolm sisestusnuppu:

1. Lähtesta või uus mäng (roheline)

2. 1 vs 2 mängijaga mäng (valge)

3. Double Bogey (Out-of-Bounds-Red)-kus IR-andurit kasutada ei saanud. Mängijate tulemusele lisandub skoor 5.

Ma kasutasin kolme arkaadnupu kinnitamiseks tavalist plastist elektroonilist ümbrist. Juhtum hangiti Amazonist. Selle mõõtmed on 7 ″ lai x 4 ¼ tolli pikk x 2 3/8 tolli sügav. Iga arkaadnupp koos selle külge kinnitatud mikrolülitiga toimib nagu hetkeline lüliti. Korpuse küljest lõigati ja ühtlaselt paigutatud standardsed augud, mille läbimõõt oli 1–1/8”. Nupud paigaldati ja väike juhtmestik valmistati mikrolülitite 3 väljundliini abil ja ühine maandusjoon joodeti väikese leivaplaadiga, millel oli 2,54 mm isast tihvtiga pistik.

7. samm: tulemustabeli komponendid

Tulemustabeli komponendid
Tulemustabeli komponendid
Tulemustabeli komponendid
Tulemustabeli komponendid
Tulemustabeli komponendid
Tulemustabeli komponendid

Tulemustabeli komponendid koosneksid:

A. Mängitava „augu” jälgimiseks kasutatakse iga mängija punktisumma jaoks kahte neljakohalist, 7-segmendilist LED-i ja ühekohalist, 7-segmendilist LED-i. 4-kohalised, 7-segmendilised LED-id on Adafruit Industriesilt. Neid nimetatakse „1,2” 4-kohalisest 7-segmendilisest ekraanist koos 12C seljakotiga-punane. Teil on vaja kahte neist ja toote ID on 1269. Vt allpool:

www.adafruit.com/product/1269

B. Ülisuur (1,3”) ühekohaline 7-segmendiline LED oli eBaylt üldine ost. Kõik ülegabariidilised kuvarid töötavad ja peavad olema õigesti ühendatud tavalise katoodi või ühise anoodipõhise 7-segmendi LED-iga. Ekraani paigaldamise lihtsustamiseks joodeti see esmalt piisavalt suurele leivaplaadile, nii et 220 oomi takistid saaksid joodetud kõigi üksikute LED -segmendi juhtmete külge. Ühine katoodijuhe ja 7 LED -juhet ühendati Arduino plaadiga ühendamise hõlbustamiseks 2,54 mm isast tihvtiga pistikuga.

C. Tulemustabelile pannakse erinevat värvi 3 vdc LED -tuled, mis valgustavad vastavat punktiauku, mille pahteldatud golfipall just läbis. Kasutasin ka LED-tulesid, et näidata, millal uus mäng on alanud ja millal on 2 mängija nuppu vajutatud. Värvid on:

Valge = äss

Sinine = lind

Kollane = Par

Punane = Bogey

Roheline = Lähtesta/uus mäng

Valge (allosas) = 1 vs 2 mängija

D. Erinevate komponentide juhtimiseks kasutati Arduino Atmega2560 plaati. Vajasin rohkem sisend-/väljundnõelu kui tavalist Arduino plaati.

E. Kõikidele näidikutele (4-kohaline, 7-segmendiline LED- ja LCD-ekraan) kulgevate I2C-liinide jaoks kasutati joodetud leivaplaadi jaotusplokki.

F. Toitejaotusplokk osteti Amazonilt. Seda kasutati kõigi 5 V ja ühiste maandusjuhtmete jaotamiseks igale komponendile. Vaata allpool:

www.amazon.com/gp/product/B081XTSDGV/ref=p…

G. Viimane vajalik komponent oli toitekaabliga 9-voldine aku.

H. Mitmesugused juhtmeühendused peavad ühendama erinevad komponendid omavahel

Samm: Arduino pingi seadistamine

Arduino pinki seadistamine
Arduino pinki seadistamine
Arduino pinki seadistamine
Arduino pinki seadistamine
Arduino pinki seadistamine
Arduino pinki seadistamine
Arduino pinki seadistamine
Arduino pinki seadistamine

Pingi ülesehitus on näidatud vastavatel piltidel. Pingil kasutati tõmbetugevaid nuppe, et jäljendada valgusvihu IR-andureid. Kasutan oma katsestendil muutujate jälgimiseks 4-realist LCD-monitori ja veendun, et tulemustabelit juhtiv kood töötab õigesti. Mulle meeldib seda kasutada jadamonitori asemel.

7-segmendilised LED-ekraanid on näidatud pingil, nii mängija 1 kui ka mängija 2 skoorinäidikud näitasid, et need töötavad õigesti. Pärast mõningast Arduino koodi redigeerimist suutsin ühekohalise „augu” ekraani õigesti tööle panna. Simuleeritud 2-mängija, uus mäng ja topelt-bogey hetkelised nupud ja viimased golfipalliga skooritud LED-tuled pandi leivaplaadile. Neid kõiki testiti ja näidati, et need töötavad õigesti.

Samuti on näidatud Arduino tihvtide määramise diagramm.

Samm: Arduino kood

Lisatud on Arduino kood mängu voo juhtimiseks ja tulemuste korrektseks liitmiseks.

Koodi esimene osa sisaldab mõningaid vajalikke raamatukogusid. Samuti määratleb see IR -andurite ja mängu juhtnuppude Arduino tihvtid, deklareerib kõik muutujad ja määratleb kaks kasutaja määratud funktsiooni. Üks funktsioon, seitsmeSegWrite (number), juhib ülemõõdulisel ühekohalisel 7-segmendilisel ekraanil kuvatavat numbrit („Auk”, mida mängite) ja teine funktsioon, juhtnupp (int), juhib, millist LED-i näidatakse (sisse lülitatud)) tulemustabelis.

Funktsioonis setup () määratlesin kõik OUTPUT ja INPUT kontaktid. Pange tähele, et kasutatakse sisemist PULLUP -takistit, mis kasutab sisemist 20 K oomi takistit, mis on tõmmatud 5 voldini. See paneb sisendi lugema HIGH, kui lüliti on avatud ja LOW, kui see on suletud. Lisatakistit pole vaja. Samuti käivitasin kõik muutujad ja 7-segmendilised numbrinäidikud ning lülitasin sisse “uue mängu” rohelise LED-tule.

Funktsioon loop () algab kõigi INPUT -kontaktide pideva lugemisega. Seejärel täidetakse konkreetne avaldus “kui”, sõltuvalt sellest, milline sisendtihv on LOW (nuppu on vajutatud või IR -anduri valgusvihk on katki). Viimane “kui” lause määratleb mängu lõpu. Kui 9 “auku” on mängitud, peatub loop () funktsioon ja mäng on läbi.

10. samm: komponentide paigaldamine

Komponentide paigaldamine
Komponentide paigaldamine
Komponentide paigaldamine
Komponentide paigaldamine
Komponentide paigaldamine
Komponentide paigaldamine

Esiteks tuli puurida augud ja väljalõiked paigalduslauale vastavalt asukohale, kus iga komponent asub tulemustabeli graafikul. LED -ide jaoks puuriti augud 5 mm läbimõõduga. Ristkülikukujulised augud lõigati mosaiigi abil, et need vastaksid erinevate 7-segmendiliste näidikute mõõtmetele.

Iga LED -tuli joodeti väikese leivalaua külge, mille takistus oli ühendatud positiivse klemmiga. Positiivse ja negatiivse klemmi jaoks kasutati standardseid 2,54 mm isast tihvtiga pistikuid. Leivalaud hõlbustas LED -i kinnitamist õhukese vineerist kinnitusplaadi külge. Iga LED -valgussõlm paigaldati kinnitusplaadile õigesse kohta. Nende kinnitamiseks kasutati väikeseid M1.7 läbimõõduga Phillipi peaga teraskruvisid.

Seejärel tuli iga 7-segmendiline ekraan kinnitada kinnitusplaadile. Paigaldusavasid ekraani trükkplaatide 4 nurgas kasutati samade väikeste kinnituskruvidega.

Arduino megaplaat, toitejaotusplokk ja I2C jaotusplokk kinnitati kinnitusplaadi aluse külge väikeste puidukruvide ja vahetükkidega. Kaks muud väikest leivaplaati kinnitati alusele paremal küljel 90 -kraadise nurga all. Need on IR -andurite sisendpoldid, mis tuleb ühendada sihtmärgikoost, ja mängujuhtimispuldi arkaadnupud, mille mängija (d) asetab.

9-voldine aku ja selle rakmed kinnitati kinnitusplaadi siseküljele. Kaabli positiivne külg ühendatakse puidust tulemustabeli korpuse sisse/välja lülitiga.

Lõpuks ühendati kõik komponendid, järgides pingilahenduses täiustatud juhtmestikku.

11. samm: pange see kõik kokku

Kõike kokku panema
Kõike kokku panema
Kõike kokku panema
Kõike kokku panema
Kõike kokku panema
Kõike kokku panema

Viimane samm oli tabloo kinnitamine olemasolevale Executive Par 3 golfimängule nii, et see ei segaks mängu mängimist. Samuti oleks kõik tulemustabeli kinnitussüsteemid eemaldatavad, nii et need saaks kokku pakkida ega takistaks mängu teisaldamist. Samamoodi pidin tegema nupukasti jaoks aluse, nii et see ei toetuks maapinnale ja asus mängijatele lähemale.

Palun vaadake lisatud fotosid. Tulemustabeli korpuse ja nööbikarbi õigele tasemele tõstmiseks kasutati 7/8”läbimõõduga tüüblit. Kolm tüüblit lõigati 24”pikkuseks. Ühe tüübli vastuvõtmiseks valmistati vineerist alus, mille keskele puuriti 7/8”auk. Plastnööbikarbi tagaküljele kinnitati vastav männipuidust tükk. Selle põhja oli puuritud ka 7/8”auk tüübli teise otsa vastuvõtmiseks. Nüüd sai nuppude ümbrise alus valmis. Liimi ei kasutata. Alus on piisavalt tugev, et seda mängu ajal kasutada, kuid seda saab transportimiseks kergesti lagundada.

Tulemustabel kinnitati sama kontseptsiooni abil sihtplaadi komplekti külge. Üks 15 -tollise männitüki pind lõigati 60 -kraadise nurga alla, et see vastaks sihtmärgi 30 -kraadisele nurgale, kui see on mängimiseks seadistatud. See asetab plaadi ülaosa horisontaalselt. Kaks 7/8”auku puuriti üksteisest 11” kaugusele, et võtta vastu 24 -tollised tüüblid ja seejärel kruviti tükk sihtmärgi tagaküljele. Järgmisena keerati tulemustabeli korpuse põhja külge ¾ -tollise männiga jääk, mille külge puuriti üksteisest 11/8 tolli läbimõõduga augud. Kaks tüüblit paigutati läbi piiridevälise võrgu ja lükati paika nii sihtplaadi koostule kui ka tulemustabeli korpuse põhja.

4-juhtmeline kaabel koos vastavate meessoost pistikutega viidi tulemustabeli tagant nööpkarbini. Teine 6-juhtmeline kaabel koos vastavate naissoost ja isaspistikutega viidi sihtmärgi (IR-andurid) tagaküljest vastavasse kohta tulemustabeli tagaküljel. Nüüd oli elektrooniline seadistus valmis automaatseks punktiarvestuseks, mängides Executive Par 3 Golf Gme ühe või kahe mängija versiooni.

12. samm: järelsõna

Järeltekst
Järeltekst
Järeltekst
Järeltekst
Järeltekst
Järeltekst
Järeltekst
Järeltekst

Mängu katsetades märkasin, et läbi palliaugu kukkuvat golfipalli ei arvestatud alati. Mõtlesin, kas infrapunaandurid töötavad õigesti või pean ma rohkem andureid paigaldama. Siis tuli mulle pähe, et 3 ½”läbimõõduga augu paremal ja vasakul küljel ei näinud golfipalli löögiava keskele paigutatud IR -andurid (IR -kiir polnud on katki). Leidsin, et reguleeriva golfipalli läbimõõt on 1,68 tolli. Matemaatilises mõttes oleks pool 3 ½”läbimõõduga august 1,75 tolli. Nii et ma arvan, et see on võimalik, kui golfipall kukub vasakust ja paremast servast läbi augu ega purusta infrapunakiiri.

Tagantjärele mõeldes oleksin pidanud punktiavad lõikama 3”läbimõõduga. Kuid selle mängu puhul oli lihtsaim viis selle parandamiseks sihtplaadi ümberpööramine ja iga augu vasakule ja paremale küljele üleliigse vinüülpõrandakate paigaldamine. Paigutasin painduva vinüüli nii, et see kattuks augu ½ tolli võrra. Kui keerate sihtlaua tagasi, näete, et materjal on augu servast allpool ega takista golfipalli vabalt läbi augu kukkumist.

See lahendas probleemi ja mäng töötas ideaalselt. Viimastel nädalatel mängu mängides ei ole ma märganud ühtegi juhtumit, kus golfipallid poleks mängija skooris õigesti arvesse võetud.

Soovitan: