Mục lục:

Crack the Code Game, Arduino Based Puzzle Box: 4 Step (with Pictures)
Crack the Code Game, Arduino Based Puzzle Box: 4 Step (with Pictures)

Video: Crack the Code Game, Arduino Based Puzzle Box: 4 Step (with Pictures)

Video: Crack the Code Game, Arduino Based Puzzle Box: 4 Step (with Pictures)
Video: Crack The Code Game, Built Into A DIY Safe Box 2024, Tháng bảy
Anonim
Image
Image
Crack the Code Game, Hộp câu đố dựa trên Arduino
Crack the Code Game, Hộp câu đố dựa trên Arduino
Crack the Code Game, Hộp câu đố dựa trên Arduino
Crack the Code Game, Hộp câu đố dựa trên Arduino

Dự án Tinkercad »

Trong phần Có thể hướng dẫn này, tôi sẽ hướng dẫn bạn cách xây dựng trò chơi mã crack của riêng bạn, trong đó bạn sử dụng một đĩa quay mã hóa quay để đoán mã được tạo ngẫu nhiên vào két sắt. Có 8 đèn LED ở mặt trước của két sắt để cho bạn biết có bao nhiêu chữ số bạn đoán là đúng và bao nhiêu chữ số ở đúng vị trí.

Két sắt được mở ban đầu, cho phép bạn để một thứ gì đó vào ngăn bên trong. Arduino và pin được đặt trong một ngăn riêng biệt ở phía sau. Sau đó, bạn ấn nút xoay để khóa két sắt, điều này được thực hiện bằng cách sử dụng một servo ở bên trong cửa. Sau đó, bạn cần nhập mã bằng cách xoay nút xoay để chọn các chữ số và nhấn nút quay để xác nhận từng chữ số. Sau khi chữ số thứ tư của bạn được chọn, két sắt sẽ hiển thị bao nhiêu chữ số của bạn là đúng và bao nhiêu chữ số trong số đó ở đúng vị trí bằng cách sử dụng đèn LED màu đỏ và xanh lá cây trên cửa.

Đèn LED màu đỏ cho biết một chữ số chính xác và đèn LED màu xanh lá cây cho biết rằng nó cũng ở đúng vị trí. Vì vậy, bạn cần phải thắp sáng cả bốn đèn LED xanh đỏ để có thể phá mã và mở két.

Két sắt theo dõi số lần phỏng đoán bạn đã thực hiện để bẻ khóa mã và điều này được hiển thị khi bạn đã bẻ khóa được. Thoạt nghe có vẻ phức tạp nhưng thực ra không quá khó, bạn chỉ cần ghi nhớ và xây dựng dựa trên những suy đoán trước đó của mình. Hầu hết thời gian bạn sẽ có thể bẻ mã trong 5 đến 10 lần đoán, tùy thuộc vào mức độ may mắn của những lần đoán ban đầu của bạn.

Nếu bạn thích tính năng Có thể hướng dẫn này, hãy cân nhắc bỏ phiếu cho nó trong cuộc thi Arduino.

Quân nhu

Để xây dựng hộp an toàn Crack The Code này, bạn sẽ cần:

  • Arduino Uno - Mua tại đây
  • Màn hình OLED I2C - Mua tại đây
  • Bộ mã hóa nút bấm - Mua tại đây
  • Đèn LED đỏ 4 x 5mm - Mua tại đây
  • Đèn LED xanh 4 x 5mm - Mua tại đây
  • Điện trở 8 x 220Ω - Mua tại đây
  • Micro Servo - Mua tại đây
  • Cáp ruy-băng - Mua tại đây
  • Dải tiêu đề - Mua tại đây
  • Công tắc nguồn - Mua tại đây
  • Tấm MDF 3mm - Mua tại đây

Bạn cũng sẽ cần một số dụng cụ cơ bản, keo dán gỗ, súng bắn keo và mỏ hàn.

Các bộ phận của két sắt cần được cắt laser. Nếu bạn không có điều kiện sử dụng máy cắt laser, hãy xem xét sử dụng dịch vụ cắt laser trực tuyến, chúng có giá khá phải chăng và sẽ cắt và giao các linh kiện đến tận nhà cho bạn.

Đây là máy cắt laser mà tôi đã sử dụng trong Máy cắt laser có thể hướng dẫn - K40

Bước 1: Lắp ráp hộp

Lắp ráp hộp
Lắp ráp hộp
Lắp ráp hộp
Lắp ráp hộp
Lắp ráp hộp
Lắp ráp hộp
Lắp ráp hộp
Lắp ráp hộp

Tôi thiết kế hộp an toàn trong Inkscape, được cắt từ MDF 3mm. Bạn cũng có thể cắt các bộ phận từ acrylic hoặc ván ép 3mm nếu muốn. Nếu bạn sử dụng vật liệu có độ dày khác thì bạn sẽ cần điều chỉnh các khe trong các thành phần của hộp để chúng khớp với nhau một cách chính xác.

Bạn có thể tải xuống các tệp cắt laser tại đây.

Có 6 tấm tạo nên các mặt bên ngoài của hộp, mặt sau và mặt trước có các đường cắt trong chúng cho cửa trước và cửa sau. Các bảng được dán nhãn trong tệp in để bạn có thể theo dõi chúng.

Mặt số cũng được tạo nên bằng cách sử dụng một số mảnh cắt bằng laser sau đó được dán lại với nhau.

Có ba tấm trang trí được dán vào đầu và hai bên của hộp để làm cho nó giống như một chiếc két sắt hơn. Ngoài ra còn có hai tấm tạo thành cửa và một tấm ngăn đi vào giữa hộp để tách ngăn an toàn với ngăn điện tử.

Các miếng vừa khít với một miếng MDF 400 x 500mm và có thể được chia thành nhiều miếng nhỏ hơn nếu máy cắt laser của bạn không đủ lớn để cắt tất cả các miếng cùng một lúc.

Tôi bắt đầu dán các tấm trang trí lên trên và các mặt trước. Đảm bảo rằng bạn có các phần theo đúng thứ tự để bạn biết đó là cái nào. Có ba mảnh khác nhau, trên và dưới giống nhau, hai bên giống nhau và mặt trước và mặt sau giống nhau.

Khi các tấm đã khô, bạn có thể lắp ráp hộp.

Đảm bảo rằng các vết cắt cho dải phân cách giữa nằm ở các bên. Đây là để chạy bất kỳ dây nào từ mặt trước của hộp đến mặt sau của hộp, nơi đặt Arduino và pin.

Các bản lề cũng được cắt bằng laser và chỉ được dán vào vị trí sau khi bạn xếp cửa. Đảm bảo rằng chúng song song với cửa nếu không bạn sẽ gặp khó khăn khi mở nó. Bạn cũng có thể cần phải chà nhám một chút mép bản lề bên trong của cánh cửa để nó không cọ vào mép hộp khi nó di chuyển qua.

Dán bốn hình vuông vào các góc phía sau mặt sau để tạo lỗ vít cho nắp sau.

Sau đó, bạn có thể khoan lỗ cho các vít và bắt đầu lắp màn hình, Arduino, nắp sau và cuối cùng là bộ mã hóa.

Bước 2: Kết nối thiết bị điện tử

Kết nối các thiết bị điện tử
Kết nối các thiết bị điện tử
Kết nối các thiết bị điện tử
Kết nối các thiết bị điện tử
Kết nối các thiết bị điện tử
Kết nối các thiết bị điện tử

Tôi đã thiết kế mạch trên một breadboard trong Tinkercad Circuits và thêm vào màn hình OLED sau đó.

Chúng tôi đã có 8 đèn LED được kết nối với các chân IO kỹ thuật số từ 6 đến 13. Servo khóa được kết nối với chân 5. Bộ mã hóa được kết nối với các chân 2, 3 và 4 và màn hình OLED được kết nối với giao diện I2C của Arduino.

Tôi đã sử dụng một điện trở 220 ohm cho mỗi đèn LED, hàn trực tiếp vào đèn LED âm và tôi kết nối các thành phần với nhau bằng cáp ruy băng màu để giữ cho dây gọn gàng và giúp theo dõi dây nào cần đi đến mỗi chân Arduino.

Tôi đẩy các dây cáp ruy-băng qua ngăn sau và hàn một số dải tiêu đề ghim vào cáp ruy-băng để cắm vào Arduino.

Tôi cũng gắn một công tắc nguồn vào vỏ sau và kết nối công tắc này với phích cắm pin để kết nối với pin sạc để cung cấp năng lượng cho trò chơi. Bạn cũng có thể sử dụng pin 9V nếu muốn.

Cuối cùng, bạn sẽ cần đặt servo khóa về phía mép cửa để nó đi qua môi trong hộp và cánh tay có thể đẩy lên phía bên trong của môi để khóa hộp. Đây không phải là cơ chế khóa mạnh nhất nhưng nó thực sự đơn giản và hoạt động tốt cho mục đích của trò chơi.

Bước 3: Lập trình Arduino

Lập trình Arduino
Lập trình Arduino
Lập trình Arduino
Lập trình Arduino

Tôi sẽ không xem qua mã một cách chi tiết như thường lệ vì có khá nhiều thứ liên quan đến nó. Tôi đã thực hiện một bản viết chi tiết giải thích từng phần của nó mà bạn có thể tìm thấy cùng với tải xuống mã thông qua liên kết này - Crack The Code Game Code.

Tóm tắt; chúng tôi bắt đầu bằng cách nhập thư viện để điều khiển màn hình OLED và servo.

Sau đó, chúng tôi đặt các tham số cho màn hình và tạo tất cả các biến của chúng tôi. Có khá nhiều biến dành riêng để theo dõi các vòng quay của bộ mã hóa vì chúng được thực hiện thông qua các ngắt cạnh lên trên các chân 2 và 3.

Có hai mảng mã được tạo, để lưu mã được tạo ngẫu nhiên và một để lưu trữ dự đoán hiện tại của người dùng.

Trong chức năng thiết lập, chúng tôi khởi động màn hình, gắn servo, đặt chế độ chân IO và sau đó hiển thị hoạt ảnh văn bản Crack The Code trên màn hình.

Các chức năng vòng lặp sẽ nhấp nháy đèn LED và hiển thị thông báo đẩy để khóa an toàn, sau đó chờ cho đến khi người dùng nhấn nút quay để bắt đầu trò chơi. Mã tương tự được chạy ở cuối trò chơi, sau đó hiển thị số lần thử và chờ nhấn quay số để bắt đầu trò chơi mới.

Có một số mã gỡ lỗi trên nút nhấn của bộ mã hóa và một khi được đẩy, servo sẽ khóa két an toàn và một mã ngẫu nhiên được tạo. Sau đó, mã sẽ gọi một hàm để yêu cầu người dùng nhập dự đoán của họ và sau đó là một chức năng khác để kiểm tra dự đoán, điều này được lặp lại cho đến khi người dùng đoán đúng mã.

Có một chức năng để cập nhật mã đang được hiển thị được gọi mỗi khi bộ mã hóa được quay và mã được hiển thị cần thay đổi.

Hàm tạo mã mới chỉ cần gán một chữ số ngẫu nhiên cho mỗi phần tử trong số bốn phần tử trong mảng mã.

Chức năng nhập mã đoán cho phép người dùng chọn một chữ số bằng cách sử dụng bộ mã hóa và sau đó xác nhận đầu vào từng chữ số bằng cách đẩy bộ mã hóa xuống.

Sau đó, chức năng đoán mã kiểm tra sẽ xem xét mã đã đoán và quyết định có bao nhiêu chữ số là đúng và bao nhiêu chữ số ở đúng vị trí.

Chức năng đèn LED cập nhật chuyển đổi số lượng đèn LED màu đỏ và xanh lá cây chính xác dựa trên suy đoán của người dùng.

Chức năng khởi động ani hiển thị hoạt ảnh Crack The Code khi khởi động.

Cuối cùng, hai chức năng ngắt quản lý đầu vào từ bộ mã hóa, một chức năng tăng dần chữ số lên khi xoay theo chiều kim đồng hồ và một chức năng đi xuống khi quay ngược chiều kim đồng hồ.

Bước 4: Chơi trò chơi Crack the Code

Chơi trò chơi mã crack
Chơi trò chơi mã crack
Chơi trò chơi mã crack
Chơi trò chơi mã crack
Chơi trò chơi mã crack
Chơi trò chơi mã crack
Chơi trò chơi mã crack
Chơi trò chơi mã crack

Cách tốt nhất để học cách chơi trò chơi là xem video ở phần đầu, có hai ví dụ về trò chơi được chơi ở gần cuối.

Két sắt ban đầu được mở khóa, cho phép bạn đặt thứ gì đó vào bên trong.

Sau đó, bạn nhấn nút quay để khóa két và tạo mã mới.

Mã được đoán được nhập bằng cách sử dụng mặt số để tăng chữ số và nhấn vào mặt số để chuyển đến chữ số tiếp theo hoặc để xác nhận mã sau khi tất cả bốn chữ số được chọn.

Các đèn LED ở mặt trước sau đó sáng lên để cho chúng tôi biết điều gì đã chính xác trong suy đoán của chúng tôi.

Sau đó, bạn sử dụng phản hồi này để đưa ra dự đoán tiếp theo cho đến khi bạn có thể đoán đúng mã và mở lại két. Khi bạn nhập đúng mã, két sẽ mở khóa và số lần bạn thử bẻ mã sẽ được hiển thị.

Hãy tận hưởng việc xây dựng mã két sắt của riêng bạn. Nếu bạn thích tính năng Có thể hướng dẫn này, hãy cân nhắc bỏ phiếu cho nó trong cuộc thi Arduino.

Cuộc thi Arduino 2020
Cuộc thi Arduino 2020
Cuộc thi Arduino 2020
Cuộc thi Arduino 2020

Giải nhì cuộc thi Arduino 2020

Đề xuất: