Sommario:
- Passaggio 1: preparazione
- Passaggio 2: progettare il layout della scatola
- Passaggio 3: misurare e forare
- Passaggio 4: montare i pulsanti, le rotative e le levette
- Passaggio 5: progettare il layout del cablaggio
- Passaggio 6: saldatura
- Passaggio 7: scrittura del codice
- Passaggio 8: aggiungi al tuo rig
Video: Scatola pulsanti Sim Racing: 8 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:03
Benvenuto ai fanatici delle corse sim!
Stai esaurendo le combinazioni di tasti su cui mappare tutti i controlli della tua auto? Probabilmente hai bisogno di una scatola dei pulsanti! In questo Instructable ne creeremo uno da zero. La casella dei pulsanti avrà 32 (!) stati di pulsanti disponibili. Non è necessario alcun software aggiuntivo per utilizzare questa casella di pulsanti. Imparerai come impostare una matrice di pulsanti e scrivere (o copiare) il codice da caricare sul tuo Arduino.
È importante sapere che la casella dei pulsanti non supporta molti pulsanti premuti contemporaneamente.
Iniziamo!
Passaggio 1: preparazione
Avrai bisogno di alcuni strumenti, pulsanti e altri elementi per creare la casella dei pulsanti. Sentiti libero di creare la scatola dei pulsanti secondo il tuo desiderio.
Elettronica:
- pulsanti
- Attiva/disattiva
- Encoder rotativi
- Arduino Pro Micro
- Cavo da mini USB a USB
- fili
Utensili:
- Trapano
- Saldare
- Calibro
- cacciaviti
- taglierina
- Chiave inglese
Software:
- Arduino IDE
- Photoshop/Paint (opzionale; può essere disegnato a mano)
Altro:
- Custodia (una scatola; può essere acquistata o stampata in 3D personalizzata)
- Involucro in vinile carbonio (opzionale)
- Manopole dell'encoder rotativo
- Coperchi interruttori (opzionali)
- Stampante per etichette (opzionale)
- Passacavo in gomma
Una volta che hai tutti (o abbastanza per iniziare) gli elementi, possiamo iniziare a progettare il layout della casella dei pulsanti.
Passaggio 2: progettare il layout della scatola
Strumenti necessari per questo passaggio:
Photoshop/Paint (opzionale; può essere disegnato a mano)
Il design di una pulsantiera può essere diverso per tutti. Tuttavia, per questo Instructable utilizzeremo un layout che consiste in:
- 4 interruttori a levetta a tre vie
- 2x interruttori a levetta unidirezionali
- 10x semplici pulsanti
- Encoder rotativo 4x con pulsante semplice
Interruttori a levetta a tre vie:
Esistono molti tipi di interruttori a levetta. Alcuni sono momentanei e altri rimangono sul posto finché non vengono ripristinati. Dipende da te quale tipo utilizzare, ma ti consiglio di utilizzare interruttori momentanei poiché questa casella di pulsanti non è in grado di avere molti pulsanti multipli attivi contemporaneamente. Poiché gli interruttori a levetta sono a tre vie (on/off/on), abbiamo a disposizione otto pulsanti (4x2).
Interruttori a levetta unidirezionali:
Questi possono essere considerati dei semplici pulsanti (off/on). Questi possono anche essere momentanei o alternati. Ancora una volta, fino alle preferenze personali quale scegliere. Questi ci danno due (2) pulsanti disponibili.
Pulsanti semplici:
Pulsanti come questi possono essere usati semplicemente premendoli (off/on). Questi ci daranno dieci (10) pulsanti.
Encoder rotativi con pulsante semplice:
La maggior parte (se non tutti) gli encoder rotativi possono essere ruotati in entrambe le direzioni all'infinito. Ogni volta che li ruoti in una direzione viene utilizzato come pressione di un pulsante. Questi encoder rotativi possono anche essere premuti dando loro un altro pulsante. Gli encoder rotativi forniscono dodici pulsanti (12 = 4x3; ruota a sinistra/ruota a destra/preme).
32 pulsanti:
Averli tutti insieme ci dà 32 (8 + 2 + 10 + 12) pressioni di pulsanti!
Soddisfatto del layout? È ora di iniziare a costruire!
Passaggio 3: misurare e forare
Strumenti necessari per questo passaggio:
- Calibro
- Trapano
- Elettronica (pulsanti, interruttori, ecc.)
Misura tutti i pulsanti che vuoi aggiungere alla tua casella dei pulsanti. Se hai difficoltà a trovare le dimensioni della tua elettronica, usa un calibro (digitale) per ottenere il diametro di esse.
Segna i punti centrali dell'elettronica sulla parte anteriore della custodia e fai dei fori con le dimensioni corrette. Stai cercando di rendere la custodia un po' più esteticamente gradevole? Aspetta con il montaggio dei bottoni!
Una volta che hai finito di praticare i fori, possiamo farla sembrare una vera scatola di bottoni!
Passaggio 4: montare i pulsanti, le rotative e le levette
Strumenti necessari per questo passaggio:
- Elettronica (pulsanti, interruttori, ecc.)
- Chiave inglese
- Involucro in vinile carbonio (opzionale)
- Taglierina (opzionale)
Tutta la tua elettronica dovrebbe venire con un dado per avvitarlo in posizione. Altrimenti; misurali e acquista il dado della dimensione corretta.
Se vuoi migliorare (opinione personale) l'aspetto della tua scatola dei bottoni, puoi usare un involucro di vinile in fibra di carbonio. Taglialo alla dimensione (e un po' più grande) della faccia del tuo recinto in cui hai praticato i fori. Applicare il vinile e avvolgerlo intorno agli angoli sul retro. Ciò assicurerà che l'involucro rimanga in posizione quando la custodia è chiusa. Il vinile in eccesso che ora blocca i fori può essere rimosso utilizzando un cutter.
Dopo aver indossato l'involucro (o meno) puoi inserire l'elettronica per creare la parte anteriore della tua scatola dei pulsanti. Ora dovresti avere già qualcosa che lo somiglia davvero! Purtroppo non funziona ancora…
Passaggio 5: progettare il layout del cablaggio
Strumenti necessari per questo passaggio:
Photoshop/Paint (opzionale; può essere disegnato a mano)
Creazione di una matrice:
L'uso di una matrice ci farà risparmiare tempo e molti cablaggi e saldature non necessari. Non entrerò nei dettagli personalmente, ma ti suggerirò di dare un'occhiata a questo articolo se non hai familiarità con il concetto di matrice.
Progetta la tua matrice o usa il layout di questo Instructable. Nella matrice useremo cinque gruppi. I gruppi sono collegati ai seguenti pinout su Arduino:
- 15: quattro encoder rotativi
- A0: cinque pulsanti
- A1: due interruttori a tre vie e un pulsante
- A2: due interruttori a tre vie e un pulsante
- A3: cinque pulsanti
Passaggio 6: saldatura
Strumenti necessari per questo passaggio:
- Saldatore
- Saldare
- Elettronica (montata sulla custodia)
- Arduino Pro Micro
- fili
Opzionale:
Carica prima il codice dal passaggio successivo se sei preoccupato per la saldatura. Questo ti permetterà di controllare le tue connessioni
Vogliamo applicare la matrice progettata nel passaggio precedente alla casella dei pulsanti effettiva. Prenditi del tempo per questo, soprattutto se è la prima volta che saldate.
Alcuni suggerimenti:
- Fai un gruppo alla volta
- Collega l'Arduino al tuo computer per testarlo di tanto in tanto
- Non riscaldare troppo i pulsanti di plastica poiché possono fondersi e rompere i collegamenti
- Non usare troppa saldatura, meno è meglio
- Utilizzare fili di colore diverso per ogni gruppo/terra
Passaggio 7: scrittura del codice
Strumenti necessari per questo passaggio:
- Arduino IDE
- Libreria joystick
- Keypad.h (Arduino IDE > Schizzo > Includi libreria > Gestisci librerie… > Cerca Keypad e installa quello creato da Mark Stanley e Alexander Brevig)
#include #include
#define ENABLE_PULLUPS
#define NUMROTARIES 4 #define NUMBUTTONS 24 #define NUMROWS 5 #define NUMCOLS 5
pulsanti di byte[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}, };
struttura rotariesdef {
byte pin1; byte pin2; int ccwchar; int cwchar; stato char volatile senza segno; };
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 ttabile[6][4] = { //_BEG_IN,_START (00) 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_M,_BEGIN | 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}, //_IN_CCW_FNEXT_, // R_CCW_BEGIN_,_CCW_BEGIN_, R_CCW_BEGIN} R_START, R_START | DIR_CCW}, // R_CCW_NEXT {R_CCW_NEXT, R_CCW_FINAL, R_CCW_BEGIN, R_START}, }; #finisci se
byte rowPins[NUMROWS] = {21, 20, 19, 18, 15};
byte colPins[NUMCOLS] = {14, 16, 10, 9, 8};
Keypad buttbx = Keypad(makeKeymap(buttons), rowPins, colPins, NUMROWS, NUMCOLS);
Joystick_ Joystick(JOYSTICK_DEFAULT_REPORT_ID, JOYSTICK_TYPE_JOYSTICK, 32, 0, falso, falso, falso, falso, falso, falso, falso, falso, falso, falso, falso);
void setup() {
Joystick.begin(); rotante_init();}
ciclo vuoto() {
CheckAllEncoder();
CheckAllButtons();
}
void CheckAllButtons(void) {
if (buttbx.getKeys()) { for (int i=0; i
void rotary_init() {
per (int i=0;i
unsigned char rotary_process(int _i) {
unsigned char pinstate = (digitalRead(rotaries[_i].pin2) << 1) | digitalRead(rotatori[_i].pin1); rotaries[_i].state = ttable[rotaries[_i].state & 0xf][pinstate]; ritorno (rotatori[_i].state & 0x30); }
void CheckAllEncoders(void) { for (int i=0; i < NUMROTARIES;i++) {
unsigned char risultato = rotary_process(i); if (risultato == DIR_CCW) { Joystick.setButton(rotaries.ccwchar, 1); ritardo(50); Joystick.setButton(rotazioni.ccwchar, 0); }; if (risultato == DIR_CW) { Joystick.setButton(rotaries.cwchar, 1); ritardo(50); Joystick.setButton(rotazioni.cwchar, 0); }; } }
- Collega il tuo Arduino Pro Micro al computer collegando il cavo USB
- Per caricare il codice seleziona il tipo di Arduino andando su Strumenti > Scheda:… > Arduino/Genuino Micro.
- Per selezionare la porta USB corretta vai su Strumenti > Porta: > COM x (Arduino/Genuino Micro)
- Verifica lo schizzo facendo clic su ✓ nell'angolo in alto a sinistra (sotto File)
- Premi il → accanto ad esso per caricarlo su Arduino
Passaggio 8: aggiungi al tuo rig
Congratulazioni! Sei arrivato così lontano. Ora è il momento di correre!
Consigliato:
Interruttore relè a due pulsanti: 3 passaggi
Interruttore relè a due pulsanti: questo articolo mostra come attivare e disattivare l'interruttore a pulsante. Questo circuito può essere eseguito con due interruttori. Premi un interruttore e la lampadina si accende. Premi un altro interruttore e la lampadina si spegne. Tuttavia, questo Ins
Usa i pulsanti sul tuo Magicbit [Magicblocks]: 5 passaggi
Usa i pulsanti sul tuo Magicbit [Magicblocks]: questo tutorial ti insegnerà a usare i pulsanti sul tuo Magicbit usando Magicblocks. Stiamo usando magicbit come scheda di sviluppo in questo progetto basato su ESP32. Pertanto qualsiasi scheda di sviluppo ESP32 può essere utilizzata in questo progetto
Arduino controlla la velocità e la direzione del motore CC utilizzando un potenziometro, display OLED e pulsanti: 6 passaggi
Arduino controlla la velocità e la direzione del motore CC utilizzando un potenziometro, display OLED e pulsanti: in questo tutorial impareremo come utilizzare un driver L298N DC MOTOR CONTROL e un potenziometro per controllare la velocità e la direzione di un motore CC con due pulsanti e visualizzare il valore del potenziometro sul display OLED.Guarda un video dimostrativo
Arduino Sim Racing Display fai da te: 3 passaggi
Display Sim Racing fai-da-te Arduino: ecco come costruire un display USB Sim Racing molto semplice ed economico con un Arduino UNO e un 3,5quot; Display TFT. Dispone di un'API per Assetto Corsa che preleva i dati dalla Shared Memory del gioco programmata in C# in Visual Studio, quindi invia il
Scatola dei pulsanti Sim Racing: 7 passaggi (con immagini)
Scatola pulsanti Sim Racing: una scatola pulsanti è un dispositivo utilizzato in Sim Racing che ti consente di assegnare pulsanti, interruttori e manopole a vari controlli dell'auto. Le assegnazioni dei pulsanti comuni sono cose come un pulsante di avvio, PTT, richiesta fossa, ecc. Gli interruttori a levetta funzionano alla grande per tergicristalli, headl