Inhoudsopgave:

Automatisch scoren voor het Executive Par 3 golfspel - Ajarnpa
Automatisch scoren voor het Executive Par 3 golfspel - Ajarnpa

Video: Automatisch scoren voor het Executive Par 3 golfspel - Ajarnpa

Video: Automatisch scoren voor het Executive Par 3 golfspel - Ajarnpa
Video: FLEMMING - Paracetamollen (Official video) 2024, Juli-
Anonim
Automatisch scoren voor het Executive Par 3 golfspel
Automatisch scoren voor het Executive Par 3 golfspel
Automatisch scoren voor het Executive Par 3 golfspel
Automatisch scoren voor het Executive Par 3 golfspel

Ik heb onlangs een Instructable gepost over het bouwen van een leuk putspel dat draagbaar is en zowel binnen als buiten kan worden gespeeld. Het wordt "Executive Par 3 Golf Game" genoemd. Ik ontwierp een replica-scorekaart om de score van elke speler voor 9 "holes" vast te leggen. Net als bij echt golf wint de laagste score.

Ik begon te denken; wat als ik scores automatisch kon bijhouden?

Stap 1: De golfbal elektronisch tellen

Elektronisch tellen van de golfbal
Elektronisch tellen van de golfbal

Ik moest een manier vinden om een opgerolde golfbal te tellen die door een scorend gat viel. Onthoud dat elke hole een andere scorewaarde heeft, waarbij de "Aas" -hole de laagste puntwaarde heeft. Ik heb infrarood (IR) break-beam-sensoren in eerdere games gebruikt en dacht dat ik ze ook in deze game zou opnemen. Ik heb een product van Adafruit Industries gebruikt, een "IR Break Beam Sensor - 3 mm LED's". De product-ID is 2167:

www.adafruit.com/product/2167

Ze worden per paar verkocht (zender en ontvanger) en bieden een eenvoudige manier om beweging te detecteren. Ze werken tot 10 inch uit elkaar en kunnen worden gevoed door de Arduino 5V-voeding. Je kunt deze gebruiken met de Arduino ingebouwde pull-up weerstand, dus een aparte weerstand is niet nodig. De zender zendt een IR-straal uit en de ontvanger, direct daar tegenover, is gevoelig voor dit IR-licht. Als er iets stevigs door de straal gaat (zoals een golfbal), wordt de straal verbroken en kan de ontvanger worden geprogrammeerd om u dit te laten weten.

Stap 2: De sensoren op het doelbord installeren

De sensoren op het doelbord installeren
De sensoren op het doelbord installeren
De sensoren op het doelbord installeren
De sensoren op het doelbord installeren
De sensoren op het doelbord installeren
De sensoren op het doelbord installeren
De sensoren op het doelbord installeren
De sensoren op het doelbord installeren

Het putbord was niet bevestigd aan de omringende kast. Het zat gewoon op 2 ½ afstandhouders op hoekhoogte, dus ik kon het verwijderen en omdraaien om de sensoren te monteren. Ik moest de IR-sensoren aan de onderkant van het multiplex speelbord monteren, zodat ze het vrije vallen van de golfballen niet zouden hinderen. Aan weerszijden van elk kerfgat werd een gat met een diameter van 1 inch geboord tot een diepte van 3/8 inch. De IR-ontvanger en zender werden net binnen de rand van het gat geplaatst, zodat de ballen ze niet zouden raken. Ze waren permanent gemonteerd met een kleine houtschroef en wat epoxylijm, zodat ze perfect tegenover elkaar waren uitgelijnd.

Stap 3: Bedrading van de sensoren op het doelbord

Bedrading van de sensoren op het doelbord
Bedrading van de sensoren op het doelbord
Bedrading van de sensoren op het doelbord
Bedrading van de sensoren op het doelbord

Nadat de IR-sensoren allemaal waren gemonteerd, moesten ze met elkaar worden verbonden voor de gemeenschappelijke aarde- en 5V-verbindingen. Elke uitgangsdraad (wit) moest worden verlengd tot aan de rand van het doelbord. Een 6-draads vrouwelijke connector werd aan elke draad bevestigd om uit de achterste kast van de doelkaart te komen. Alle bedrading was vastgespijkerd en stevig tegen de binnenkant van het bord bevestigd om de terugkeer van een golfbal niet te hinderen als deze eenmaal door een scoringsgat is gegaan.

Stap 4: De scorebordcase bouwen

De scorebordcase bouwen
De scorebordcase bouwen
De scorebordcase bouwen
De scorebordcase bouwen
De scorebordcase bouwen
De scorebordcase bouwen

Een beetje houtbewerking was nog steeds nodig in deze Instructable. Een houten rechthoekige scorebordbehuizing werd vervaardigd uit ½ "dik multiplex. De afmetingen van de koffer zijn 15 5/8" breed x 9 ¼" hoog x 4" diep. U kunt op de foto's de volgorde van het bouwen van deze koffer zien. Een ¼" brede dado-groef werd aan de binnenkant van elke kant van de behuizing geplaatst, ongeveer ¾" vanaf dezelfde buitenrand. Deze groef wordt gebruikt om de grafische score op het scorebord vast te houden tussen twee vellen plexiglas van 0,2 inch dik. Het laatste deel van de behuizing dat moet worden gesneden, is de montageplaat voor elektronische componenten. Dit bord is gesneden uit 1/8" dik multiplex en bevestigd aan een stuk ¾" grenen in een rechte hoek om als basis te dienen. Het zal ook dienen als een hechtingsmiddel aan de zaak zelf. Het bord moest worden ingekeept om tussen de kleine hoekverstevigingsstukken te passen.

Er zou ook een aan / uit-knop op de behuizing van het scorebord worden gemonteerd. Het wordt aan de buitenkant van de behuizing gemonteerd in een verzonken positie om te voorkomen dat deze per ongeluk wordt geraakt. De aan/uit-schakelaar wordt aangesloten op een 9-volt DC-batterijbron die het Arduino Uno-bord en alle andere elektronische componenten van het scorebord van stroom voorziet.

Stap 5: De grafische scorebord ontwerpen

De grafiek van het scorebord ontwerpen
De grafiek van het scorebord ontwerpen

In plaats van zelf een scorebordafbeelding te schilderen, besloot ik er een in PowerPoint te ontwerpen en vensters uit te knippen voor de verschillende scoreweergaven. Ik wilde dat het scorebord feedback zou geven aan de spelers en zoveel mogelijk informatie zou weergeven. Inbegrepen zou zijn:

1. Een andere kleur licht voor de score van de laatst gegooide golfbal.

2. Een display die laat zien welke hole je speelt (1-9).

3. Een lampje dat gaat branden als de 2-speler-knop wordt ingedrukt.

4. Er gaat een lampje branden voor een nieuw spel (Reset-knop is ingedrukt)

5. Twee displays voor de score van elke speler.

De uiteindelijke afbeelding wordt weergegeven in het bijgevoegde bestand. De zwarte rechthoeken worden uitgesneden voor de scoreweergaven.

Stap 6: Game-invoerknoppen (schakelaars) en behuizing

Spelinvoerknoppen (schakelaars) en behuizing
Spelinvoerknoppen (schakelaars) en behuizing
Spelinvoerknoppen (schakelaars) en behuizing
Spelinvoerknoppen (schakelaars) en behuizing
Spelinvoerknoppen (schakelaars) en behuizing
Spelinvoerknoppen (schakelaars) en behuizing

Er waren een paar knoppen nodig om de stroom van het putspel te regelen. De drie benodigde invoerknoppen waren:

1. Reset of nieuw spel (groen)

2. 1 vs 2-speler spel (wit)

3. Double Bogey (Out-of-Bounds - Rood) – waar geen IR-sensor kan worden gebruikt. Een score van 5 zou worden toegevoegd aan de spelersscore.

Ik gebruikte een standaard plastic elektronische behuizing om de 3 arcade-knoppen te monteren. De zaak werd verkregen van Amazon. Het meet 7 ½ "breed x 4 ¼" hoog x 2 3/8" diep. Elke arcade-knop met zijn bijgevoegde microschakelaar werkt als een tijdelijke schakelaar. Standaardgaten met een diameter van 1-1/8” werden in de zijkant van de behuizing gesneden en gelijkmatig verdeeld. De knoppen werden gemonteerd en een kleine kabelboom werd gefabriceerd met de 3 uitgangslijnen van de microschakelaars en een gemeenschappelijke aardingslijn gesoldeerd op een klein breadboard met een mannelijke connector van 2,54 mm.

Stap 7: Scorebordcomponenten

Scorebordcomponenten
Scorebordcomponenten
Scorebordcomponenten
Scorebordcomponenten
Scorebordcomponenten
Scorebordcomponenten

De componenten van het scorebord zouden bestaan uit:

A. Twee 4-cijferige, 7-segments LED's voor de score van elke speler en een enkelcijferige, 7-segments LED zouden worden gebruikt om de "hole" die ze spelen te volgen. De 4-cijferige, 7-segments LED's zijn van Adafruit Industries. Ze heten "1.2" 4-cijferig 7-segments display met 12C-rugzak - rood". Je hebt er twee nodig en de product-ID is 1269. Zie hieronder:

www.adafruit.com/product/1269

B. De extra grote (1,3 inch) eencijferige 7-segments LED was een generieke aankoop van eBay. Elk extra groot scherm zal werken en moet correct worden aangesloten voor een gemeenschappelijke kathode of gemeenschappelijke anode op basis van 7-segments LED. Om de montage van het display te vereenvoudigen, werd het eerst op een breadboard gesoldeerd dat groot genoeg was, zodat weerstanden van 220 ohm konden worden gesoldeerd aan alle afzonderlijke led-segmentdraden. De gemeenschappelijke kathodekabel en de 7 LED-kabels waren verbonden met een mannelijke 2,54 mm-penkopconnector voor eenvoudige bedrading naar het Arduino-bord.

C. Er zullen 3 vdc LED-lampjes in verschillende kleuren op het scorebord worden geplaatst om het corresponderende scoregat te verlichten waar de geputte golfbal net doorheen is gegaan. Ik heb ook LED-lampjes gebruikt om aan te geven wanneer een nieuw spel wordt gestart en wanneer de knop voor 2 spelers is ingedrukt. De kleuren zijn:

Wit = Aas

Blauw = Vogeltje

Geel = Par

Rood = Bogey

Groen = Reset/Nieuw spel

Wit (onderaan) = 1 vs. 2 Speler

D. Een Arduino Atmega2560-bord werd gebruikt om de verschillende componenten aan te sturen. Ik had meer input/output-pinnen nodig dan een standaard Arduino-bord.

E. Een gesoldeerd breadboard-distributieblok werd gebruikt voor de I2C-lijnen die naar alle displays liepen (4-cijferige, 7-segmenten LED en LCD-monitor).

F. Er is een stroomverdeelblok gekocht bij Amazon. Dit werd gebruikt om alle 5V- en gemeenschappelijke aardelijnen naar elk onderdeel te distribueren. Zie onder:

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

G. Het laatste onderdeel dat nodig was, was een 9 volt batterij met een stroomkabel.

H. Diverse draadconnectoren moeten de verschillende componenten met elkaar verbinden

Stap 8: Arduino-bankopstelling

Arduino-bankopstelling
Arduino-bankopstelling
Arduino-bankopstelling
Arduino-bankopstelling
Arduino-bankopstelling
Arduino-bankopstelling
Arduino-bankopstelling
Arduino-bankopstelling

De bankopstelling wordt getoond in de bijbehorende afbeeldingen. Op de bank werden pull-up-knoppen gebruikt om de break-beam IR-sensoren na te bootsen. Ik gebruik een 4-regelige LCD-monitor op mijn testbank om variabelen bij te houden en ervoor te zorgen dat de code die het scorebord bestuurt correct werkt. Ik gebruik dit graag in plaats van de seriële monitor.

De 7-segments LED-displays worden weergegeven op de bank, zowel de speler 1- als de speler 2-score-displays bleken correct te werken. Na wat bewerking van de Arduino-code, was ik in staat om het eencijferige "gat" -display correct te laten werken. De gesimuleerde 2-speler, nieuw spel en dubbele bogey momentele drukknoppen en laatste golfbal gescoorde LED-lampjes werden op het breadboard geplaatst. Ze werden allemaal getest en bleken correct te werken.

Het Arduino-pintoewijzingsschema wordt ook getoond.

Stap 9: Arduino-code

De Arduino-code om de stroom van het spel te regelen en de scores correct op te tellen, is bijgevoegd.

Het eerste deel van de code bevat enkele van de vereiste bibliotheken die u nodig hebt. Het definieert ook de Arduino-pinnen voor de IR-sensoren en de spelbesturingsknoppen, verklaart alle variabelen en definieert twee door de gebruiker gedefinieerde functies. De ene functie, sevenSegWrite(digit), regelt het nummer dat wordt weergegeven in het extra grote, eencijferige 7-segments display ("Hole" dat u aan het spelen bent) en de andere functie, controlscoreled(int), bepaalt welke LED wordt weergegeven (aan) op het scorebord.

In de setup()-functie heb ik alle OUTPUT- en INPUT-pinnen gedefinieerd. Let op, de interne PULLUP-weerstand wordt gebruikt die een interne 20K ohm-weerstand gebruikt die op 5 volt wordt getrokken. Dit zorgt ervoor dat de ingang HOOG aangeeft wanneer de schakelaar open is en LAAG wanneer deze gesloten is. Er is geen extra weerstand nodig. Ik heb ook alle variabelen en 7-segment cijferdisplays geïnitieerd en het groene LED-lampje van het "nieuwe spel" aangezet.

De loop()-functie begint met het constant lezen van alle INPUT-pinnen. Vervolgens wordt een specifieke "if" -opdracht uitgevoerd, afhankelijk van welke invoerpin LAAG aangeeft (de knop is ingedrukt of de IR-sensorstraal is verbroken). De laatste "if"-verklaring definieert het einde van het spel. Zodra 9 "holes" zijn gespeeld, stopt de functie loop() en is het spel afgelopen.

Stap 10: De componenten monteren

De componenten monteren
De componenten monteren
De componenten monteren
De componenten monteren
De componenten monteren
De componenten monteren

Eerst moesten boorgaten en uitsnijdingen in het montagebord worden geplaatst overeenkomstig de locatie die elk onderdeel inneemt op de grafische score op het scorebord. Er werden gaten geboord met een diameter van 5 mm om overeen te komen met de LED's. Rechthoekige gaten werden gesneden met een decoupeerzaag om overeen te komen met de afmetingen van de verschillende 7-segment displays.

Elk LED-lampje werd op een klein breadboard gesoldeerd met een weerstand die op de positieve pool was aangesloten. Standaard 2,54 mm mannelijke pin-head connectoren werden gebruikt voor de positieve en negatieve terminals. Het breadboard maakte het gemakkelijker om de LED op de dunne montageplaat van multiplex te bevestigen. Elke LED-lichteenheid werd op de juiste locatie op de montageplaat gemonteerd. Om ze vast te zetten werden kleine M1.7-diameter stalen kruiskopschroeven gebruikt.

Vervolgens moest elk 7-segments display op het montagebord worden bevestigd. Montagegaten op de 4 hoeken van de display-printplaten werden gebruikt met dezelfde kleine montageschroeven.

Het Arduino-megabord, het stroomverdeelblok en het I2C-verdeelblok werden met kleine houtschroeven en afstandhouders aan de basis van de montageplaat bevestigd. Twee andere kleine breadboards werden aan de rechterkant in een hoek van 90 graden aan de basis bevestigd. Dit zijn de ingangspinnen voor de IR-sensoren die moeten worden aangesloten vanaf de doeleenheid en de arcade-knoppen van de spelbesturingskast die door de speler(s) worden geplaatst.

Een 9-volt batterij en het harnas werden aan de binnenkant van de montageplaat bevestigd. De positieve kant van de kabel wordt verbonden met de aan/uit-knop op de houten scorebordbehuizing.

Ten slotte werden alle componenten aangesloten, volgens het bedradingsschema dat geperfectioneerd was op de bankopstelling.

Stap 11: Alles samenbrengen

Alles bij elkaar zetten
Alles bij elkaar zetten
Alles bij elkaar zetten
Alles bij elkaar zetten
Alles bij elkaar zetten
Alles bij elkaar zetten

De laatste stap was om het scorebord zo aan het bestaande Executive Par 3 Golfspel te bevestigen dat het het spelen van het spel niet hinderde. Ook zou elk bevestigingssysteem voor een scorebord verwijderbaar zijn, zodat het kan worden verpakt en de draagbaarheid van het spel niet wordt belemmerd. Op dezelfde manier moest ik een tribune maken voor de buttonbox, zodat deze niet op de grond rustte en dichter bij de plek stond waar de spelers aan het putten waren.

Kijk a.u.b. naar de bijgevoegde foto's. Deuvels met een diameter van 7/8” werden gebruikt om de scorebordbehuizing en de knopbehuizing op het juiste niveau te brengen. Drie deuvels werden op een lengte van 24 inch gesneden. Een multiplex basis met een 7/8 "gat geboord in het midden werd gefabriceerd om een van de pluggen te accepteren. Een bijbehorend stuk grenenhout was aan de achterkant van de plastic knopenkast bevestigd. Het had ook een 7/8 "gat in de bodem geboord om het andere uiteinde van de plug te accepteren. Nu was de knopenkaststandaard compleet. Er wordt geen lijm gebruikt. De standaard is stevig genoeg om te gebruiken tijdens het spelen van het spel, maar kan gemakkelijk worden afgebroken voor transport.

Het scorebord werd met hetzelfde concept aan het doelbord bevestigd. Een oppervlak van een 15-inch lang stuk grenen bord werd in een hoek van 60 graden gesneden om overeen te komen met de hoek van 30 graden van het doelwit wanneer het werd opgesteld om te spelen. Dit plaatst de bovenkant van dit bord horizontaal. Twee 7/8" gaten werden 11" uit elkaar geboord om de 24" lange pluggen te accepteren en vervolgens werd het stuk aan de achterkant van het doelsamenstel geschroefd. Vervolgens werd een stuk schroot van ¾ "denkgrenen op de bodem van de scorebordbehuizing geschroefd met bijpassende gaten met een diameter van 7/8" die 11" uit elkaar waren geboord. De twee deuvels werden door het out-of-bounds-net geplaatst en op hun plaats geduwd op zowel het doelbord als de onderkant van de scorebordbehuizing.

Een 4-aderige kabel met de bijbehorende mannelijke connectoren liep van de achterkant van het scorebord naar de knopbehuizing. Een tweede 6-aderige kabel met de bijbehorende vrouwelijke en mannelijke connectoren werd vanaf de achterkant van de doeleenheid (IR-sensoren) naar de overeenkomstige locatie op de achterkant van het scorebord geleid. Nu was de elektronische set-up compleet voor automatisch scoren tijdens het spelen van een versie voor één of twee spelers van de Executive Par 3 Golf Game.

Stap 12: Naschrift

naschrift
naschrift
naschrift
naschrift
naschrift
naschrift
naschrift
naschrift

Toen ik het spel uittestte, merkte ik dat een golfbal die door een scorend gat viel, niet altijd werd geteld. Ik vroeg me af of de IR-sensoren correct werkten of dat ik meer sensoren zou moeten installeren. Toen bedacht ik me dat aan de uiterste rechter- en linkerkant van het gat met een diameter van 3 ½” de golfbal niet werd “gezien” door de IR-sensoren die precies in het midden van het scoregat waren geplaatst (de IR-straal werd niet kapot zijn). Ik ontdekte dat de diameter van een gereguleerde golfbal 1,68 inch is. In wiskundige termen zou de helft van een gat met een diameter van 3 ½ 1,75 inch zijn. Dus ik denk dat het mogelijk is waar de golfbal van de uiterste linker- en rechterkant door het gat valt en de IR-straal niet breekt.

Achteraf gezien had ik de voorritsgaten op een diameter van 3 inch moeten snijden. Maar voor dit spel was de eenvoudigste manier om dit op te lossen, het doelbord om te draaien en wat overtollige vinylvloerranden aan de linker- en rechterkant van elk gat te installeren. Ik heb het flexibele vinyl zo geplaatst dat het het gat ongeveer ½ of zo overlapt. Wanneer u het doelbord omdraait, zult u zien dat het materiaal zich onder de rand van het gat bevindt en de golfbal niet hindert die vrij door het gat valt.

Dit loste het probleem op en het spel werkte perfect. Bij het spelen van het spel de afgelopen weken, heb ik geen enkel geval opgemerkt waarin de golfballen niet correct werden geteld in de score van de speler.

Aanbevolen: