Mục lục:

Câu đố dựa trên màu sắc: 6 bước
Câu đố dựa trên màu sắc: 6 bước

Video: Câu đố dựa trên màu sắc: 6 bước

Video: Câu đố dựa trên màu sắc: 6 bước
Video: Bài Kiểm Tra Màu Sắc Cho Biết Tuổi Tâm Hồn Của Bạn 2024, Tháng mười một
Anonim
Câu đố dựa trên màu sắc
Câu đố dựa trên màu sắc
Câu đố dựa trên màu sắc
Câu đố dựa trên màu sắc

Này đó!

Đối với một dự án trường học có tên "If This Then That", tôi đã phải xây dựng một đối tượng tương tác bằng Arduino. Tôi quyết định xây dựng một câu đố dựa trên màu sắc với một hệ thống phản hồi đơn giản.

Những gì nó làm (trong ngắn hạn):

  1. Nó xác định màu sắc của đối tượng phía trên cảm biến màu.
  2. Nó kiểm tra xem màu đó có phù hợp với giải pháp chính xác hay không.
  3. Nó có làm tăng dấu hiệu "bạn đã chết" hay không, tùy thuộc vào thời tiết mà câu đố có được giải hay không.

Vì vậy, bạn có thể nghĩ rằng câu đố này là dễ dàng để giải quyết?

Vâng, đối với một người biết nó hoạt động như thế nào, mặc dù bạn có thể thay đổi giải pháp! Nhưng đừng lo lắng, đối với một người không có manh mối về cách nó hoạt động, nó trông giống như ma thuật. Theo kinh nghiệm của tôi, nhiều người nghĩ rằng câu đố là về trọng lượng chứ không phải về màu sắc. Và, đừng quên, bạn là bậc thầy của câu đố, bạn đưa ra bao nhiêu manh mối là tùy thuộc vào bạn.

Cách tôi (muốn) sử dụng nó:

Tôi muốn sử dụng câu đố này như một phần tương tác trong chiến dịch D&D của mình.

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

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

Bạn sẽ cần những thứ sau trước khi có thể bắt đầu xây dựng:

Nói chung:

Một bộ não (sáng tạo) để đưa ra một câu đố

Công cụ Arduino:

  • Arduino Uno
  • Breadboard
  • Một động cơ servo
  • (TCS3200) Cảm biến màu
  • 7x dây jumper Nam - Nữ (ưu tiên tất cả các màu khác nhau, rất khuyến khích)
  • 11x Nam - Dây nhảy nam
  • powerbank (trong trường hợp bạn muốn nó hoạt động mà không cần máy tính / máy tính xách tay của bạn)

Vỏ bọc:

  • Một hộp (giày) có nắp (để xếp hình trên)
  • một vài mảnh bìa cứng (để làm bức tường, cột trụ ở giữa và bạn đã chết ký tên)
  • Các khối gỗ, (ít nhất) một mặt phải lớn hơn cảm biến màu.
  • sơn: đen, đỏ, xanh dương và xanh lá cây (và bất kỳ màu bổ sung nào nếu bạn muốn *)
  • A4 mảnh giấy trắng
  • Cây kéo
  • Một điểm đánh dấu màu đen
  • Băng dính hai mặt chắc chắn
  • Một chiếc bút chì
  • Keo tức thì
  • Dao gọt hoặc dao Stanley

* lưu ý nhỏ về màu sắc: ban đầu mình cũng dùng màu tím nhưng cảm biến không phân biệt được đỏ và tím nên mình bỏ qua. Hãy lưu ý rằng các màu khác cũng có thể không hoạt động tốt như vậy (nhưng chúng có thể xảy ra, tôi chưa thử). Cảm biến của tôi rẻ, một cảm biến chính xác hơn có thể phân biệt nhiều màu hơn.

Bước 2: Câu đố

Câu đố
Câu đố

Phần quan trọng nhất của dự án này là có một câu đố vui hại não.

Như bạn có thể thấy trong hình đầu tiên (hình có phần giới thiệu), tôi đã vẽ các chữ rune thô lên các khối của mình (ở mọi mặt trừ phần dưới cùng). Họ phải làm với câu đố. Sau đó, tôi dán một câu hỏi đơn giản vào trường hợp: "Sự giàu có thực sự là…?".

Tôi đã sử dụng hình trên để dịch các chữ rune. Tôi cũng đã đưa bản dịch cho những người đang cố gắng giải câu đố của tôi.

Lời giải cho câu đố:

Giàu có thật là hạnh phúc!

Vì vậy việc người chơi cần làm là thay khối báu (khối có biểu tượng giàu sang) bằng khối có biểu tượng hạnh phúc trên đó.

Hãy thoải mái sử dụng câu đố của tôi nhưng tôi sẽ khuyến khích bạn đưa ra câu đố của riêng bạn.

Bước 3: Hệ thống dây điện

Hệ thống dây điện
Hệ thống dây điện
Hệ thống dây điện
Hệ thống dây điện

Việc đấu dây khá đơn giản vì chỉ có 2 thành phần (và arduino). Trong mô tả, tôi sử dụng số lượng dây tối thiểu, nếu bạn muốn sử dụng nhiều hơn, hãy làm như vậy. (Tôi đã sử dụng nhiều dây hơn trên hình)

Arduino vào breadboard: (Sử dụng 2 dây Male - Male)

  1. kết nối chân 5V với mặt + của breadboard.
  2. kết nối một trong các chân nối đất với mặt bên của breadboard.

Servo: (Sử dụng 3 dây Nam - Nam)

servo có ba dây: nguồn, đất và tín hiệu.

  1. Nguồn điện thường là một dây màu đỏ, hãy kết nối dây này với + mặt bên của breadboard của bạn.
  2. Nối đất thường là dây màu đen hoặc nâu, hãy kết nối dây này với mặt bên của bảng mạch của bạn.
  3. Tín hiệu thường là dây màu vàng hoặc màu cam, hãy kết nối dây này với một hàng ngang trên bảng mạch của bạn. *

Cảm biến màu: (Sử dụng 7 dây Nam - Nữ)

  1. VCC: kết nối dây này với + bên của breadboard của bạn (đây là nguồn).
  2. GND: kết nối dây này với - bên của breadboard của bạn (đây là mặt đất).
  3. S0: kết nối dây này với một hàng ngang trên breadboard của bạn. *
  4. S1: kết nối dây này với một hàng ngang trên bảng mạch của bạn. *
  5. S2: kết nối dây này với một hàng ngang trên bảng mạch của bạn. *
  6. S3: kết nối dây này với một hàng ngang trên bảng mạch của bạn. *
  7. OUT: kết nối dây này với một hàng ngang trên breadboard của bạn. *

* Tôi không cho bạn biết chính xác vị trí ghim nó trên breadboard vì bạn dễ dàng tìm ra thứ gì phù hợp nhất với bản dựng của mình.

Breadboard sang Arduino: ** (Sử dụng 6 dây Male - Male)

Thật thông minh khi xem mọi thứ có hoạt động hay không trước khi đặt nó vào hộp đựng, hãy lưu ý rằng để làm được điều đó, bạn cần tháo những sợi cáp này ra và lắp lại sau. Hãy nhớ ghi nhớ hoặc ghi lại loại cáp nào được kết nối với cái gì.

  1. kết nối hàng bạn đã kết nối với chân tín hiệu của servo với chân số 9 trên Arduino.
  2. kết nối hàng bạn đã kết nối với chân S0 của cảm biến màu với chân 4 trên Arduino.
  3. kết nối hàng bạn đã kết nối với chân S1 của cảm biến màu với chân 5 trên Arduino.
  4. kết nối hàng bạn đã kết nối với chân S2 của cảm biến màu với chân 6 trên Arduino.
  5. kết nối hàng bạn đã kết nối với chân S3 của cảm biến màu với chân 7 trên Arduino.
  6. kết nối hàng bạn đã kết nối với chân OUT của cảm biến màu với chân 8 trên Arduino.

** các hàng tôi đề cập ở trên đây là các hàng trên bảng mạch của bạn.

Bước 4: Mã

Trong tệp đính kèm ở đây, bạn sẽ tìm thấy mã bạn cần để chạy dự án này. Các nhận xét trong mã phải rõ ràng về những gì nó làm. Nếu bạn muốn biết thêm một số thông tin chuyên sâu về cách hoạt động của cảm biến màu (nếu bạn muốn hiểu đầy đủ về mã), tôi khuyên bạn nên xem hướng dẫn này "Cảm biến hoạt động như thế nào?" phần.

Mặc dù bạn chưa có ở đó, nhưng có một số điều bạn cần điều chỉnh trong mã:

  • Điều chỉnh các biến.
  • Điều chỉnh câu lệnh if để phù hợp với câu đố của bạn (nếu cần).

Sẽ rất tiện để làm trụ và sơn các khối từ bước tiếp theo trước khi bạn điều chỉnh các biến nên bạn không cần phải làm lại.

Điều chỉnh các biến:

Nếu bạn xây dựng hệ thống dây điện một cách chính xác, mã sẽ hoạt động, hãy lấy một mảnh giấy, một cây bút và các khối (sơn). *

  1. Nhận xét tạm thời chức năng void checkRiddle ra khỏi mã. (để phần đó không chạy)
  2. Tải mã lên Arduino của bạn.
  3. Mở màn hình nối tiếp, nó sẽ bắt đầu chạy và hiển thị cho bạn R =… G =… B =… (và một số thứ nữa, chúng không quan trọng bây giờ)
  4. Giữ một khối màu ngay trước cảm biến (càng gần với thiết kế cuối cùng của bạn) trong vài giây.
  5. Trong khi vẫn giữ nó trước cảm biến, hãy tắt nguồn Arduino của bạn. (kéo nó ra khỏi cổng usb)
  6. Viết ra các giá trị bên ngoài (cao nhất và thấp nhất) mà cảm biến màu đo được trên mỗi màu (R, G và B).
  7. Chọn hai giá trị thay đổi ít nhất (ví dụ: R và B). **
  8. Đếm +10 ở giá trị cao nhất và -10 ở giá trị thấp nhất để cảm biến được phép có những sai sót nhỏ.
  9. Bây giờ thay thế các giá trị trong mã bằng những giá trị bạn có bây giờ. (Một nhận xét cho biết bạn nên thay thế những giá trị nào)
  10. Nếu bạn đang sử dụng màu khác với tôi, hãy thay đổi cả serial.print.
  11. Bây giờ, hãy tải lại mã lên Arduino của bạn với nó bằng cách sử dụng các giá trị mới đo được của bạn.
  12. Kiểm tra xem màn hình nối tiếp có in màu bạn vừa đặt vào mã hay không bằng cách giữ khối màu tương tự trước mặt nó. Đảm bảo rằng nó nhất quán miễn là bạn giữ nó trước cảm biến.
  13. Nếu không:: (hãy kiểm tra các giá trị, xem bạn có cần phải tăng phạm vi lớn hơn hay không. Nếu có::) mã hiện nhận ra màu này.
  14. Bây giờ lặp lại quá trình này (bước 4 - 13) cho đến khi tất cả các màu bạn muốn sử dụng được tích hợp trong mã.
  15. Đừng quên bỏ ghi chú chức năng void checkRiddle!

* Hãy chuyển sang bước "trường hợp" trước nếu bạn chưa vẽ chúng.

** bạn có thể chính xác hơn nếu bạn muốn bằng cách sử dụng cả 3 (R, G và B) nhưng đối với dự án này là không cần thiết.

Điều chỉnh câu lệnh if thành câu đố của bạn: (chỉ khi bạn muốn thay đổi lời giải)

Bước 5: Vỏ và sơn các khối

Vỏ và sơn các khối
Vỏ và sơn các khối
Vỏ và sơn các khối
Vỏ và sơn các khối
Vỏ và sơn các khối
Vỏ và sơn các khối
Vỏ và sơn các khối
Vỏ và sơn các khối

Vỏ hộp là một phần hơi phức tạp nhưng không khó để làm, chủ yếu là bạn phải có số đo chính xác. Tôi không cung cấp số đo của mình vì chúng tôi (rất có thể) không sử dụng các vật liệu có cùng kích thước.

Vẽ các khối:

Sơn các khối bằng màu bạn muốn sử dụng. Tôi khuyên bạn nên sử dụng màu đỏ, xanh lá cây và xanh lam vì dễ dàng phân biệt chúng bằng cảm biến nhất.

Nếu bạn không tự vẽ câu đố của mình trên rune.

Trụ cột:

Cột này là để ẩn (một phần) cảm biến màu và các dây cáp gắn vào nó. Để xác định số đo của cột, bạn cần đo các cạnh của cảm biến màu và xác định độ cao mà bạn muốn cột của mình xem trên hình là cao 3 cm). Sau đó, vẽ nó lên bìa cứng và cắt nó ra, bạn có thể sơn chúng nếu bạn muốn.

Gắn các dây vào cảm biến TRƯỚC KHI bạn lắp nó vào trụ, bạn sẽ không thể tiếp cận các chân cắm nữa.

Tôi đã sử dụng băng dính hai mặt để gắn cảm biến bên trong trụ. Bạn có thể thấy điều này trên bức tranh thứ ba.

Đảm bảo các led trên cảm biến nằm bên trong trụ (không vượt quá mép), các khối cần đứng trên đó sau này.

Dấu hiệu "bạn đã chết":

Cắt một mảnh bìa cứng và viết "bạn đã chết" trên đó. Như bạn có thể thấy trong bức ảnh đầu tiên, tôi dán một bức ảnh của một người đàn ông giận dữ với thanh kiếm ở phía bên kia. Đảm bảo biển báo có vấu ở phía dưới. Sử dụng vấu để dán dấu vào servo.

Tạo phòng:

  1. Sơn hộp bạn đã chọn cho trường hợp. (Bất kỳ màu nào bạn thích, tôi đã sử dụng màu đen)
  2. Vẽ hình dạng của căn phòng vào đáy hộp để xác định chiều dài của các bức tường. (Đo các đoạn thẳng bằng thước kẻ).
  3. Xác định chiều cao mà bạn muốn các bức tường có. Các bức tường trong ví dụ của tôi cao 5 cm.
  4. Bây giờ bạn đã có kích thước của bức tường, vẽ chúng lên bìa cứng và cắt chúng ra.
  5. Sơn tường. (Tôi sơn chúng màu đen)
  6. Dán các bức tường lên hộp, trên các đường bạn đã vẽ trước đó.

Bây giờ bạn đã thiết lập phòng.

Các lỗ cho dây cáp và biển báo:

Bạn cần tạo hai lỗ trên hộp, một lỗ cho dây cáp và một lỗ cho dấu hiệu "bạn đã chết". và nên cẩn thận! các lỗ không thể được loại bỏ một khi chúng ở đó.

tạo một lỗ bên dưới nơi bạn muốn cảm biến màu đi vào. Tạo lỗ càng nhỏ càng tốt nhưng tránh căng dây cáp, bạn không muốn chúng bị lỏng.

Lỗ cho dấu hiệu "bạn đã chết" cần phải dày hơn một chút so với tấm bìa cứng bạn đang sử dụng để nó có thể lộ ra mà không bị va vào vỏ. Chiều dài của lỗ phụ thuộc vào độ lớn của dấu hiệu. Dùng dao Stanley hoặc dao gọt để tạo lỗ.

Bây giờ sử dụng băng dính hai mặt để gắn động cơ servo vào mặt bên của hộp.

Bước 6: Bất kỳ câu hỏi nào ??

Vì vậy, bây giờ bạn sẽ có thể xây dựng một câu đố dựa trên màu sắc tuyệt vời với Arduino. Nếu bạn có bất kỳ câu hỏi nào, hãy hỏi!

Chúc bạn xây dựng vui vẻ!

Đề xuất: