Mục lục:

Bộ điều khiển trò chơi điện tử Arduino: 4 bước
Bộ điều khiển trò chơi điện tử Arduino: 4 bước

Video: Bộ điều khiển trò chơi điện tử Arduino: 4 bước

Video: Bộ điều khiển trò chơi điện tử Arduino: 4 bước
Video: The Basic Starter Arduino UNO #13. Joystick 2024, Tháng mười một
Anonim
Bộ điều khiển trò chơi điện tử Arduino
Bộ điều khiển trò chơi điện tử Arduino

Bạn có một bộ Arduino đang đặt xung quanh nhưng không biết phải làm gì với nó? Có lẽ là không, nhưng trong bài Có thể hướng dẫn này, tôi sẽ chỉ cho bạn từng bước cách xây dựng, viết mã và tích hợp Arduino vào dự án của bạn. Hiện tại, hướng dẫn này chỉ được thử nghiệm với Clickteam Fusion Developer 2.5 nhưng các bước xây dựng và mã Arduino có thể được sử dụng phổ biến. Hướng dẫn này có thể được cập nhật cho Unreal và Unity trong tương lai.

Bước 1: Danh sách mua sắm

  • Arduino Uno hoặc tương tự
  • Cáp USB
  • (400 điểm) Breadboard hoặc 1 x perf / strip board
  • Dây tương thích Arduino.
  • Cảm biến khác nhau. Tôi đã sử dụng phần sau trong dự án ví dụ của mình:
  • Bảng điều khiển gắn chiết áp 10K thân thiện với bảng mạch
  • Điện trở quang
  • Lực điện trở nhạy cảm

Bước 2: Kết nối

Kết nối
Kết nối

Lưu ý: Đây chỉ là những cảm biến mà cá nhân tôi đã sử dụng cho dự án của mình. Điều này có nghĩa là có rất nhiều lựa chọn ngoài kia. Hướng dẫn từng bước về cách đấu dây có thể tìm thấy trên các trang web khác nhau tùy thuộc vào cảm biến.

Bước 3: Mã Arduino

Sao chép và tải mã này lên Arduino của bạn nếu bạn muốn sử dụng cùng loại cảm biến với tôi. Nếu không, bạn có thể sử dụng mã của riêng mình cho các cảm biến của mình. Điều quan trọng toàn cầu duy nhất được yêu cầu là các biến số bạn muốn sử dụng trong công cụ trò chơi của mình được in ra màn hình nối tiếp hoặc có thể được đọc theo một số cách khác.

// Chúng được đặt ở đầu và không thay đổi khi chương trình đang chạy. Giống như ANALOG IN mà pin sử dụng.

const int potPin = A0; const int fsrAnalogPin = 5; const int photocellPin = 2; // Các biến: // CẢM BIẾN ÁNH SÁNG: // Biến lượng ánh sáng: int photocellReading; // POTENTIOMETER // Giá trị của Potentiometer int value; // CẢM BIẾN ÁP SUẤT // Đây là biến dữ liệu thô từ cảm biến áp suất. int fsrReading; // Phiên bản được ánh xạ của biến fsrReading int pressure; void setup () {// đặt mã thiết lập của bạn ở đây, để chạy một lần: pinMode (potPin, INPUT); Serial.begin (9600); } void loop () {// CẢM BIẾN ÁP SUẤT // Ở đây chúng ta sử dụng fsrAnalogPin được chỉ định để đọc dữ liệu từ chân đó. fsrReading = analogRead (fsrAnalogPin); // Ánh xạ giá trị 0-1023 thành 0-255. áp suất = bản đồ (fsrReading, 0, 1023, 0, 255); // Kiểm tra xem áp suất có thấp hơn hoặc vượt quá một lượng nhất định in một trong hai hay không. Biến in này được sử dụng sau này trong game engine. if (áp suất 70) {Serial.print ("6"); } // Giá trị POTENTIOMETER = analogRead (potPin); // Đọc và lưu giá trị tương tự từ chiết áp value = map (value, 0, 1023, 0, 360); // Ánh xạ giá trị 0-1023 thành 0-360 // Ở đây chúng tôi chia 360 thành sáu đoạn khác nhau. // Bạn có thể thay đổi số lượng phân đoạn thành số lượng cao hơn. Mỗi phân đoạn sau đó sẽ có một phạm vi nhỏ hơn. Ví dụ: 8 phân đoạn sẽ có phạm vi 45 mỗi phân đoạn. (360 / số lượng phân đoạn) // Nếu giá trị hiện tại rơi vào một phân đoạn, nó sẽ in ra tên của phân đoạn đó. if (giá trị 60 và giá trị 120 và giá trị 180 và giá trị 240 và giá trị 300 và giá trị <375) Serial.print ("Sáu"); // CẢM BIẾN ÁNH SÁNG // Ở đây chúng ta lại đọc và thiết lập một biến, trong trường hợp này là photocellReading. photocellReading = analogRead (photocellPin); // Chúng tôi kiểm tra lượng ánh sáng, với tối và rất tối in giá trị 3 và ánh sáng bình thường in 4. if (photocellReading <10) {Serial.println ("- 3"); } else if (photocellReading <200) {Serial.println ("- 3 -"); } else if (photocellReading <500) {Serial.println ("- 4 -"); } // Các số trong Serial: // Số đầu tiên là cảm biến áp suất, 5 không bấm được và 6 bấm. // Sau đó là đoạn Potentiometer hiện đang ở trên. // Và số cuối cùng là 3 = dark hoặc 4 = light.

Bước 4: Trong Game Engine: Nhấp vào Đội 2.5

Trong Trình quản lý tiện ích mở rộng, hãy tìm Đối tượng nối tiếp và cài đặt cái này.

Đặt Đối tượng nối tiếp, một bộ đếm và một chuỗi vào khung của bạn. (Nhấp chuột phải vào khung - chèn đối tượng)

Trong Trình chỉnh sửa sự kiện, hãy tạo một sự kiện: Nếu Dữ liệu đang chờ: Đặt Chuỗi có thể thay đổi thành GetData ("Đối tượng nối tiếp")

Điều này sẽ đặt chuỗi thành bất kỳ dữ liệu nào đang được gửi bởi Arduino, chuỗi bây giờ sẽ trông giống như Serial Monitor.

Tạo sự kiện khác Luôn luôn: Đặt bộ đếm thành: Tìm (chuỗi $ ("Chuỗi"), "4", 0)

Ví dụ này sẽ cố gắng tìm số 4 bằng ánh sáng như có thể thấy trong Mã Arduino.

Nếu nó tìm thấy 4, nó sẽ đặt bộ đếm là 4, nếu nó không tìm thấy 4, bộ đếm sẽ là -1.

Bây giờ bạn có thể thêm một sự kiện mới để làm điều gì đó với kết quả này:

Nếu counter = -1: Ở đây bạn có thể đặt những gì sẽ xảy ra nếu nó là false, chẳng hạn như hoạt ảnh của một ngọn đèn đang tắt.

Nếu bộ đếm = -1: Điều này có nghĩa là nó đã tìm thấy biến và bộ đếm đã được đặt thành bất kỳ biến nào có thể là (miễn là nó không phải là -1), ở đây bạn có thể đặt nó để hoạt ảnh đèn chuyển sang trạng thái bật.

Về cơ bản bằng cách sử dụng các bộ đếm được đặt thành -1 là sai hoặc -1 là đúng, bạn có thể làm cho các sự kiện xảy ra.

Đề xuất: