Sisällysluettelo:
- Vaihe 1: Valmistelu
- Vaihe 2: Suunnittele laatikon asettelu
- Vaihe 3: Mittaa ja poraa
- Vaihe 4: Asenna painikkeet, kiertopyörät ja kytkimet
- Vaihe 5: Suunnittele johdotusasettelu
- Vaihe 6: Juotos
- Vaihe 7: Koodin kirjoittaminen
- Vaihe 8: Lisää laitteeseesi
Video: Sim Racing Button Box: 8 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:02
Tervetuloa sim -kilpa -addikti!
Ovatko näppäimistösi lopussa, jotta voit yhdistää kaikki auton hallintalaitteet? Tarvitset todennäköisesti painikelaatikon! Tässä Instructable -ohjelmassa luomme sellaisen tyhjästä. Painikelaatikossa on 32 (!) Käytettävissä olevaa painiketilaa. Tämän painikelaatikon käyttämiseen ei tarvita lisäohjelmistoja. Opit määrittämään painikematriisin ja kirjoittamaan (tai kopioimaan) koodin ladattavaksi Arduinoosi.
On tärkeää tietää, että painikelaatikko ei tue monia samanaikaisesti painettuja painikkeita.
Aloitetaan!
Vaihe 1: Valmistelu
Painikelaatikon luomiseen tarvitset työkaluja, painikkeita ja muita kohteita. Voit vapaasti luoda painikelaatikon toiveidesi mukaan.
Elektroniikka:
- Painikkeet
- Vaihtaa
- Pyörivät anturit
- Arduino Pro Micro
- Mini USB -USB -kaapeli
- Johdot
Työkalut:
- Porata
- Juottaa
- Jarrusatula
- Ruuvimeisselit
- Leikkuri
- Jakoavain
Ohjelmisto:
- Arduino IDE
- Photoshop/Paint (valinnainen; voidaan piirtää käsin)
Muu:
- Kotelo (laatikko; voidaan ostaa tai mukauttaa 3D -tulostus)
- Hiilivinyylikääre (valinnainen)
- Pyörivät anturin nupit
- Kytkinsuojus (valinnainen)
- Tarratulostin (valinnainen)
- Kumitiiviste
Kun sinulla on kaikki (tai tarpeeksi aloittaaksesi) kohteet, voimme aloittaa painikelaatikon asettelun suunnittelun.
Vaihe 2: Suunnittele laatikon asettelu
Tässä vaiheessa tarvittavat työkalut:
Photoshop/Paint (valinnainen; voidaan piirtää käsin)
Nappulaatikon muotoilu voi olla erilainen kaikille. Tässä Instructable -ohjelmassa käytämme kuitenkin asettelua, joka koostuu:
- 4x kolmisuuntainen vaihtokytkin
- 2x yksisuuntainen vaihtokytkin
- 10x yksinkertaisia painikkeita
- 4x pyörivä anturi yksinkertaisella painikkeella
Kolme tapaa vaihtaa kytkintä:
Vaihtokytkimiä on monenlaisia. Jotkut ovat hetkellisiä ja jotkut pysyvät paikallaan, kunnes vaihdetaan takaisin. Sinun on päätettävä, mitä tyyppiä käytät, mutta suosittelen käyttämään hetkellisiä kytkimiä, koska tässä painikelaatikossa ei voi olla useita monipainikkeita samanaikaisesti. Koska vaihtokytkimet ovat kolmisuuntaisia (päälle/pois/päälle), käytettävissä on kahdeksan (4x2) painiketta.
Yksi tapa vaihtaa kytkimiä:
Näitä voidaan pitää yksinkertaisina painikkeina (pois/päällä). Nämä voivat myös olla hetkellisiä tai vaihtaa. Jälleen, henkilökohtaisista mieltymyksistä riippuen, kumpi valita. Nämä antavat meille kaksi (2) käytettävissä olevaa painiketta.
Yksinkertaiset painikkeet:
Tällaisia painikkeita voidaan käyttää yksinkertaisesti painamalla niitä (pois/päälle). Nämä antavat meille kymmenen (10) painiketta.
Pyörivät anturit yksinkertaisella painikkeella:
Useimmat (elleivät kaikki) pyörivät anturit voidaan kääntää molempiin suuntiin loputtomasti. Aina kun käännät niitä suuntaan, jota käytetään painikkeen painalluksena. Näitä kiertokoodereita voidaan myös painaa ja antaa heille toinen painike. Pyörivät anturit antavat kaksitoista (12 = 4x3; kierrä vasemmalle/kierrä oikealle/paina) painiketta.
32 painiketta:
Niiden yhdistäminen antaa meille 32 (8+2+10+12) painikkeen painallusta!
Tyytyväinen ulkoasuun? Aika aloittaa rakentaminen!
Vaihe 3: Mittaa ja poraa
Tässä vaiheessa tarvittavat työkalut:
- Jarrusatula
- Porata
- Elektroniikka (painikkeet, kytkimet jne.)
Mittaa kaikki painikkeet, jotka haluat lisätä painikelaatikkoosi. Jos sinulla on ongelmia elektroniikan mittojen löytämisessä, käytä (digitaalista) paksuusmittaa niiden halkaisijan selvittämiseen.
Merkitse elektroniikan keskipisteet kotelon etupuolelle ja poraa reiät oikean kokoisina. Haluatko tehdä kotelosta hieman esteettisemmän? Odota painikkeiden kiinnittämistä!
Kun olet porannut reiät, voimme saada sen näyttämään todelliselta painikelaatikolta!
Vaihe 4: Asenna painikkeet, kiertopyörät ja kytkimet
Tässä vaiheessa tarvittavat työkalut:
- Elektroniikka (painikkeet, kytkimet jne.)
- Jakoavain
- Hiilivinyylikääre (valinnainen)
- Leikkuri (valinnainen)
Kaikessa elektroniikassa tulee olla mutteri, joka ruuvaa sen paikalleen. Jos ei; mittaa ne ja osta oikean kokoinen mutteri.
Jos haluat parantaa (henkilökohtainen mielipide) painikelaatikon ulkoasua, voit käyttää hiilikuituvinyylikääreitä. Leikkaa se kotelosi kasvojen kokoon (ja hieman suuremmiksi), johon porasit reiät. Levitä vinyyli ja kiedo se kulmien taakse. Tämä varmistaa, että kääre pysyy paikallaan, kun kotelo on suljettu. Liiallinen vinyyli, joka nyt estää reiät, voidaan poistaa leikkurilla.
Kun olet asettanut kääreen (tai et), voit sovittaa elektroniikan luoksesi painikelaatikon etuosan. Sinulla pitäisi nyt olla jotain, joka todella näyttää jo yhdeltä! Valitettavasti se ei vielä toimi…
Vaihe 5: Suunnittele johdotusasettelu
Tässä vaiheessa tarvittavat työkalut:
Photoshop/Paint (valinnainen; voidaan piirtää käsin)
Matriisin luominen:
Matriisin käyttö säästää aikaa ja paljon tarpeetonta johdotusta ja juottamista. En mene itse yksityiskohtiin, mutta ehdotan, että tutustut tähän artikkeliin, jos et tunne matriisin käsitettä.
Suunnittele oma matriisi tai käytä tämän ohjeen asettelua. Matriisissa käytämme viittä ryhmää. Ryhmät on liitetty seuraaviin Arduinon pinouteihin:
- 15: neljä pyörivää anturia
- A0: viisi painiketta
- A1: kaksi kolmitietä ja yksi painike
- A2: kaksi kolmitietä ja yksi painike
- A3: viisi painiketta
Vaihe 6: Juotos
Tässä vaiheessa tarvittavat työkalut:
- Juotin
- Juottaa
- Elektroniikka (asennettu koteloosi)
- Arduino Pro Micro
- Johdot
Valinnainen:
Lataa koodi seuraavasta vaiheesta ensin, jos olet huolissasi juottamisesta. Näin voit tarkistaa yhteytesi
Haluamme soveltaa edellisessä vaiheessa suunniteltua matriisia varsinaiseen painikelaatikkoon. Käytä tähän aikaa, varsinkin jos tämä on ensimmäinen juotos.
Joitakin vinkkejä:
- Tee yksi ryhmä kerrallaan
- Liitä Arduino tietokoneeseen testataksesi ajoittain
- Älä kuumenna muovipainikkeita liikaa, koska ne voivat sulattaa ja katkaista liitännät
- Älä käytä liikaa juotetta, vähemmän on parempi
- Käytä eri värijohtoja jokaiselle ryhmälle/maahan
Vaihe 7: Koodin kirjoittaminen
Tässä vaiheessa tarvittavat työkalut:
- Arduino IDE
- Joystick -kirjasto
- Keypad.h (Arduino IDE> Luonnos> Sisällytä kirjasto> Hallitse kirjastoja…> Etsi näppäimistö ja asenna Mark Stanleyn ja Alexander Brevigin luoma näppäimistö)
#Sisällytä #Sisällytä
#define ENABLE_PULLUPS
#define NUMROTARIES 4 #define NUMBUTTONS 24 #define NUMROWS 5 #define NUMCOLS 5
tavupainikkeet [NUMROWS] [NUMCOLS] = {
{0, 1, 2, 3, 4}, {5, 6, 7, 8, 9}, {10, 11, 12, 13, 14}, {15, 16, 17, 18, 19}, {20, 21, 22, 23}, };
structure rotariesdef {
tavu pin1; tavu pin2; int ccwchar; int cwchar; haihtuva allekirjoittamaton char -tila; };
rotariesdef rotaries [NUMROTARIES] {
{0, 1, 24, 25, 0}, {2, 3, 26, 27, 0}, {4, 5, 28, 29, 0}, {6, 7, 30, 31, 0}, };
#define DIR_CCW 0x10
#define DIR_CW 0x20 #define R_START 0x0
#ifdef HALF_STEP
#define R_CCW_BEGIN 0x1 #define R_CW_BEGIN 0x2 #define R_START_M 0x3 #define R_CW_BEGIN_M 0x4 #define R_CCW_BEGIN_M 0x5 const unsigned char table R_CCW_BEGIN {R_START_M | DIR_CCW, R_START, R_CCW_BEGIN, R_START}, // R_CW_BEGIN {R_START_M | DIR_CW, R_CW_BEGIN, R_START, R_START}, // R_START_M (11) {R_START_M, R_CCW_BEGIN_M, R_CW_BEGIN_M, R_START}, // R_CW_BEGIN_M {R_START_M, R_START_M, R_START_M DIR_CW}, // R_CCW_BEGIN_M {R_START_M, R_CCW_BEGIN_M, R_START_M, R_START | DIR_CCW},}; #else #define R_CW_FINAL 0x1 #define R_CW_BEGIN 0x2 #define R_CW_NEXT 0x3 #define R_CCW_BEGIN 0x4 #define R_CCW_FINAL 0x5 #define R_CCW_NEXT 0x6
const unsigned char ttable [7] [4] = {
// R_START {R_START, R_CW_BEGIN, R_CCW_BEGIN, R_START}, // R_CW_FINAL {R_CW_NEXT, R_START, R_CW_FINAL, R_START | DIR_CW}, // R_CW_BEGIN {R_CW_NEXT, R_CW_BEGIN, R_START, R_START}, // R_CW_NEXT {R_CW_NEXT, R_CW_BEGIN, R_CW_FINAL, R_START}, // R_CCW_BEGIN {R_CCW_NEXT, R_START, R_CCW_BEGIN, R_START}, // R_CCW_FINAL {R_CCW_NEXT, R_CCW_FINAL, R_START, R_START | DIR_CCW}, // R_CCW_NEXT {R_CCW_NEXT, R_CCW_FINAL, R_CCW_BEGIN, R_START},}; #loppu Jos
tavu rowPins [NUMROWS] = {21, 20, 19, 18, 15};
tavu colPins [NUMCOLS] = {14, 16, 10, 9, 8};
Näppäimistö buttbx = Näppäimistö (makeKeymap (painikkeet), rowPins, colPins, NUMROWS, NUMCOLS);
Joystick_ Joystick (JOYSTICK_DEFAULT_REPORT_ID, JOYSTICK_TYPE_JOYSTICK, 32, 0, false, false, false, false, false, false, false, false, false, false, false, false, false);
void setup () {
Joystick.begin (); rotary_init ();}
void loop () {
CheckAllEncoders ();
CheckAllButtons ();
}
void CheckAllButtons (void) {
if (buttbx.getKeys ()) {for (int i = 0; i
void rotary_init () {
varten (int i = 0; i
unsigned char rotary_process (int _i) {
unsigned char pinstate = (digitalRead (rotary [_i].pin2) << 1) | digitalRead (pyörivät [_i].pin1); pyörivät [_i].valtio = ttable [pyörivät [_i].valtio & 0xf] [pinstate]; return (pyörivät [_i].valtio & 0x30); }
void CheckAllEncoders (void) {for (int i = 0; i <NUMROTARIES; i ++) {
allekirjoittamaton char -tulos = rotary_process (i); if (tulos == DIR_CCW) {Joystick.setButton (pyörivät .ccwchar, 1); viive (50); Joystick.setButton (pyörivät .ccwchar, 0); }; if (tulos == DIR_CW) {Joystick.setButton (pyörivät .cwchar, 1); viive (50); Joystick.setButton (pyörivät .cwchar, 0); }; }}
- Liitä Arduino Pro Micro tietokoneeseen liittämällä USB -kaapeli
- Lataa koodi valitsemalla Arduino -tyyppi valitsemalla Työkalut> Hallitus:…> Arduino/Genuino Micro.
- Voit valita oikean USB -portin valitsemalla Työkalut> Portti:> COM x (Arduino/Genuino Micro)
- Vahvista luonnos napsauttamalla ✓ vasemmassa yläkulmassa (Tiedosto)
- Lataa sen Arduinoon painamalla sen vieressä olevaa →
Vaihe 8: Lisää laitteeseesi
Onnittelut! Olet tullut niin pitkälle. Nyt on aika kilpailla!
Suositeltava:
2d Rocket Landing Sim: 3 vaihetta
2d Rocket Landing Sim: Sinun on luotava tausta, piirrettävä raketteja ja indikaattori (tietysti tarvitset Internet -yhteyden tyhjästä), jos haluat vain pelata simulaatiota/ peliä, napsauta tätä tai siirry osoitteeseen https://scratch.mit.edu/projects/432509470
SIM900A 2G -moduuli + hologrammi -SIM -kortti = voittava yhdistelmä luokassa "lika halpa" ?: 6 vaihetta
SIM900A 2G -moduuli + hologrammi -SIM -kortti = voittoyhdistelmä luokassa "lika halpa" ?: Tämän vuosikymmenen tunnussana, IoT, tulee joskus jopa niiden ihmisten mieleen, jotka pitävät itseään villinä, ja minä olen heidän joukossaan. Internet ja näin yrityksen, josta en ole koskaan ennen kuullut (hologrammi) antavan SIM -kortteja
DIY Flight Sim -kytkinpaneeli: 7 vaihetta (kuvilla)
DIY Flight Sim -kytkinpaneeli: Vietettyäni monta vuotta lentosim -yhteisössä ja osallistuessani yhä monimutkaisempiin lentokoneisiin huomasin kaipaavani kykyä pitää kädet fyysisissä kytkimissä sen sijaan, että yrittäisin lentää oikealla kädelläni m
DIY Sim Racing -näyttö Arduino: 3 vaihetta
DIY Sim Racing -näyttö Arduino: Näin rakennat erittäin helpon ja halvan Sim Racing USB -näytön, jossa on Arduino UNO ja 3,5 " TFT -näyttö. Siinä on Assetto Corsan sovellusliittymä, joka ottaa tiedot Visual Studion C#: een ohjelmoidusta pelin jaetusta muistista ja lähettää sitten
Sim Racing Button Box: 7 vaihetta (kuvilla)
Sim Racing Button Box: Painikelaatikko on Sim Racingissa käytetty laite, jonka avulla voit määrittää painikkeita, kytkimiä ja nuppeja eri auton ohjaimiin. Yleisiä painikkeiden määrityksiä ovat esimerkiksi käynnistyspainike, pikayhteys, pyyntöaukko jne. Vaihtokytkimet toimivat erinomaisesti pyyhkimillä, päillä