Innholdsfortegnelse:

Arduino sjakkur: 6 trinn
Arduino sjakkur: 6 trinn

Video: Arduino sjakkur: 6 trinn

Video: Arduino sjakkur: 6 trinn
Video: Часы шахматные брак 2024, Juli
Anonim
Arduino sjakkur
Arduino sjakkur

Jeg kunne ikke finne instruksjoner om en god Arduino sjakkur, så i stedet bygde jeg min egen som jeg vil beskrive her.

Trinn 1: Deleliste

Deleliste
Deleliste

her er tingene du trenger: Arduino nano (eller en hvilken som helst arduino UNO -type vil gjøre) loddejernlodd PCB -kort eller verokort 2 doble AA -batteriholdere 3 X 10k OHM -motstander sikringsholder 2 X jordpinner fra 2 UK -plugger 2 X 4 siffer 7-segmenter viser summer 1 vippebryter 1 knapp liten (trykk for å lage type) USB 1-kabel (eller hva som passer i din Arduino) mikrofonbeslag og muttere bolter. For dette bød jeg og vant et meccano -sett på ebay og brukte det jeg fant Casing (valgfritt) brødbrett og startkabler (valgfritt, men anbefalt å prototype det første) gang, god tid! Jeg la ved et bilde, men dette var fra reservedelene mine etter min konstruksjon, så noen komponenter mangler som nevnt.

Trinn 2: Prototyping

Prototyping
Prototyping
Prototyping
Prototyping

Hele prosjektet kan deles inn i disse delene: 1. få kretsen riktig 2. programmet 3. den fysiske oppsettet Dette trinnet er valgfritt siden jeg vil gi deg kretsdiagrammet, men jeg anbefaler på det sterkeste at du prøver det i en brødbrett først, da det vil bekrefte (eller ikke) at du har alle delene du trenger og lar deg tenke på den fysiske utformingen av alle brikkene for et hus eller en base. Jeg har vedlagt et bilde av prototypen min i et brødbrett og også et kretsdiagram. Noen notater om kretsen: 1. Øverst til venstre i kretsdiagrammet viser pinnen på displayet som er koblet til segmentet (katoder) eller sifferet (anoder). 2. Du vil merke at segmentene (katodene) er koblet til det respektive segmentet på den andre skjermen for hver skjerm. Dette er fordi displayet er multiplekset for å vise de riktige sifrene 3. tilbakestillingsbryteren og vippekabelen er koblet til nedtrekksmotstander for å holde inngangen LAV når den respektive knappen ikke er trykket inn. se https://www.arduino.cc/en/tutorial/button for mer informasjon om dette. 4. strømkretsen er helt atskilt, men enkel. Det er 4 AA -batterier i serie med en bryter som er loddet inn i de røde og svarte ledningene til en kuttet USB -kabel. USB -kabelen går deretter inn i arduinoen.

Trinn 3: Programmet

Programmet
Programmet
Programmet
Programmet

Når du har det på et brødbrett, må du skrive kontrolleren. Heldigvis for deg har jeg lagt ved koden min her, men jeg vil oppfordre deg til å prøve eller justere denne koden. Hvis du skal skrive det fra bunnen av, regner du først ut hvilke pinner du skal sette til hva du skal lage alle de 10 sifrene, jeg har deretter kodet ytterligere 2 mønstre, ett for når tiden er tom og en for å representere 10 i en enkelt siffer (se bildet). Det neste trinnet er å multiplexere sifrene, slik at du potensielt kan vise et annet tall eller mønster på hver av de 8 sifrene. Jeg justerte hastigheten på multipleksingen til den så riktig ut, for fort og tallene smelter mellom sifrene i nærheten og for sakte og det blotte øye kan legge merke til multiplexingen. Det neste trinnet er å telle tallene ned som 2 sett med 4 tall som representerer 2 nedtellingen. Jeg valgte å bruke det første sifferet i minutter, de neste 2 i sekunder og det siste i tiendedeler av sekunder, men du kan velge å ha 2 i minutter og 2 i sekunder. Nedtellingen kan kalibreres med en enkel sløyfe som ikke gjør noe, slik at et kryss på et sekund på displayet faktisk er et ekte sekund. Jeg fikk min ganske nær, men jeg skjønte at det ikke spiller så stor rolle for et uformelt sjakkspill hvis hvert spill har samme antall enheter. Jeg antar at du kanskje vil gjøre det mer nøyaktig hvis du vil bruke sjakkuret ditt til en turnering eller til og med å sette et egg! Klokken lastes inn i tilbakestillingsmodus når den slås på. Deretter venter det på at rockerne skal bli truffet på hver side og teller ned fra (standard) 5 minutter. Koden lytter til tilbakestillingsknappen når vippebryteren er balansert. hvis den blir truffet, går klokken i reset -modus igjen. På dette tidspunktet kan tilbakestillingsknappen brukes til å bla gjennom minuttene som er ønsket for hvert spill fra 1 til 10. Når ønsket tid vises, kan vipperen slås igjen for å starte klokken. Til slutt trenger du det for å gjøre noe for å indikere at tiden er ute i mitt tilfelle, den viser alle streker (-) og spiller en serie pip, så viser den ene siden som 0000 (taperen) og den andre siden som uansett tidspunkt var ubrukt av vinneren.

Trinn 4: Fysisk bygg

Fysisk oppbygning
Fysisk oppbygning

Den neste fasen er den fysiske bygningen. Vippebryter Det første stykket er å bygge vippebryteren. Denne bryteren må lukke en av to tilkoblinger, men aldri begge. Den må også være i stand til å balansere i midten der den lukker ingen av forbindelsene. Dette stopper klokken. Her brukte jeg en liten lengde av tre og skrudde en britisk slipestift i hver ende. Deretter bygges en pivot i midten for å heve vipperen av brettet. Igjen brukte jeg ebay meccano mye for denne biten. Når vipperen er montert på brettet, må jordpinnene gå inn i sikringsholderklemmene for å lukke tilkoblingen. For å få dette til å få en jevn følelse, filet jeg ned kantene på bakkenålene, slik at det lett kunne gå inn i sikringsholderen (se bildet). Layout monterte jeg først de tomme kretskortene på et perspex -ark med et mellomrom for vippens sving bytte om. Deretter tok jeg den av igjen og loddet komponentene og ledde inn med samme gap. Hvis du ikke gjør dette, kan det være vanskelig å bolt de resulterende brettene tilbake på basispunktet. Tegn oppsettet først på papir og husk: - hvor høy oppsiden av hver vippebryter vil være for huset - noen komponenter som batteriholdere og Arduino USB -port må være tilgjengelige etter fullføring - Hvis brytere skal monteres på et lokk på huset, og koble deretter ledningene med kontakter slik at lokket kan fjernes helt. (min har bare et hengsel, men jeg gjorde dette uansett) - Jeg vippet 7 -segmenters skjermer ved å forlenge pinnene på den ene siden med sikringskabel som gjør at den siden kan sitte høyere ut av brettet Bolig Jeg hadde planlagt å bygge et tilpasset hus, men til slutt hadde jeg ikke nok tid, og perspexen er vanskelig å kutte, så jeg kjøpte en eske som var omtrent like stor som jeg trengte og endret den litt. Jeg synes det er bra å ha et gjennomsiktig kabinett, slik at arbeidet kan sees, men sørg for at batteriene og USB -porten er tilgjengelige for programjusteringer. Det er det ha det gøy og lykke til!

Trinn 5: Andre alternativer …

Mulige forbedringer eller alternativer: - spill en annen sekvens av pip, avhengig av hvilken side som vinner - spill en melodi ved ferdigstillelse Jeg tror dette er mulig med de analoge pinnene og en passende summer. - forskjellige offisielle sjakktimingsmønstre (for eksempel legge til tid for hvert spill som spilles) - bruk det 7 segmentet til å være 2 sifre i minutter og 2 i sekunder

Trinn 6: Oppdatering for 2019

2019 oppdatering!
2019 oppdatering!
2019 oppdatering!
2019 oppdatering!
2019 oppdatering!
2019 oppdatering!

så jeg kom tilbake til min første Instructable og gjorde denne sjakkklokken igjen!

Jeg fulgte de samme trinnene mer eller mindre, men med følgende forbedringer:

Fysisk oppbygning

  • Hele bygget er mer kompakt og på en trebase (se bilder)
  • Byttet til et enkelt 9v batteri koblet direkte til VIN og GND med en bryter
  • Vippebryteren er meccanno hvor hver side holdes nede når den presses av supersterke magneter.

Kode

Jeg har også forbedret koden som er vedlagt her. forbedringer er:

  • Droppet visningen på 10 av et sekund og flyttet sifrene til høyre
  • Lagt til trinn. Lagt til 5 minutter pluss 5 sekunder per/bevegelse og 10 minutter pluss 5 sekunder per/trekk som alternativer

Lagt til en kupé med linjer for å bytte display (L R) hvis du finner ut etter at bygningsbryteren ikke starter riktig klokke

Krets

Anbefalt: