Sisukord:
- Samm: ettevalmistus
- 2. samm: kujundage kasti paigutus
- 3. samm: mõõtmine ja puurimine
- Samm: paigaldage nupud, pöördlülitid ja lülitid
- Samm: kujundage juhtmestiku paigutus
- 6. samm: jootmine
- Samm: koodi kirjutamine
- Samm: lisage oma seadmesse
Video: Sim Racing Button Box: 8 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
Tere tulemast sim võidusõidu sõltlased!
Kas teil on otsas klahvid, millele kõik auto juhtnupud kaardistada? Tõenäoliselt vajate nupukasti! Selles juhendis loome selle nullist. Nupukastil on 32 (!) Saadaolevat nupu olekut. Selle nupukasti kasutamiseks ei ole vaja lisatarkvara. Õpid, kuidas seadistada nuppmaatriksit ja kirjutada (või kopeerida) kood, mida oma Arduinosse üles laadida.
Oluline on teada, et nupukast ei toeta paljusid korraga vajutatavaid nuppe.
Alustame!
Samm: ettevalmistus
Nupukasti loomiseks vajate tööriistu, nuppe ja muid üksusi. Looge oma soovide järgi vabalt nupukast.
Elektroonika:
- Nupud
- Lülitab
- Pöörlevad kodeerijad
- Arduino Pro Micro
- Mini -USB -kaabel
- Juhtmed
Tööriistad:
- Puurida
- Jootma
- Kalibreerimine
- Kruvikeerajad
- Lõikur
- Mutrivõti
Tarkvara:
- Arduino IDE
- Photoshop/Paint (valikuline; saab joonistada käsitsi)
Muu:
- Korpus (karp; saab osta või kohandatud 3D -printida)
- Süsinikust vinüülpakend (valikuline)
- Pöörlevad kodeerimisnupud
- Lüliti katted (valikuline)
- Sildiprinter (valikuline)
- Kummist tihend
Kui teil on kõik (või alustamiseks piisavalt) üksused olemas, võime alustada nupukasti paigutuse kujundamist.
2. samm: kujundage kasti paigutus
Selle sammu jaoks vajalikud tööriistad:
Photoshop/Paint (valikuline; saab joonistada käsitsi)
Nööbikarbi disain võib igaühel olla erinev. Selle juhendi jaoks kasutame aga paigutust, mis koosneb:
- 4x kolmesuunalised lülitid
- 2x ühesuunalised lülitid
- 10x lihtsaid nuppe
- 4x lihtsa nupuga pöörlev kodeerija
Kolme suunaga lülitid:
Lülituslüliteid on mitut tüüpi. Mõni on hetkeline ja mõni jääb paigale, kuni lülitatakse tagasi. See on teie otsustada, millist tüüpi kasutada, kuid soovitan kasutada hetkelisi lüliteid, kuna see nupukast ei suuda korraga paljusid mitmiknuppe aktiveerida. Kuna lülitid on kolmesuunalised (sisse/välja/sisse), on meil saadaval kaheksa (4x2) nuppu.
Lülitite üks võimalus:
Neid võib pidada lihtsateks nuppudeks (välja/sisse). Need võivad olla ka hetkelised või ümberlülitatavad. Jällegi, sõltuvalt isiklikest eelistustest, mida valida. Need annavad meile kaks (2) saadaolevat nuppu.
Lihtsad nupud:
Selliseid nuppe saab kasutada lihtsalt neid vajutades (välja/sisse). Need annavad meile kümme (10) nuppu.
Pöörlevad kodeerijad lihtsa nupuga:
Enamikku (kui mitte kõiki) pöörlevaid kodeerijaid saab lõputult mõlemasse suunda pöörata. Iga kord, kui pöörate neid suunas, mida kasutatakse nupuvajutusena. Neid pöörlevaid kodeerijaid saab ka vajutada, andes neile teise nupu. Pöörlevad koodrid annavad kaksteist (12 = 4x3; pööra vasakule/pööra paremale/vajutage) nuppu.
32 nuppu:
Nende kõigi koostoomine annab meile 32 (8+2+10+12) nupuvajutust!
Paigutusega rahul? Aeg ehitama hakata!
3. samm: mõõtmine ja puurimine
Selle sammu jaoks vajalikud tööriistad:
- Kalibreerimine
- Puurida
- Elektroonika (nupud, lülitid jne)
Mõõtke kõik nupud, mida soovite oma nupukasti lisada. Kui teil on probleeme elektroonika mõõtmete leidmisega, kasutage nende läbimõõdu saamiseks (digitaalset) nihikut.
Märkige korpuse esiküljele elektroonika keskpunktid ja puurige õige suurusega augud. Kas soovite korpust veidi esteetiliselt meeldivamaks muuta? Oodake nuppude paigaldamisega!
Kui olete aukude puurimise lõpetanud, saame selle välja nägema nagu tõeline nupukast!
Samm: paigaldage nupud, pöördlülitid ja lülitid
Selle sammu jaoks vajalikud tööriistad:
- Elektroonika (nupud, lülitid jne)
- Mutrivõti
- Süsinikust vinüülpakend (valikuline)
- Lõikur (valikuline)
Kogu teie elektroonika peaks olema varustatud mutriga, mis keerab selle kohale. Kui ei; mõõtke neid ja ostke õige suurusega mutter.
Kui soovite oma nööbikarbi välimust parandada (isiklik arvamus), võite kasutada süsinikkiust vinüülpakendit. Lõika see oma korpuse näo suuruseks (ja natuke suuremaks), millesse augud puurisid. Kandke vinüül ja keerake see ümber nurkade taha. See tagab, et ümbris jääb kaane sulgemisel oma kohale. Liigne vinüül, mis nüüd avad blokeerib, saab lõikuri abil eemaldada.
Pärast ümbrise panemist (või mitte) saate oma nupukarbi esiosa loomiseks elektroonikasse sobitada. Nüüd peaks teil olema midagi, mis tõesti näeb välja nagu üks! Kahjuks see veel ei tööta…
Samm: kujundage juhtmestiku paigutus
Selle sammu jaoks vajalikud tööriistad:
Photoshop/Paint (valikuline; saab joonistada käsitsi)
Maatriksi loomine:
Maatriksi kasutamine säästab meie aega ja palju tarbetut juhtmestikku ja jootmist. Ma ei lasku ise väga üksikasjalikult, kuid soovitan teil seda artiklit vaadata, kui te ei ole maatriksi mõistega kursis.
Kujundage oma maatriks või kasutage selle juhendi paigutust. Maatriksis kasutame viit rühma. Grupid on ühendatud järgmiste Arduino pistikutega:
- 15: neli pöörlevat kodeerijat
- A0: viis vajutusnuppu
- A1: kaks kolme suuna lülitit ja üks nupp
- A2: kaks kolme suuna lülitit ja üks nupp
- A3: viis nuppu
6. samm: jootmine
Selle sammu jaoks vajalikud tööriistad:
- Jootekolb
- Jootma
- Elektroonika (paigaldatud teie korpusele)
- Arduino Pro Micro
- Juhtmed
Valikuline:
Kui muretsete jootmise pärast, laadige kood järgmisest sammust üles. See võimaldab teil oma ühendusi kontrollida
Soovime rakendada eelmises etapis kavandatud maatriksit tegelikule nupukastile. Võtke selleks aega, eriti kui see on teie esimene jootmine.
Mõned näpunäited:
- Tehke üks rühm korraga
- Aeg -ajalt testimiseks ühendage Arduino arvutiga
- Ärge kuumutage plastnuppe liiga palju, kuna need võivad sulada ja ühendusi katkestada
- Ärge kasutage liiga palju jootet, vähem on parem
- Kasutage iga rühma/maa jaoks erinevat värvi juhtmeid
Samm: koodi kirjutamine
Selle sammu jaoks vajalikud tööriistad:
- Arduino IDE
- Joystick raamatukogu
- Keypad.h (Arduino IDE> Visand> Kaasa raamatukogu> Raamatukogude haldamine …> Otsige klaviatuuri ja installige Mark Stanley ja Alexander Brevigi loodud klaviatuur)
#kaasama #kaasama
#define ENABLE_PULLUPS
#defineeri NUMROTARIES 4 #define NUMBUTTONS 24 #define NUMROWS 5 #define NUMCOLS 5
baidinupud [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 {
bait pin1; bait pin2; int ccwchar; int cwchar; lenduv allkirjastamata süsiniku olek; };
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
#defineeri R_CCW_BEGIN 0x1 #defineeri R_CW_BEGIN 0x2 #defineeri R_START_M 0x3 #defineeri R_CW_BEGIN_M 0x4 #defineeri R_CCW_BEGIN_M 0x5 const allkirjata tabel [6] [4] = {// R_W 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, REG_STARW, 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 märkimata tabel [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},}; #endif
bait rowPins [NUMROWS] = {21, 20, 19, 18, 15};
bait colPins [NUMCOLS] = {14, 16, 10, 9, 8};
Klahvistik buttbx = Klaviatuur (makeKeymap (nupud), rowPins, colPins, NUMROWS, NUMCOLS);
Joystick_ Joystick (JOYSTICK_DEFAULT_REPORT_ID, JOYSTICK_TYPE_JOYSTICK, 32, 0, vale, vale, vale, vale, vale, vale, vale, vale, vale, vale, vale);
tühine seadistus () {
Joystick.begin (); rotary_init ();}
void loop () {
CheckAllEncoders ();
CheckAllButtons ();
}
void CheckAllButtons (tühine) {
if (buttbx.getKeys ()) {jaoks (int i = 0; i
void rotary_init () {
jaoks (int i = 0; i
allkirjastamata char rotary_process (int _i) {
allkirjastamata char pinstate = (digitalRead (rotary [_i].pin2) << 1) | digitalRead (pöörlevad [_i].pin1); pöörlevad [_i].riik = ttabel [pöörlevad [_i].riik & 0xf] [pinstate]; return (pöörlevad [_i].riik & 0x30); }
void CheckAllEncoders (void) {for (int i = 0; i <NUMROTARIES; i ++) {
allkirjastamata char tulemus = rotary_process (i); if (tulemus == DIR_CCW) {Joystick.setButton (pöörlevad .ccwchar, 1); viivitus (50); Joystick.setButton (pöörlevad .ccwchar, 0); }; if (tulemus == DIR_CW) {Joystick.setButton (pöörlevad .cwchar, 1); viivitus (50); Joystick.setButton (pöörlevad .cwchar, 0); }; }}
- Ühendage Arduino Pro Micro arvutiga, ühendades USB -kaabli
- Koodi üleslaadimiseks valige Arduino tüüp, valides Tools> Board:…> Arduino/Genuino Micro.
- Õige USB -pordi valimiseks avage Tools> Port:> COM x (Arduino/Genuino Micro)
- Kontrollige visandit, klõpsates vasakus ülanurgas ✓ (faili all)
- Arduinosse üleslaadimiseks vajutage selle kõrval olevat →
Samm: lisage oma seadmesse
Palju õnne! Sa oled nii kaugele jõudnud. Nüüd on aeg võistelda!
Soovitan:
2d raketi maandumise sim: 3 sammu
2d Rocket Landing Sim: kui soovite lihtsalt simulatsiooni/ mängu mängida, peate alustamiseks tegema tausta, joonistama raketid ja indikaatori (loomulikult on teil vaja Interneti -ühendust), klõpsake siin või minge aadressile https://scratch.mit.edu/projects/432509470
SIM900A 2G moodul + hologramm -SIM -kaart = võitnud kombinatsioon kategoorias "mustus odav"?: 6 sammu
SIM900A 2G moodul + hologramm -SIM -kaart = võidukombinatsioon kategoorias "mustus odav"?: Selle kümnendi moesõna IoT siseneb mõnikord isegi nende inimeste meeltesse, kes peavad end moeröögatusele vastupidavaks, sealhulgas ka mina. Ühel päeval sirvisin Internet ja nägin ettevõtet, millest ma pole kunagi varem kuulnud (hologramm) SIM -kaarte ära andma
DIY Sim Racing Display Arduino: 3 sammu
DIY Sim Racing Display Arduino: Nii saate ehitada väga lihtsa ja odava Sim Racing USB -ekraani koos Arduino UNO ja 3,5 " TFT -ekraan. Sellel on Assetto Corsa jaoks mõeldud API, mis võtab Visual Studio C# programmeeritud mängu jagatud mälust andmed ja saadab seejärel
Sim Racing Button Box: 7 sammu (koos piltidega)
Sim Racing Button Box: Nupukast on Sim Racingus kasutatav seade, mis võimaldab erinevatele auto juhtnuppudele määrata nuppe, lüliteid ja nuppe. Tavalised nupuülesanded on näiteks käivitusnupp, raadiosaatja, päringuauk jne. Lülituslülitid sobivad suurepäraselt klaasipuhastite, esipeade
Juke Box väga noortele Aka Raspi-Music-Box: 5 sammu
Juke Box väga noortele … Aka Raspi-Music-Box: inspireeritud juhendatavast " Raspberry-Pi-based-RFID-Music-Robot " kirjeldades muusikamängija ROALDH ehitust oma 3-aastasele, otsustasin ehitada oma veelgi väiksematele lastele juke boxi. Põhimõtteliselt on see kast 16 nupuga ja Raspi 2 i