Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Arduino-joystick

Componenten en benodigdheden

Draaipotentiometer (algemeen)
× 1
Arduino UNO
× 1
Broodplank (algemeen)
× 1

Benodigde gereedschappen en machines

Lasersnijder (algemeen)
Arduino Materia 101
3D-printer (algemeen)

Apps en online services

Arduino IDE

Over dit project

Arduino Joystick + Vliegende Creatie

In dit artikel gaan we een project realiseren met Arduino. In het bijzonder zullen we een stuur maken dat een joystick simuleert.

Het is als een controller die je op Steam kunt gebruiken (digital rights management, multiplayer en communicatiemodus). Ik dacht dat het runnen van dit project een gepassioneerd racen was, altijd spelen met het toetsenbord of met een joystick, het was altijd hetzelfde als ik op Amazon ging om een ​​rijsimulator te vergelijken, maar de prijzen waren een beetje hoog. Ik ben een paar dagen geweest waar ik plezier had. Als je suggesties hebt om dit project te verbeteren, aarzel dan niet om contact met me op te nemen !!!

Kom je Arduino in een controller veranderen?

Het artikel is van plan om de Arduino-communicatiechip te flashen om hem herkenbaar te maken als een USB-gamepad. De procedure is veilig en omkeerbaar, maar ik aanvaard in geen geval enige verantwoordelijkheid in geval van problemen of storingen.

Download eerst de nieuwste versie van UnoJoy, een bibliotheek die dankzij een speciale firmware zal veranderen in een apparaat dat detecteerbaar is als een USB-joystick. Om UnoJoy te gebruiken, moet u eerst de juiste stuurprogramma's installeren door het bestand InstallUnoJoyDrivers.bat uit te voeren dat u vindt in de map die u zojuist hebt gedownload.

We moeten ook de ATmel FLIP-tool installeren die wordt gebruikt door onze "UnoJoy" -bibliotheek om de firmware op de Arduino-communicatiechip te flashen.

Ga je de firmware op Arduino laden?

Zet Arduino eerst in de DFU-modus (Device Firmware Update) door tussen de twee pinnen verder voor de groep van zes uitstekende pinnen die zich naast de USB-aansluiting bevinden (je kunt de twee pinnen op de afbeelding te zien), op deze manier hebben we de firmware op Arduino geflitst. Door een contact te maken tussen de twee pinnen zullen de verschillende Arduino LED's kort oplichten. Nu moet je het bestand van UnoJoy TurnIntoAJoystick.bat uitvoeren en na het loskoppelen en opnieuw aansluiten van een Arduino-computer, wordt het gedetecteerd als JoyStick in plaats van als Arduino. Om terug te gaan naar een standaard Arduino, is de procedure identiek, maar het bestand dat deze keer moet worden uitgevoerd, is TurnIntoAnArduino.bat.

Eenvoudige besturing

Om een ​​controller te bouwen, in ons geval en het is een constructie een stuur, hebben we een 10K ohm potentiometer nodig die is aangesloten op pin A0 (zie onderstaande afbeelding). In plaats daarvan krijg je code doorgestuurd naar de UnoJoy-bibliotheek, dus je moet het bestand UnoJoy.h kopiëren naar de map waar je de schets wilt opslaan.

Speel op Steam

Voltooi Steam als een gamepad die van XBOX360, er is een programma dat in staat is om een ​​USB-controller in kaart te brengen op een gamepad voor virtuele XBOX360:x360ce. Download de 64-bits of 32-bits versie, afhankelijk van het spel dat u wilt spelen. Eenmaal uitgepakt, kopieer het bestand x360ce.exe naar de map met het uitvoerbare bestand van het spel, start x360ce.exe dat zojuist is gekopieerd en dit zal de aanwezigheid van een USB JoyStick zijn.

Als je ook een stuur wilt bouwen, ik heb een video-tutorial gemaakt op mijn YouTube-kanaal, er is de onderstaande link.

Als je vragen hebt, kun je vanuit het advies hier contact met me opnemen of een reactie achterlaten onder de YouTube-video.

OM TERUG TE KOMEN OP DE TOEKOMSTIGE PROJECTEN ABONNEER OP HET KANAAL KLIK "HIER" !!

Code

  • Code
CodeC/C++
/* Arduino USB Joystick HID-demo *//* Auteur:Darran Hunt Vrijgegeven in het publieke domein. Update door RICLAMER op 25/03/2014 om analoge poorten en digitale poorten te gebruiken Deze code moet worden gebruikt met Arduino UNO (6 assen en 13 knoppen) Deze code is compatibel met Arduino Mega.*//* INSTALATIE Installeer gewoon POT in elke analoge poort. De _Grnd _Analoge _5V Arduino gebruiken. Zoals deze afbeelding:http://arduino.cc/en/uploads/Tutorial/joy_sch_480.jpg Om de knoppen in te stellen, installeer je de gewenste knopschakelaar onder GND en Port Digital 02~13. Gebruik Flip om deze firmware-DFU te wissen en te branden:https://github.com/harlequin-tech/arduino-usb/blob/master/firmwares/Arduino-big-joystick.hex Ik gebruikte Arduino R3 met Atmega 16U2.*/# undef DEBUG#define NUM_BUTTONS 40 // u hoeft deze waarde niet te wijzigen#define NUM_AXES 8 // 6 assen naar UNO en 8 naar MEGA. Als u UNO gebruikt, hoeft u deze waarde niet te wijzigen.typedef struct joyReport_t { int16_t axis[NUM_AXES]; uint8_t-knop [(NUM_BUTTONS + 7) / 8]; // 8 knoppen per byte} joyReport_t;joyReport_t joyReport;uint8_t btn[12];int fulloff =0;void setup(void);void loop(void);void setButton(joyReport_t *joy, uint8_t button);void clearButton(joyReport_t * vreugde, uint8_t-knop); ongeldig sendJoyReport (joyReport_t * rapport); ongeldig setup () { // stel pin in op invoerknop voor (int portId =02; portId <13; portId ++) { pinMode (portId, INPUT_PULLUP); } Serieel.begin(115200); vertraging (200); for (uint8_t ind =0; ind <8; ind++) { joyReport.axis [ind] =ind * 1000; } for (uint8_t ind =0; ind button[index] |=1 <button [index] &=~(1 <  

Aangepaste onderdelen en behuizingen

volante_iDt4RqmPLZ.dwg volante_idt4rqmplz_hakHRvVNYD.dxf

Schema's


Productieproces

  1. Arduino digitale dobbelstenen
  2. Met joystick bestuurde RC-auto
  3. Iron Man
  4. Joystick-spel
  5. Vind mij
  6. Arduino 3D-geprinte robotarm
  7. Arduino-luchtbevochtigerbediening
  8. Contactloze temperatuurbewakingspoort
  9. NeoMatrix Arduino Pong
  10. Arduino TEA5767 FM-radio-ontvanger
  11. Stappenteller (Arduino 101)