Përmbajtje:

DIY MPU-6050 USB Joystick: 5 hapa
DIY MPU-6050 USB Joystick: 5 hapa

Video: DIY MPU-6050 USB Joystick: 5 hapa

Video: DIY MPU-6050 USB Joystick: 5 hapa
Video: Lesson 24: Smart Car Part 2: Moving Forwared, Reverse, left and right and Controling Speed of Car 2024, Nëntor
Anonim
Joystick DIY MPU-6050 USB
Joystick DIY MPU-6050 USB

Me Microsoft Flight Simulator 2020, shpejt kuptova se sa e vështirë është të përdorësh tastierën për të kryer një plan. Duke kërkuar në internet, nuk gjeta një levë me çmim të arsyeshëm për të blerë. Shumica e shitësve me pakicë në internet nuk i kishin ato në magazinë. Popullariteti i MS Flight Simulator dhe pandemia COVID 19 fshiu të gjitha rezervat ekzistuese të levës. Mundësia ime e vetme ishte të ndërtoja një vetë.

Shumica e levave atje përdorin potenciometra në bazë për të përcaktuar këndet e levës dhe për të dërguar informacionin e boshtit x dhe y përsëri në kompjuter. Kjo funksionon mirë, por e ndërlikon ndërtimin e levës. dhe me kalimin e kohes. potenciometrat mund të lodhen. Në vend që të përdorja potenciometra, vendosa të shkoj me bordin e sensorit të përshpejtuesit/xhiroskopit për të dërguar informacion në kompjuter në këndet e shkopit.

Me popullaritetin e mikroprocesorëve të ndryshëm Arduino dhe sensorë të ndryshëm, kostoja e ndërtimit të një projekti Arduino bëhet shumë më e përballueshme. Një nga bordet e sensorëve të akselerometrit/xhiroskopit të përdorur zakonisht është MPU-6050. Në Kanada, kushton rreth 7 dollarë në Amazon. Unë e mora nga eBay dërguar nga Kina për shumë më pak, por koha e transportit ishte rreth 3 muaj ose më gjatë.

www.amazon.ca/Neuftech-MPU-6050-3-Gyroscop…

Çdo bord Arduino do të funksiononte, por përdorimi i bordit të bazuar në ATmega32u4 do të jetë shumë më i thjeshtë, sepse ATmega32u4 ka mbështetje amtare HID (Pajisja e Ndërfaqes Njerëzore). Pasi të jetë programuar bordi, mund ta përdorni në çdo kompjuter Windows 10 dhe nuk kërkohet softuer shtesë. Windows 10 do ta njohë atë automatikisht si një levë kur USB është e kyçur. (Përdorimi i bordit të llojit tjetër Arduino është shumë i komplikuar për këtë projekt të thjeshtë ndërtimi).

Unë zgjedh bordin Arduino Leonardo. $ 17CAN nga Amazon.

www.amazon.ca/KEYESTUDIO-Leonardo-Developm…

Këto 2 pajisje janë kërkesat kryesore për këtë projekt. Sende të tjera më të vogla të tilla si instalime elektrike dhe butona shtypi janë gjithashtu të nevojshëm. Në këtë projekt, unë përdor vetëm 2 butona për thjeshtësi.

Doreza e levës është bërë nga një tub uji PVC. Kjo mund të zëvendësohet lehtësisht me ndonjë tub të shkurtër të ngurtë.

Baza e levës është një ndalesë e derës së pranverës e fiksuar në një copë druri.

Ndalesa e derës së pranverës është në dispozicion nga Home Depot për 2.83 dollarë.

www.homedepot.ca/product/everbilt-spring-d…

Hapi 1: Lidhni butonat MPU6050 dhe Push me bordin Arduino Leonardo

Lidhja e butonave MPU6050 dhe Push me bordin Arduino Leonardo
Lidhja e butonave MPU6050 dhe Push me bordin Arduino Leonardo
Lidhja e butonave MPU6050 dhe Push me bordin Arduino Leonardo
Lidhja e butonave MPU6050 dhe Push me bordin Arduino Leonardo
Lidhja e butonave MPU6050 dhe Push me bordin Arduino Leonardo
Lidhja e butonave MPU6050 dhe Push me bordin Arduino Leonardo

Vetëm 4 lidhje përdoren në MPU 6050. Ato janë etiketuar VCC, GND, SCL dhe SDA.

Lidhni VCC me 5v ose 3.3v në Arduino Leonardo. (MPU 6050 mund të përdorë ose 5v ose 3.3v. Nuk ka rëndësi)

Lidhni GND me çdo GND në Arduino Leonardo.

Lidhni SCL me SCL në Arduino Leonardo.

Lidhni SDA me SDA në Arduino Leonardo.

Unë përdor vetëm 2 butona shtytës për këtë qëllim demonstrimi.

Butoni i parë i shtypjes përdoret për të rivendosur qendrën e levës. Në këtë shembull, një fund i butonit shtytës është i lidhur me GND dhe një fund me PIN 13.

Butoni i dytë i shtypjes përdoret si një buton levë. Në këtë shembull, ajo është e lidhur me PIN 9 dhe GND.

Mund të shtoni butona shtesë sipas nevojës në projektin tuaj.

Hapi 2: Ndërtimi i Bazës së Joystick

Ndërtimi i Bazës së Joystick
Ndërtimi i Bazës së Joystick
Ndërtimi i Bazës së Joystick
Ndërtimi i Bazës së Joystick
Ndërtimi i Bazës së Joystick
Ndërtimi i Bazës së Joystick

Gjeni një copë bllok druri. Sa më e rëndë aq më mirë. Do ta bëjë bazën e levës më të qëndrueshme.

Vidhosni tapën e derës së pranverës në qendër të bllokut të drurit siç tregohet në figurë.

Përdorni një copë tub të shkurtër si dorezë levë. Kam përdorur një tub PVC të copëtuar. Ecni me tela në mënyrë që sensori i përshpejtuesit/xhiroskopit të jetë ulur në majë të tubit.

Pastaj vendoseni tubin mbi tapën e derës së pranverës. Kam përdorur shirit elektrik për të ngjitur sensorin në krye.

Hapi 3: Konfiguroni Arduino IDE

Shkarkoni dhe instaloni Arduino IDE.https://www.arduino.cc/en/Main/Software

Kam përdorur Arduino 1.8.13 për këtë projekt. Për këtë projekt mund të përdoret edhe Arduino Web Editor.

Përdoren 2 biblioteka.

1. MPU6050_tockn nga tockn

github.com/Tockn/MPU6050_tockn

ose mund ta gjeni në menunë "Menaxho Bibliotekën".

2. Biblioteka Joystick nga Matthew Heironimus

github.com/MHeironimus/ArduinoJoystickLibr…

Ky aktualisht është i disponueshëm vetëm nga faqja e internetit GitHub.

Klikoni në kodin e shkarkimit dhe Shkarkoni ZIP. Nxirrni skedarin ZIP në drejtorinë tuaj të bibliotekave Arduino.

Në rastin tim, është E: / PinChung / Documents / Arduino / bibliotekat

Hapi 4: Programi Arduino

Ngarkoni Pin_Joystick.ino në Arduino IDE dhe përpiloni dhe ngarkoni në tabelën Leonardo.

Sigurohuni që tabela Arduino Leonardo është zgjedhur dhe numri i portit është zgjedhur në të djathtë COM: nën menunë Tools.

Kam vënë re disa kohë, programi nuk mund të ngarkohet me kodin e gabimit të portit COM që nuk është i disponueshëm. Shtypja e butonit të rivendosjes në tabelën Leonardo disa herë gjatë përpilimit mund të ndihmojë. Rinisja e Windows 10 gjithashtu mund të ndihmojë në lirimin e portës COM.

Pasi programi të ngarkohet në tabelën Leonardo, Windows 10 duhet të zbulojë automatikisht Joystick Leonardo. Në shiritin e kërkimit të Windows 10, shkruani Game Controllers, ekzekutoni Set up USB Game Controllers.

zgjidhni Leonardo Joystick dhe klikoni Properties. Lëvizja e levës dhe butoni i levës #1 duhet të merren nga Windows 10.

Nëse levë nuk është në qendër, kur e lini atë, klikoni në butonin e rivendosur të qendrës së levës që sapo kemi bërë. Kontrolluesit e lojërave USB duhet të tregojnë pikën e levës në qendër. Nuk ka nevojë të kalibroni levën në programin USB Game Controller..

Shënim anësor: Për ata që nuk janë të njohur me Arduino Leonardo, kur pajisja është konfiguruar si një levë, mi ose tastierë, porti serik nuk do të funksionojë. Pra, "Serial.print ()" nuk do të funksionojë. Gjithashtu, MPU6050 përdor bibliotekë teli i2c dhe përdor kunjat SDA dhe SLC. Në Leonardo, SDA dhe SCL marrin të dy PIN 2 dhe PIN 3, kështu që mos i përdorni këto 2 kunja për asgjë tjetër.

Hapi 5: Testimi i xhojstikut

E testova në Microsoft Flight Simulator 2020 dhe funksionon shumë mirë. Unë ndonjëherë duhet të shtyp tastin qendror ndonjëherë për të zeruar levën. Vlera e sensorit MPU6050 mund të zhvendoset pak me kalimin e kohës.

Ka shumë mundësi për të shpenzuar në projekt, të tilla si shtimi i më shumë butonave dhe shtimi i kontrolleve të mbytjes. Shpresojmë se kjo do të frymëzojë kopjuesit e tjerë për të eksploruar mënyra të reja për të bërë gjëra.

Recommended: