Mục lục:

Hộp nút Sim Racing: 8 bước
Hộp nút Sim Racing: 8 bước

Video: Hộp nút Sim Racing: 8 bước

Video: Hộp nút Sim Racing: 8 bước
Video: DIY SIM FLAG GEAR SPOTTER AND PIT INDICATOR 2024, Tháng mười một
Anonim
Hộp nút Sim Racing
Hộp nút Sim Racing

Chào mừng những người nghiện đua sim!

Bạn có sắp hết chìa khóa để ánh xạ tất cả các điều khiển ô tô của mình tới không? Có lẽ bạn đang cần một hộp nút! Trong Có thể hướng dẫn này, chúng tôi sẽ tạo một từ đầu. Hộp nút sẽ có sẵn 32 trạng thái nút (!). Không cần phần mềm bổ sung để sử dụng hộp nút này. Bạn sẽ học cách thiết lập ma trận nút và viết (hoặc sao chép) mã để tải lên Arduino của bạn.

Điều quan trọng cần biết là hộp nút không hỗ trợ nhiều nút được nhấn đồng thời.

Bắt đầu nào!

Bước 1: Chuẩn bị trước

Preperation
Preperation

Bạn sẽ cần một số công cụ, nút và nhiều mục khác để tạo hộp nút. Hãy thoải mái tạo hộp nút theo ý muốn của bạn.

Thiết bị điện tử:

  • nút
  • Chuyển đổi
  • Bộ mã hóa quay
  • Arduino Pro Micro
  • Cáp USB mini sang USB
  • Dây điện

Công cụ:

  • Máy khoan
  • Hàn
  • Calibre
  • Tua vít
  • Máy cắt
  • Cờ lê

Phần mềm:

  • Arduino IDE
  • Photoshop / Paint (tùy chọn; có thể được vẽ bằng tay)

Khác:

  • Bao vây (một hộp; có thể được mua hoặc in 3D tùy chỉnh)
  • Bọc vinyl carbon (tùy chọn)
  • Nút bấm bộ mã hóa quay
  • Nắp đậy chuyển đổi (tùy chọn)
  • Máy in nhãn (tùy chọn)
  • Grommet cao su

Khi bạn có tất cả (hoặc đủ để bắt đầu), chúng ta có thể bắt đầu thiết kế bố cục của hộp nút.

Bước 2: Thiết kế bố cục hộp

Các công cụ cần thiết cho bước này:

Photoshop / Paint (tùy chọn; có thể được vẽ bằng tay)

Thiết kế của một hộp nút có thể khác nhau đối với tất cả mọi người. Tuy nhiên, đối với Có thể hướng dẫn này, chúng tôi sẽ sử dụng bố cục bao gồm:

  • 4x công tắc bật tắt ba chiều
  • 2x công tắc bật tắt một chiều
  • 10 lần nút nhấn đơn giản
  • Bộ mã hóa vòng quay 4x với nút đơn giản

Công tắc bật tắt ba cách:

Có nhiều loại công tắc bật tắt. Một số là tạm thời và một số giữ nguyên vị trí cho đến khi chuyển trở lại. Việc sử dụng loại nào là tùy thuộc vào bạn, nhưng tôi khuyên bạn nên sử dụng công tắc tạm thời vì hộp nút này không có khả năng có nhiều nút hoạt động cùng một lúc. Vì các công tắc bật tắt là ba chiều (bật / tắt / bật), chúng tôi có tám nút (4x2) có sẵn.

Một cách chuyển đổi công tắc:

Đây có thể coi là những nút đơn giản (tắt / mở). Đây cũng có thể là tạm thời hoặc chuyển đổi. Một lần nữa, tùy thuộc vào sở thích cá nhân mà chọn. Chúng cung cấp cho chúng tôi hai (2) nút có sẵn.

Các nút ấn đơn giản:

Các nút như thế này có thể được sử dụng bằng cách đẩy chúng (tắt / mở). Chúng sẽ cung cấp cho chúng tôi mười (10) nút.

Bộ mã hóa quay với nút nhấn đơn giản:

Hầu hết (nếu không phải tất cả) bộ mã hóa quay có thể được quay vô hạn theo cả hai hướng. Mỗi khi bạn xoay chúng theo một hướng, nó được sử dụng như một lần nhấn nút. Các bộ mã hóa quay này cũng có thể được nhấn bằng một nút khác. Bộ mã hóa quay cung cấp mười hai nút (12 = 4x3; xoay trái / xoay phải / nhấn).

32 nút:

Kết hợp tất cả chúng lại với nhau mang lại cho chúng ta 32 (8 + 2 + 10 + 12) lần nhấn nút!

Bạn hài lòng với cách bố trí? Đã đến lúc bắt đầu xây dựng!

Bước 3: Đo và khoan

Đo và khoan
Đo và khoan
Đo và khoan
Đo và khoan

Các công cụ cần thiết cho bước này:

  • Calibre
  • Máy khoan
  • Điện tử (nút, công tắc, v.v.)

Đo tất cả các nút mà bạn muốn thêm vào hộp nút của mình. Nếu bạn gặp khó khăn khi tìm kích thước của thiết bị điện tử của mình, hãy sử dụng thước cặp (kỹ thuật số) để lấy đường kính của chúng.

Đánh dấu các điểm chính giữa của thiết bị điện tử trên bề mặt của vỏ bọc của bạn và khoan lỗ với kích thước chính xác. Tìm cách làm cho bao vây thẩm mỹ hơn một chút? Chờ với việc lắp các nút!

Khi bạn đã khoan xong các lỗ, chúng tôi có thể làm cho nó bắt đầu trông giống như một hộp nút thật!

Bước 4: Điều chỉnh các Nút, Hạn ngạch và Chuyển đổi

Điều chỉnh các Nút, Hạn ngạch và Chuyển đổi
Điều chỉnh các Nút, Hạn ngạch và Chuyển đổi
Điều chỉnh các Nút, Hạn ngạch và Chuyển đổi
Điều chỉnh các Nút, Hạn ngạch và Chuyển đổi

Các công cụ cần thiết cho bước này:

  • Điện tử (nút, công tắc, v.v.)
  • Cờ lê
  • Bọc vinyl carbon (tùy chọn)
  • Máy cắt (tùy chọn)

Tất cả các thiết bị điện tử của bạn nên đi kèm với một đai ốc để vặn nó vào đúng vị trí. Nếu không; đo chúng và mua đai ốc kích thước chính xác.

Nếu bạn muốn cải thiện (ý kiến cá nhân) giao diện của hộp nút của bạn, bạn có thể sử dụng một bọc vinyl sợi carbon. Cắt nó theo kích thước (và lớn hơn một chút) của mặt bao vây mà bạn đã khoan các lỗ. Dán vinyl và quấn nó quanh các góc cho mặt sau. Điều này sẽ đảm bảo màng bọc ở đúng vị trí khi đóng màng bọc. Bạn có thể dùng dao cắt để loại bỏ nhựa vinyl quá mức làm bít các lỗ.

Sau khi đặt màng bọc (hoặc không), bạn có thể lắp các thiết bị điện tử vào để tạo ra mặt trước của hộp nút của bạn. Bây giờ bạn sẽ có một cái gì đó thực sự giống như một cái rồi! Đáng buồn thay, nó vẫn chưa hoạt động…

Bước 5: Thiết kế bố cục đi dây

Thiết kế bố cục đi dây
Thiết kế bố cục đi dây

Các công cụ cần thiết cho bước này:

Photoshop / Paint (tùy chọn; có thể được vẽ bằng tay)

Tạo ma trận:

Sử dụng ma trận sẽ giúp chúng ta tiết kiệm thời gian và rất nhiều công đoạn nối dây và hàn không cần thiết. Bản thân tôi sẽ không đi sâu vào chi tiết, nhưng sẽ đề nghị bạn xem qua bài viết này nếu bạn không quen với khái niệm ma trận.

Thiết kế ma trận của riêng bạn hoặc sử dụng bố cục từ Có thể hướng dẫn này. Trong ma trận, chúng ta sẽ sử dụng năm nhóm. Các nhóm được kết nối với các sơ đồ chân sau trên Arduino:

  • 15: bốn bộ mã hóa quay
  • A0: năm nút nhấn
  • A1: hai nút bật tắt ba chiều và một nút nhấn
  • A2: hai nút bật tắt ba chiều và một nút nhấn
  • A3: năm nút nhấn

Bước 6: Hàn

Hàn
Hàn
Hàn
Hàn

Các công cụ cần thiết cho bước này:

  • Hàn sắt
  • Hàn
  • Điện tử (gắn trên vỏ của bạn)
  • Arduino Pro Micro
  • Dây điện

Không bắt buộc:

Tải lên mã từ bước tiếp theo trước tiên nếu bạn lo lắng về việc hàn. Điều này sẽ cho phép bạn kiểm tra các kết nối của mình

Chúng tôi muốn áp dụng ma trận được thiết kế ở bước trước cho hộp nút thực tế. Hãy dành chút thời gian cho việc này, đặc biệt nếu đây là lần đầu tiên bạn hàn.

Một số lời khuyên:

  • Làm một nhóm tại một thời điểm
  • Kết nối Arduino với máy tính của bạn để thỉnh thoảng kiểm tra
  • Không làm nóng các nút nhựa quá nhiều vì chúng có thể bị chảy và đứt các kết nối
  • Đừng sử dụng quá nhiều chất hàn, ít hơn là tốt hơn
  • Sử dụng dây màu khác nhau cho từng nhóm / mặt đất

Bước 7: Viết mã

Các công cụ cần thiết cho bước này:

  • Arduino IDE
  • Thư viện cần điều khiển
  • Keypad.h (Arduino IDE> Sketch> Bao gồm Thư viện> Quản lý Thư viện…> Tìm kiếm Bàn phím và cài đặt bàn phím được tạo bởi Mark Stanley và Alexander Brevig)

#include #include

#define ENABLE_PULLUPS

#define CON SỐ 4 #define NUMBUTTONS 24 #define NUMROWS 5 #define NUMCOLS 5

nút 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}, };

struct rotariesdef {

byte pin1; byte pin2; int ccwchar; int cwchar; trạng thái char không dấu dễ bay hơi; };

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 ttable [6] [4] #define R_START_M 0x3 #define R_CW_BEGIN_M 0x4 #define R_CCW_BEGIN_M 0x5 const unsigned char ttable [6] [4]_BEGIN = {// R_START (00), // R_START_BEGIN, // R, R_START_BEG} 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_CW_BEGIN_M, R_START | 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_CCWART_BEGIN, // R_CCW_NEXT, RCC_START_BEGIN {R_CCW_NEXT, RCC_START_BEGIN R_START, R_START | DIR_CCW}, // R_CCW_NEXT {R_CCW_NEXT, R_CCW_FINAL, R_CCW_BEGIN, R_START},}; #endif

byte rowPins [NUMROWS] = {21, 20, 19, 18, 15};

byte colPins [NUMCOLS] = {14, 16, 10, 9, 8};

Bàn phím môngbx = Bàn phím (makeKeymap (nút), rowPins, colPins, NUMROWS, NUMCOLS);

Cần điều khiển_ Cần điều khiển (JOYSTICK_DEFAULT_REPORT_ID, JOYSTICK_TYPE_JOYSTICK, 32, 0, 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 (môngbx.getKeys ()) {for (int i = 0; i

void rotary_init () {

for (int i = 0; i

unsigned char rotary_process (int _i) {

unsigned char pinstate = (digitalRead (rotaries [_i].pin2) << 1) | digitalRead (rotaries [_i].pin1); rotaries [_i].state = ttable [rotaries [_i].state & 0xf] [pinstate]; return (rotaries [_i].state & 0x30); }

void CheckAllEncoders (void) {for (int i = 0; i <NUMROTARIES; i ++) {

kết quả không dấu char = rotary_process (i); if (result == DIR_CCW) {Joystick.setButton (rotaries .ccwchar, 1); chậm trễ (50); Joystick.setButton (rotaries .ccwchar, 0); }; if (result == DIR_CW) {Joystick.setButton (rotaries .cwchar, 1); chậm trễ (50); Joystick.setButton (rotaries .cwchar, 0); }; }}

  1. Kết nối Arduino Pro Micro với máy tính bằng cách cắm cáp USB
  2. Để tải mã lên, hãy chọn loại Arduino bằng cách đi tới Công cụ> Bảng:…> Arduino / Genuino Micro.
  3. Để chọn đúng cổng USB, hãy vào Công cụ> Cổng:> COM x (Arduino / Genuino Micro)
  4. Xác minh bản phác thảo bằng cách nhấp vào dấu ✓ ở góc trên cùng bên trái (trong Tệp)
  5. Nhấn → bên cạnh nó để tải nó lên Arduino

Bước 8: Thêm vào giàn khoan của bạn

Thêm vào giàn khoan của bạn
Thêm vào giàn khoan của bạn

Xin chúc mừng! Bạn đã đi rất xa. Bây giờ là thời gian để chạy đua!

Đề xuất: