Inhoudsopgave:
- Stap 1: Hardware
- Stap 2: Software
- Stap 3: Case, deel 1 - Ontwerp en snijden
- Stap 4: Case, deel 2 - verf en montage
- Stap 5: Voltooiing
Video: USB-toetsenbord-joystick: 5 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:18
Het is eenvoudig om aangepaste USB-toetsenbord- en muiscontrollers te maken.
Ik gebruik een paar sneltoetsen bij het beoordelen van afbeeldingen in Adobe Lightroom en ontdekte dat ik nog sneller kan zijn met een eenvoudige joystick voor de gamecontroller. Ik bespotte het op een breadboard met twee componenten die ik al in mijn werkplaats had en ontdekte dat het geweldig werkte, maar er was een mooiere "kast" nodig om het op mijn bureau te laten leven.
Omdat het op Arduino is gebaseerd, is het eenvoudig om de joystickfuncties aan te passen en extra knoppen, draaiknoppen of andere bedieningselementen toe te voegen.
Dit project bestaat uit drie delen:
- Hardware
- Software
- Bureauwaardige koffer om de hardware in te bewaren
Onderdelen
- Arduino - 5v 16MHz Itsy Bitsy van Adafruit. Veel andere Arduino's zullen prima werken, maar zorg ervoor dat hun USB kan werken met de toetsenbord- en muisbibliotheken.
- Joystick - Gamecontroller-stijl 2-as met schakelaar (hier is een pakket van tien: WGCD 10st Joystick Breakout Module Game Controller voor Arduino PS2).
- Hout of acryl voor koffer. Misschien wat verf.
- Draad en een USB-kabel.
Stap 1: Hardware
Arduino
Ik wilde een klein Arduino-bord gebruiken om deze build zo compact mogelijk te houden. Ik heb een paar Pro Trinkets, maar die werken niet goed voor toetsenbord- en muissimulatie omdat USB niet volledig is geïmplementeerd op de Trinkets. Voor dit project heb ik een 5V 16MHz Itsy Bitsy van Adafruit gebruikt die standaard HID-bibliotheken kan gebruiken als toetsenbord en muis via USB.
Joystick
Dit is het type joystick dat wordt gebruikt in gamecontrollers. Ze zijn twee-assig en hebben een schakelaar die tijdelijk aan staat wanneer de stick wordt ingedrukt. Ze zijn gemakkelijk online te vinden. Als je er maar één wilt kopen, kunnen ze ergens tussen de $ 4 en $ 10 zijn, maar ze kunnen voor ongeveer $ 11 in bulk van 10 pakketten op Amazon worden gekocht.
Let op, de vergelijkbare joysticks van Adafruit en Sparkfun hebben andere pinouts dan alle andere die je online kunt vinden. Let daar goed op als je hem aansluit.
Op de Arduino gebruikt dit project A0 voor de schakelaar, A1 voor de X-as en A2 voor de Y-as. Dit laat 19 andere invoerpinnen over om creatief mee om te gaan.
De joystick 5v komt van de 5v USB-voeding (als zodanig aangeduid op de Itsy Bitsy). En het heeft een aarde - sluit het aan op de Arduino-aarde.
Stap 2: Software
De Arduino-code is heel eenvoudig. Ik heb het speciaal geprogrammeerd voor een paar Lightroom-sneltoetsen die ik gebruik om foto's te beoordelen. Door op de schakelaar te drukken, schakelt u tussen de loep ("e") en de rasterweergave ("g"). Door de joystick naar links en rechts te bewegen, gaat u naar de vorige (pijl naar links) of volgende (pijl naar rechts) afbeelding. Door de stick omhoog te duwen, wordt een ster toegevoegd aan de beoordeling ("["), en als u de stick omlaag duwt, wordt de vlag ("u") verwijderd. (Geloof me, dit is logisch voor de manier waarop ik mijn afbeeldingen beoordeel.) Je kunt de code veranderen om te doen wat je wilt.
De hoofdlus leest eerst de schakelstatus. Als het van HOOG naar LAAG is veranderd, schakelt en typt u 'e' of 'g' om te schakelen tussen loep- en rasterweergave.
Vervolgens wijst het programma de analoge waarden van de joystick (0 tot 1024) toe aan een ander bereik (-5 tot +5). De code herkent +/- waarden van 5 als acties voor het verzenden van tekens, dus u moet de joystick naar het einde van zijn bereik verplaatsen om een sneltoets te verzenden. De joystick moet dan door 0 gaan voordat hij nog een toetsaanslag verzendt. De code om dit te doen is vrij kort en ik vind het behoorlijk elegant. Het netto-effect is dat je bewust moet zijn met je bewegingen en het zal niet per ongeluk een stroom van dezelfde toetsaanslag uitzenden (wat mijn eerste versie van de code deed!).
U kunt de muisbibliotheek en de analoge waarden van de joystick gebruiken om uw cursor, scrollwielen, volumeregelaars of elke andere analoge (ish) functie te bedienen.
Stap 3: Case, deel 1 - Ontwerp en snijden
Een breadboard op mijn bureau hebben zag er gewoon niet cool uit, en de ergonomie was ook niet ideaal. Tijd om een hoesje te ontwerpen.
Dit zou een ideaal project zijn om een hoesje voor 3D te printen. Ik heb geen 3D-printer, maar ik heb wel een lasersnijder, dus alles ziet er nu voor mij uit als een lasergesneden project. Dit ontwerp kostte een avond om te ontwerpen in Adobe Illustrator, inclusief spelen met veel verschillende concepten zoals een eenvoudige stok, een meer organische vorm met lasergesneden scharnieren en boxy-vormen.
Ik begon met het breadboard op verschillende hoogtes en hoeken te houden en besloot dat een hoek van 30° op een hoogte van ongeveer 80 tot 100 mm vanaf het bureau comfortabel zou zijn. Het uiteindelijke ontwerp lijkt een beetje op een kleine joystick en voelt comfortabel aan om vast te houden.
Het originele Adobe Illustrator-bestand samen met de DXF- en PDF-versies zijn hieronder opgenomen. (De DXF en PDF zijn niet getest op een lasersnijder.) Het bestand bevat ook boven- en zijaanzichten van de joystick die u kunt gebruiken bij het ontwerpen van uw eigen project.
Er zijn twee materiaaldiktes gebruikt in dit ontwerp. Alles behalve de bovenkant is 0,187 "'utility'-multiplex van de plaatselijke grote kistenwinkel. Een vel van 2' x 4' kost slechts ongeveer $ 8. Het ontwerp gebruikt 5 mm als dikte voor het.187" hout in het ontwerp, en het assembleert perfect. De bovenkant is van 3 mm multiplex om extra ruimte voor de duimgreep op de joystick mogelijk te maken. Dit project zou ook leuk zijn in helder acryl.
Een paar opmerkingen over het voordeel van het maken van prototypes: ik deed eerst een proefsnede en montage met karton, wat hielp om één ontwerpfout te vinden. Toen ik de eerste keer de houten versie sneed, ontdekte ik ook dat de bovenplaat erg kwetsbaar was door het gat, dus heb ik de lipjes opnieuw ontworpen om daar extra stevigheid toe te voegen. Ik ontdekte ook dat de joystick de zijkant van de behuizing raakte, dus maakte ik twee wijzigingen: ik verplaatste de steun om hem beter te centreren en ik gebruikte 3 mm hout in plaats van 5 mm aan de bovenkant. Het geüploade ontwerpbestand bevat al die wijzigingen - zorg er wel voor dat u het bovenste stuk uit het dunnere hout snijdt.
Stap 4: Case, deel 2 - verf en montage
Nadat alle stukken waren gesneden, deed ik een laatste droge montage en monteerde ik tijdelijk de joystick. Alles was goed, dus ik heb alle stukjes gelijmd behalve de bovenkant. Het is niet mogelijk om de joystick te installeren nadat de bovenkant is bevestigd, dus dat komt later.
De rechterbenedenhoek van de bovenkant zou in de onderkant van mijn duim prikken, dus ik rondde de onderste hoeken af met wat snel schuren.
Als je van de lasergesneden look houdt, of als je dit van acryl hebt gemaakt, ben je klaar! Ik wilde een mooiere afwerking van het stuk bij mijn bureaublad. Ik gaf het een basislaag zwarte verf en vervolgens een paar lagen Rust-oleum Forged Hammered Burnished Amber. Ik heb dit product op de rand van mijn bureau gebruikt, dus dit bindt de stukken aan elkaar. Ik hou ook van de metallic afwerking van deze lak. Ik maskeerde de binnenkant van de vingergewrichten waar de bovenkant past, zodat de verf de pasvorm niet zou bederven.
De joystick en Arduino waren bedraad met zwarte draden en krimpkous om het er schoon uit te laten zien, en de draden werden op een lengte gesneden die er goed uitzag toen ze geïnstalleerd waren.
De joystick wordt op zijn plaats op de middensteun geschroefd. De schroeven die ik had waren een beetje lang, dus ik heb ze ingekort door ze door het ongebruikte hout te schroeven en de punten terug geschuurd met een tafelschuurmachine. De Arduino heeft geen montagegaten, dus het was heet op zijn plaats gelijmd.
Met alles gemonteerd heb ik de bovenkant op zijn plaats geklikt zonder te lijmen. Het past strak genoeg om zichzelf vast te houden en is niet structureel belangrijk.
Stap 5: Voltooiing
Het voltooide project ziet er geweldig uit op mijn bureau.
Het eerste waarvoor ik het gebruikte, was om de afbeeldingen voor deze Instuctable te bewerken.
Gedaan!
Aanbevolen:
Hoe maak je een USB-flashdrive met een gum - DIY USB-drivebehuizing: 4 stappen
Hoe maak je een USB-flashdrive met een gum | DIY USB-drivebehuizing: deze blog gaat over "Hoe maak je een USB-flashdrive met een gum | DIY USB-schijfbehuizing" ik hoop dat je het leuk zal vinden
Verander een gewone USB-stick in een veilige USB-stick: 6 stappen
Verander een gewone USB-stick in een veilige USB-stick: In deze Instructable leren we hoe je van een gewone USB-stick een veilige USB-stick kunt maken. Allemaal met standaard Windows 10-functies, niets bijzonders en niets extra's om aan te schaffen. Wat heb je nodig: Een USB-stick of -stick. Ik beveel getti
NODEMcu Usb-poort werkt niet? Upload de code met behulp van USB naar TTL (FTDI)-module in slechts 2 stappen: 3 stappen
NODEMcu Usb-poort werkt niet? Upload de code met behulp van USB naar TTL (FTDI) -module in slechts 2 stappen: moe van het verbinden met veel draden van USB naar TTL-module naar de NODEMcu, volg deze instructie om de code in slechts 2 stappen te uploaden. Als de USB-poort van de NODEMcu werkt niet, geen paniek. Het is gewoon de USB-stuurprogrammachip of de USB-connector
Hoe u uw eigen USB-autolader kunt maken voor elke iPod of andere apparaten die via USB worden opgeladen: 10 stappen (met afbeeldingen)
Hoe u uw eigen USB-autolader kunt maken voor elke iPod of andere apparaten die worden opgeladen via USB: maak een USB-autolader voor elke iPod of ander apparaat dat oplaadt via USB door een autoadapter aan elkaar te koppelen die 5v en een vrouwelijke USB-stekker uitvoert. Het belangrijkste onderdeel van dit project is om ervoor te zorgen dat de output van uw gekozen auto-adapter wordt ingezet
USB-binnen-/buitenthermometer (of 'Mijn eerste USB-apparaat'): 4 stappen (met afbeeldingen)
USB-binnen-/buitenthermometer (of 'Mijn eerste USB-apparaat'): Dit is een eenvoudig ontwerp dat de USB-randapparatuur op de PIC 18Fs demonstreert. Er zijn een heleboel voorbeelden voor de 18F4550 40-pins chips online, dit ontwerp demonstreert de kleinere 18F2550 28-pins versie. De PCB maakt gebruik van onderdelen voor opbouwmontage, maar alle c