Innholdsfortegnelse:

USB -tastatur joystick: 5 trinn
USB -tastatur joystick: 5 trinn

Video: USB -tastatur joystick: 5 trinn

Video: USB -tastatur joystick: 5 trinn
Video: don't move!!!!!! #squidgame 2024, November
Anonim
USB -tastatur joystick
USB -tastatur joystick
USB -tastatur joystick
USB -tastatur joystick
USB -tastatur joystick
USB -tastatur joystick
USB -tastatur joystick
USB -tastatur joystick

Det er enkelt å lage egendefinerte USB -tastatur- og musekontrollere.

Jeg bruker noen hurtigtaster når jeg vurderer bilder i Adobe Lightroom, og fant ut at jeg kan være enda raskere med en enkel spillkontroll -joystick. Jeg hånet det på et brødbrett med to komponenter jeg allerede hadde på verkstedet mitt og fant ut at det fungerte bra, men det trengte et bedre "skap" for at det skulle leve på skrivebordet mitt.

Fordi det er Arduino -basert, er det enkelt å tilpasse joystickfunksjonene og legge til flere knapper, ringer eller andre kontroller.

Det er tre seksjoner i dette prosjektet:

  • Maskinvare
  • Programvare
  • Skrivebord-verdig sak for å holde den nevnte maskinvaren

Deler

  • Arduino - 5v 16MHz Itsy Bitsy fra Adafruit. Mange andre Arduinos vil fungere fint, men sørg for at USB -en deres kan fungere med tastatur- og musebibliotekene.
  • Joystick - Spillkontroller stil 2 -akse med bryter (her er en pakke med ti: WGCD 10pcs Joystick Breakout Module Game Controller for Arduino PS2).
  • Tre eller akryl for etui. Kanskje litt maling.
  • Ledning og en USB -kabel.

Trinn 1: Maskinvare

Maskinvare
Maskinvare
Maskinvare
Maskinvare
Maskinvare
Maskinvare

Arduino

Jeg ønsket å bruke et lite Arduino -brett for å holde denne konstruksjonen så kompakt som mulig. Jeg har noen få Pro Trinkets, men de fungerer ikke bra for tastatur- og musesimulering fordi USB ikke er fullt implementert på pyntegjenstandene. Til dette prosjektet brukte jeg en 5V 16MHz Itsy Bitsy fra Adafruit som kan bruke standard HID -biblioteker til å være et tastatur og en mus over USB.

Styrespak

Dette er typen joystick som brukes i spillkontrollere. De er to akser og har en bryter som er midlertidig på når pinnen skyves inn. De er enkle å finne på nettet. Hvis du vil kjøpe bare en, kan den være alt fra $ 4 til $ 10, men kan kjøpes i bulk 10 pakker på Amazon for omtrent $ 11.

Vær oppmerksom på at de lignende joystickene fra Adafruit og Sparkfun har forskjellige pinouts enn alle de andre du finner på nettet. Vær oppmerksom på det når du kobler det til.

På Arduino bruker disse prosjektene A0 for bryteren, A1 for X -aksen og A2 for Y -aksen. Dette etterlater 19 andre input -pins for deg å bli kreativ med.

Joysticken 5v kommer fra 5v USB -strøm (merket som sådan på Itsy Bitsy). Og den har en bakke - koble den til Arduino -bakken.

Trinn 2: Programvare

Programvare
Programvare

Arduino -koden er veldig grei. Jeg har programmert den spesielt for noen få Lightroom -hurtigtaster jeg bruker til å vurdere bilder. Trykk på bryteren for å veksle mellom visningen Loupe ("e") og rutenettet ("g"). Når du flytter joysticken til venstre og høyre, går du til forrige (venstre pil) eller neste (høyre pil) bilde. Å skyve pinnen opp legger til en stjerne i karakteren ("["), og ved å trykke den ned fjernes flagget ("u"). (Stol på meg, dette er fornuftig for måten jeg vurderer bildene mine.) Du kan endre koden for å gjøre hva du vil.

Hovedløkken leser først bryterstatus. Hvis den endret seg fra HIGH til LOW, bytter den og skriver enten 'e' eller 'g' for å veksle mellom luppen og rutenettet.

Deretter kartlegger programmet de analoge verdiene til joysticken (0 til 1024) til et annet område (-5 til +5). Koden gjenkjenner +/- verdier på 5 som handlinger for å sende tegn, så du må flytte styrespaken nær slutten av området for å sende en hurtigtast. Styrespaken må deretter passere 0 før den sender et nytt tastetrykk. Koden for å gjøre dette er ganske kort, og jeg synes det er ganske elegant. Nettoeffekten er at du må være bevisst om bevegelsene dine, og det vil ikke ved et uhell sende ut en strøm av det samme tastetrykket (som min første versjon av koden gjorde!).

Du kan bruke musebiblioteket og de analoge verdiene fra styrespaken til å styre markøren, rullehjulene, volumkontrollene eller en annen analog (ish) funksjon.

Trinn 3: Case, del 1 - Design og kutting

Case, del 1 - Design og kutting
Case, del 1 - Design og kutting
Case, del 1 - Design og kutting
Case, del 1 - Design og kutting
Case, del 1 - Design og kutting
Case, del 1 - Design og kutting

Å ha et brødbrett på skrivebordet mitt så bare ikke kult ut, og ergonomien var heller ikke ideell. På tide å designe en sak.

Dette ville være et ideelt prosjekt for 3D -utskrift av etui. Jeg har ikke en 3D -skriver, men jeg har en laserskjærer, så alt ser ut som et laserskjæringsprosjekt for meg nå. Dette designet tok en kveld å designe i Adobe Illustrator, inkludert å leke med mange forskjellige konsepter som en enkel pinne, en mer organisk form ved bruk av laserskårne hengsler og boksformede former.

Jeg begynte med å holde brødbrettet i forskjellige høyder og vinkler, og bestemte meg for at en vinkel på 30 ° i en høyde på omtrent 80 til 100 mm fra skrivebordet ville være behagelig. Det endelige designet ligner litt på en liten fly joystick og føles behagelig å holde.

Den originale Adobe Illustrator -filen sammen med DXF- og PDF -versjoner er inkludert nedenfor. (DXF og PDF har ikke blitt testet på en laserskjærer.) Filen inneholder også topp- og sideriss av joysticken som du kan bruke til å legge ut ditt eget prosjekt.

Det er to tykkelser av materiale som brukes i denne designen. Alt bortsett fra toppen er 0,187 "nytte" -finer fra den lokale store boksbutikken. Et 2 'x 4' ark er bare ca $ 8. Designet bruker 5 mm som tykkelse for.187 "treet i designet, og det monteres perfekt. Toppen er 3 mm kryssfiner for å gi ekstra klaring for tommelgrepet på joysticken. Dette prosjektet ville også være fint i klar akryl.

Et par notater om fordelen med å lage prototyper: Jeg gjorde en testkutt og montering med papp først som hjalp til med å finne en designfeil. Da jeg kuttet treversjonen første gang oppdaget jeg også at topplaten var veldig skjør ved hullet, så jeg redesignet fanene for å legge til ekstra styrke der. Jeg fant også ut at joysticken traff siden av saken, så jeg gjorde to endringer: Jeg flyttet feste for å sentrere det bedre, og jeg brukte 3 mm tre istedenfor 5 mm på toppen. Den opplastede designfilen har alle disse endringene i den - bare pass på å kutte toppstykket fra det tynnere treverket.

Trinn 4: Etui, del 2 - Maling og montering

Etui, del 2 - Maling og montering
Etui, del 2 - Maling og montering
Etui, del 2 - Maling og montering
Etui, del 2 - Maling og montering
Etui, del 2 - Maling og montering
Etui, del 2 - Maling og montering

Med alle bitene kuttet gjorde jeg en siste tørr montering og monterte joysticken midlertidig. Alt var bra, så jeg limte sammen alle bitene bortsett fra toppen. Det er ikke mulig å installere joysticken etter at toppen er festet, så det kommer senere.

Det nedre høyre hjørnet av toppen ville stikke inn i bunnen av tommelen min, så jeg rundet av de nederste hjørnene med litt rask sliping.

Hvis du liker laserskåret utseende, eller hvis du har laget dette av akryl, er du ferdig! Jeg ønsket en finere finish på stykket å gå med skrivebordet mitt. Jeg ga den et grunnlag med svart maling og deretter noen strøk Rust-oleum Forged Hammered Burnished Amber. Jeg brukte dette produktet på pynten på skrivebordet mitt, så dette binder brikkene sammen. Jeg liker også det metalliske utseendet på denne malingen. Jeg maskerte innsiden av fingerleddene der toppen passer slik at malingen ikke ødelegger passformen.

Styrespaken og Arduino ble kablet opp med svarte ledninger og krympeslanger for å holde den ren, og ledningene ble kuttet til en lengde som så riktig ut når den ble installert.

Styrespaken skrues på plass på midtstiveren. Skruene jeg hadde var litt lange, så jeg forkortet dem ved å skru dem gjennom det ubrukte treverket og slipte spissene tilbake med en bordslipemaskin. Arduinoen har ikke monteringshull, så den ble limt på plass.

Med alt montert festet jeg toppen på plass uten å lime. Den sitter tett nok til å holde seg inne og er ikke strukturelt viktig.

Trinn 5: Fullføring

Fullføring
Fullføring
Fullføring
Fullføring
Fullføring
Fullføring

Det ferdige prosjektet ser bra ut på skrivebordet mitt.

Det første jeg brukte det til var å redigere bildene for denne Instuctable.

Ferdig!

Anbefalt: