Mục lục:

Mastermind Star Wars với Arduino MEGA: 5 bước (kèm hình ảnh)
Mastermind Star Wars với Arduino MEGA: 5 bước (kèm hình ảnh)

Video: Mastermind Star Wars với Arduino MEGA: 5 bước (kèm hình ảnh)

Video: Mastermind Star Wars với Arduino MEGA: 5 bước (kèm hình ảnh)
Video: Ông nào tự tin bắn vào pha này ? #shorts 2024, Tháng bảy
Anonim
Mastermind Star Wars với Arduino MEGA
Mastermind Star Wars với Arduino MEGA
Mastermind Star Wars với Arduino MEGA
Mastermind Star Wars với Arduino MEGA
Mastermind Star Wars với Arduino MEGA
Mastermind Star Wars với Arduino MEGA

Đây là những thời điểm bất lợi cho sự nổi loạn. Mặc dù Death Star đã bị phá hủy, nhưng quân đội Imperial đang sử dụng phần cứng miễn phí và Arduino như một vũ khí bí mật.

Đó là ưu điểm của các công nghệ miễn phí, bất kỳ người nào (dù tốt hay xấu) đều có thể sử dụng chúng.

Trong một căn cứ ẩn nằm trên hành tinh Anoat, họ đang chế tạo một máy in 3D có khả năng tái tạo Imperial Destroyer.

Giải pháp duy nhất để đánh bại Đế chế là một nhóm phiến quân do Luke Skycuartielles và Obi-Wan Banzi chỉ huy, đánh bại quân triều đình và lấy chiếc chìa khóa giúp truy cập vào kế hoạch phá hủy vũ khí bí mật.

Chìa khóa này bao gồm 4 màu và bạn có 10 lần thử để giải mã nó. Chỉ có bốn quy tắc:

  1. Màu sắc có thể được lặp lại
  2. Đèn trắng cho biết bạn đã đánh đúng màu và đúng vị trí
  3. Đèn tím cho biết bạn đã đánh màu nhưng không phải vị trí
  4. Nếu không có ánh sáng, bạn chưa đoán được màu sắc hoặc vị trí.

Bạn phải nhanh chóng vì ở thái cực khác, ác nhân Darth Ballmer sẽ cố gắng lấy chìa khóa trước bạn. Trong trường hợp đó, bạn sẽ không thể tìm ra nó là gì và bạn sẽ không có quyền truy cập vào kế hoạch của vũ khí bí mật. Nhiệm vụ của bạn sẽ thất bại.

Padawan bé nhỏ, có thể lực lượng đi cùng bạn sẽ giải mã được chiếc chìa khóa và nhờ đó có thể cứu được Thiên hà.

Bước 1: Vật liệu

Vật liệu
Vật liệu

Nguyên liệu cần thiết để làm Mastermind Star Wars với Arduino được chia thành ba phần.

  • Mộc và văn phòng phẩm để thực hiện nhà ở
  • Linh kiện, cáp và Arduino cho tất cả các thiết bị điện tử
  • Công cụ

Hãy bắt đầu với nghề mộc. Các tài liệu sau đây là cần thiết:

  • 2 x ván MDF từ 90x60
  • 1 x tờ giấy rau

Trong phần điện tử, vật liệu sau là cần thiết:

  • 1 x Dải NeoPixel 5 mét
  • 1 x Arduino MEGA
  • 1 x tụ điện 100 µF
  • 4 x kháng 470 Ω
  • 5 x nút đen
  • 5 x nút trắng
  • 1 x nguồn 5V-5A
  • 1 x nguồn 5V-2A

Cuối cùng, trong phần công cụ, chúng tôi đã sử dụng như sau:

  • Súng silicon nóng
  • Laser CNC de MxN
  • Thợ hàn điện
  • Thợ hàn thiếc

Bước 2: Thiết kế

Thiết kế
Thiết kế
Thiết kế
Thiết kế
Thiết kế
Thiết kế

Một trong những phần quan trọng nhất của dự án này là thiết kế nhà ở. Nó bao gồm 3 miếng được cắt bằng máy cắt laser.

Các cơ sở được lấy từ một mảnh 90x60 bằng MDF. Hãy tính đến kích thước của vật liệu vì bạn sẽ cần một máy cắt laser đủ lớn.

Bạn có thể tìm thấy tệp SVG ở cuối bước này.

Bìa trên là bìa chứa các bản vẽ chuyên đề của Chiến tranh giữa các vì sao cũng như các lỗ cho cả nút và pixel.

Nó có hình dạng giống như cơ sở.

Các bức tường bên đã được thực hiện bằng kỹ thuật cắt laser gọi là kerf. Điều này cho phép vật liệu linh hoạt. Để đặt các bức tường, một số mảnh đã được thiết kế để phục vụ như một hướng dẫn.

Cuối cùng, mỗi ma trận NeoPixel có một lưới trong đó một mặt NeoPixel được cố định và mặt khác là giấy thực vật được cố định để khuếch tán ánh sáng của NeoPixel. Tại đây bạn có tất cả các tệp SVG để bạn có thể tự cắt và sản xuất chúng.

Bước 3: Lắp ráp điện tử

Hội điện tử
Hội điện tử
Hội điện tử
Hội điện tử
Hội điện tử
Hội điện tử
Hội điện tử
Hội điện tử

Giai đoạn đầu tiên của quá trình lắp ráp thiết bị điện tử là cắt dải dài 5 mét của NeoPixel thành 8 dải 10 pixel và 4 pixel riêng biệt cho mỗi đầu phát, tổng cộng 84 pixel cho mỗi đầu phát. Một mặt, 10 dải được lắp ráp nối tiếp nhau, để lại một sợi cáp đủ để đặt mỗi dải song song với nhau vài mm. Ma trận pixel này sẽ hiển thị mỗi lần chơi và kết quả. 4 pixel hiển thị bốn màu của phím và bốn pixel còn lại hiển thị kết quả. Tôi nhắc bạn rằng kết quả là chúng ta phải:

  • Nếu pixel có màu trắng, nó đã được xác định vị trí và màu sắc thành công.
  • Nếu điểm ảnh có màu tím, thì màu đúng nhưng không đúng vị trí.
  • Nếu pixel bị tắt, cả màu sắc và vị trí đều không chính xác.

Một trong những sai lầm mà chúng tôi đã mắc phải là hệ thống dây điện và GND. Nó có thể đơn giản hơn nhưng chúng tôi nhận ra sau đó. Cáp dữ liệu phải tuân theo một thứ tự vì việc đánh số các pixel đi từ dưới lên trên.

Mặt khác, chúng ta có 4 pixel riêng biệt phải được kết nối giữa chúng. Các pixel này sẽ cho chúng ta thấy màu mà chúng ta đang chọn bằng các nút.

Kết nối nối tiếp với mỗi dải là một điện trở 470Ω để bảo vệ dữ liệu. Cáp dữ liệu của mỗi dải pixel được kết nối với một chân kỹ thuật số. Các chân được chọn trong Arduino MEGA là 6, 7, 8 và 9.

Ví dụ: 6 và 7 dành cho người chơi 1 và 8 và 9 cho người chơi 2.

Các nút mà chúng tôi đã sử dụng là các nút điển hình của máy arcade. Chúng tôi nghĩ rằng chúng sẽ trông đẹp và đó là cách.

Có thể sử dụng các nút bấm khác nhưng phải lưu ý rằng nếu chúng nhỏ hơn hoặc lớn hơn, tệp DXF phải được sửa đổi trước khi cắt bằng máy CNC laser.

Để phân biệt các cầu thủ, một số nút có màu trắng và những nút khác có màu đen.

Mỗi người chơi có 4 nút lên và 1 nút xuống. 4 nút phía trên dùng để chọn màu cho từng vị trí của phím.

Nút dưới cùng được sử dụng để xác thực, nghĩa là, nó gửi chìa khóa để xuất hiện trong ma trận pixel với xác minh liên quan xem màu sắc và vị trí đã thành công hay chưa.

Trước khi lắp ráp mọi thứ, chúng tôi hàn tất cả các dây cáp. Vì vậy, bạn sẽ cần rất nhiều cáp. Nó sẽ phụ thuộc vào kích thước của trò chơi. Trong trường hợp của chúng tôi, nó đã khá lớn.

Ví dụ, bạn có thể sử dụng cáp ethernet để mở nó và lấy các cáp bên trong. Đó là một giải pháp tốt. Cố gắng sắp xếp chúng càng trật tự càng tốt vì khi đó sẽ cần thiết phải thực hiện các kết nối với Arduino MEGA như bạn thấy trong sơ đồ điện.

Một khi bạn là tất cả các quân nhân trước khi gắn nó, bạn phải thử nó. Nó được kiểm tra bởi vì khi nó được lắp vào vỏ, nó sẽ bị dính silicone nóng và nếu nó không thành công sẽ rất phức tạp sau đó tháo nó ra. Để đặt ma trận pixel, một lưới đã được thiết kế với cùng kích thước với lưới của nắp, nơi một mặt các pixel bị kẹt và mặt kia là giấy thực vật.

Loại giấy này sẽ khuếch tán ánh sáng của từng pixel mang lại hiệu ứng đẹp hơn nhiều. Sau đó, cấu trúc đó dính vào phần trên cùng bên trong. Nó là một chút phức tạp nhưng với sự cẩn thận, một kết quả tốt sẽ đạt được.

Việc cho ăn có phần phức tạp. Về nguyên tắc và xem xét sơ đồ, chúng tôi sẽ chỉ sử dụng một bộ sạc duy nhất. Tuy nhiên, sau các thử nghiệm đầu tiên và mức tiêu thụ NeoPixel, chúng tôi thấy rằng nó sẽ cần đến hai bộ sạc.

Mỗi pixel có thể tiêu thụ tối đa 60 mA. Nếu chúng ta nhân với 168 pixel, bạn sẽ có mức tiêu thụ khoảng 10 A.

Mặc dù điều này sẽ là trong trường hợp xấu nhất. Trong chương trình, chúng tôi đã tính đến việc không tối đa hóa cường độ của NeoPixel.

Do đó, chúng tôi thậm chí không đạt 50%, với bộ sạc 5V và 5A là quá đủ.

Mặt khác, Arduino MEGA có một bộ sạc riêng có thể được kết nối thông qua đầu cắm giắc cắm hoặc qua cổng USB. Một cải tiến khả thi là có một bộ sạc duy nhất cho toàn bộ hệ thống.

Bước 4: Lập trình trò chơi

Lập trình trò chơi
Lập trình trò chơi
Lập trình trò chơi
Lập trình trò chơi

Việc lập trình đã được thực hiện bằng hai thư viện: OneButton và Adafruit_NeoPixel.

Thư viện OneButton cho phép điều khiển các nút một cách đơn giản mà không bị gián đoạn.

Thư viện Adafruit_NeoPixel đã cho phép chúng tôi điều khiển dải NeoPixel một cách rất đơn giản.

Việc lập trình dựa trên các trạng thái khác nhau trong đó chương trình phần mềm có thể là:

Bắt đầu trò chơi. Bang = 0

Ở trạng thái này, trò chơi được bắt đầu và có một chuỗi đèn ở cả hai người chơi cho biết rằng trò chơi sẽ bắt đầu. Trong trạng thái này, các nút bấm không phản hồi.

Trạng thái ban đầu. Bang = 1

Ở trạng thái ban đầu, hãy đợi một trong hai người chơi nhấp đúp vào nút xác nhận (nút thứ năm). Hành động này sẽ cho phép bắt đầu trò chơi.

Chuẩn bị trò chơi. Bang = 2

Trong trạng thái chuẩn bị của trò chơi, tất cả các biến được đặt lại và lựa chọn màu sắc ngẫu nhiên cho chìa khóa được đưa ra.

Trạng thái chơi = 3

Ở trạng thái 3 trò chơi bắt đầu. Mỗi người chơi chọn một chìa khóa bằng các nút và xác nhận nó bằng cách nhấp vào nút xác nhận. Trạng thái này có thể kết thúc theo hai cách: khi một người chơi phát hiện ra chìa khóa hoặc khi hai người chơi dùng hết 10 lần thử mà họ có.

Một Bang chiến thắng = 4

Nếu một người chơi thắng, séc xanh sẽ được hiển thị trên bảng của anh ta và kết hợp chiến thắng và một chữ thập đỏ trên người thua cuộc.

Trò chơi trói buộc. Bang = 5

Trong trường hợp hòa, không có gì được hiển thị trên bất kỳ bảng nào và kết hợp chiến thắng trên bảng của cả hai người chơi.

Cho dù có người thắng hay hòa trong trò chơi, trạng thái tiếp theo sẽ là trạng thái ban đầu chờ nhấp đúp.

Bạn có thể tìm thấy tất cả các mã dưới đây. Điều duy nhất bằng tiếng Tây Ban Nha:)

Bước 5: Kiểm tra và cải tiến

Trò chơi được thử nghiệm bằng cách chơi. Trong video trên, bạn có thể thấy một trò chơi hoàn chỉnh.

Từ đây, chúng ta có thể nghĩ về một số cải tiến có thể được thêm vào Mastermind Star Wars với Arduino.

Tiếp theo tôi liệt kê chúng.

  • Để có thể chơi theo lượt với tổng cộng 10 lần thử cho hai người chơi. Khi một người chơi thử một phím, người chơi kia sẽ thấy vở kịch.
  • Chế độ chơi cá nhân để chỉ một người có thể chơi.
  • Chế độ mỗi với phím của nó.
  • Bao gồm một màn hình OLED.
  • Sử dụng một bộ sạc duy nhất cho mọi thứ.
  • Kết nối với NodeMCU ESP8266

Tôi chắc rằng nhiều người sẽ đưa ra nhiều cải tiến. Tôi chờ đợi những bình luận bên dưới.

Và có thể lực lượng được với bạn.

Đề xuất: