ĐĂNG KÍ NHẬN TIN TỰ ĐỘNG

Nhập địa chỉ E-mail vào ô phía trên để nhận tin mới liên tục từ Tự Tay Làm

Tự làm cánh tay robot giải khối Rubik

Đăng lúc: Thứ tư - 25/06/2014 10:08 - Người đăng bài viết: Ban Biên Tập
Chia sẻ lên Facebook Chia sẻ lên Twitter Chia sẻ lên Yahoo Chia sẻ lên Zing Me Chia sẻ lên Yume Chia sẻ lên Link hay Chia sẻ lên Google+
rubik

rubik

Thiết bị này được làm từ những thanh gỗ y tế, động cơ servo và một bo mạch điều khiển Arduino. Về cách thức hoạt động của cánh tay robot này là sau khi ghi nhận hình ảnh các mặt của khối lập phương, các thuật toán sẽ được dịch sang chuyển động của động cơ.
Các nguyên, vật liệu và dụng cụ cần chuẩn bị:
-Bo mạch điện tử Arduino UNO R3.
-Động cơ servo.
-Dây điện và cáp USB.
-Que gỗ dùng trong y tế (que đè lưỡi).
-Một tấm ván ép mỏng.
-Bánh xe bằng gỗ.
-Khăn giấy cuộn.
-Súng bắn keo nóng.
Các phần mềm: Arduino IDE - (thuật toán C++), Python 2.7+ và Tkinter - (GUI), Pyserial.
Các bước thực hiện:
Bước 1: Sơ đồ mạch
-Kết nối dây màu vàng (tín hiệu) quay và đẩy của servo tương ứng với các pin 9 và pin 6.
-Kết nối dây cực dương và cực âm đến nguồn điện 5V và chân ground.

so do mach
 
Bước 2: Thiết kế mô hình
Đây là một robot đơn giản, thiết kế sao cho các động cơ servo hoạt động nhịp nhàng mà không bị cản bởi các que gỗ. Bạn có thể tham khảo hình bên dưới để thiết kế theo gợi ý.

thiết kế mô hình
 
Bước 3: Arduino Sketch – Thuật toán giải khối lập phương rubik 
Arduino Sketch
 
Code: github.com/matt2uy/Cube-Solver
Về cơ bản, sử dụng kết hợp giữa các thuật toán đẩy, giữ và quay để áp dụng cho khối lập phương. Ba thành phần cơ bản trong đoạn mã này là thuật toán, giao diện GUI và kết nối tất cả (Serial Communications). Về tổng quan cấu trúc của đoạn mã: Cube Decide functions < Cube Algorithms < Cube Move functions < Servo functions < Move Function.
Bước 4: Python GUI
Không giống như các robot được giới thiệu trên các báo, nó sử dụng camera để quan sát các mặt của rubik. Robot nhập trực tiếp các mặt vào Arduino sketch thông qua GUI. Nếu không muốn làm từ đầu thì bạn có thể sử dụng đoạn mã giao diện Tkinter GUI đã được làm sẵn (tại địa chỉ này).

Python GUI
 
Bước 5: Kết nối tất cả (Serial Communications)
Một khi thuật toán trong Arduino sketch và giao diện python GUI đã sẵn sàng thì cần phải có một thứ gì đó để thu thập thông tin từ GUI chuyển vào Arduino sketch, và thuật toán sẽ giúp điều khiển robot giải rubik.

Serial Communications
 
Bạn cần sử dụng Send_Cube_State.py (tại đây) để chuyển dữ liệu màu sắc từ GUI thành chuỗi và sử dụng một cánh tay được điều khiển bởi mạch Arduino (mạch chuyển đổi dữ liệu chuỗi đến các động cơ servo).
Xem video minh họa hoạt động:

Tác giả bài viết: Dr@gon
Nguồn tin: www.tutaylam.com
Từ khóa:

robot, rubik, cánh tay

Đánh giá bài viết
Tổng số điểm của bài viết là: 5 trong 1 đánh giá
Click để đánh giá bài viết
 

Thăm dò ý kiến

Tham khảo ý kiến về website Sản phẩm tự chế

Không nên mở thêm website này.

Ý tưởng tốt, tôi thích website này.

Giao diện website đẹp, dễ tương tác.

Giao diện website màu mè, dễ bị phân tán.