Mục lục:

Cat Ball Shooter: 9 bước (có hình ảnh)
Cat Ball Shooter: 9 bước (có hình ảnh)

Video: Cat Ball Shooter: 9 bước (có hình ảnh)

Video: Cat Ball Shooter: 9 bước (có hình ảnh)
Video: Bạn hay sút kiểu nào #football #player #knuckleball 2024, Tháng mười một
Anonim
Bắn bóng mèo
Bắn bóng mèo

Vật liệu cần thiết

1 x Cảm biến RFID / điều khiển từ xa

1 x Arduino chưa

2 x động cơ DC

1 x 180 servo

1 x 360 servo

nhiều dây

Hộp / thùng chứa để xây dựng dự án

đường ống để đưa bóng đi qua

Bước 1: Tạo mạch để cấp nguồn cho động cơ và điều khiển từ xa

Tạo mạch để cấp nguồn cho động cơ và điều khiển từ xa
Tạo mạch để cấp nguồn cho động cơ và điều khiển từ xa
Tạo mạch để cấp nguồn cho động cơ và điều khiển từ xa
Tạo mạch để cấp nguồn cho động cơ và điều khiển từ xa

Xây dựng mạch

xây dựng mạch ở trên và kết nối với các chân giống nhau để sử dụng cùng một mã chính xác

Bước 2: Tạo cơ sở cho hai động cơ

Tạo cơ sở cho hai động cơ
Tạo cơ sở cho hai động cơ

bạn sẽ cần sử dụng bảng xốp để cắt các hình chữ nhật 4, 5 inch x 2 inch cho các cạnh. sau đó cắt ra 2, 5 x 5 inch hình vuông để sử dụng làm mặt trên và mặt dưới. tiếp theo, các động cơ sẽ cần một chỗ để ngồi, vì vậy hãy khoét 2 lỗ có đường kính 23mm và cách nhau 39mm để nhường chỗ cho quả bóng được bắn. sau đó tạo một điểm hoặc một vài lỗ trên hình vuông dưới cùng để cho phép các dây dẫn từ động cơ kết nối vào mạch điện.

Bước 3: Thêm Servo vào Dưới cùng của Động cơ

Thêm Servo vào dưới cùng của động cơ
Thêm Servo vào dưới cùng của động cơ

dán cẩn thận servo 180 hoặc 360 vào đáy (ở giữa) của hình vuông. chúng tôi đang làm điều này để chúng tôi có thể thay đổi hướng theo cách thủ công bằng điều khiển từ xa hoặc ngẫu nhiên để bóng bắn theo các hướng khác nhau

Bước 4: Cắt lỗ trong thùng chứa lớn

Cắt lỗ trong thùng chứa lớn
Cắt lỗ trong thùng chứa lớn
Cắt lỗ trong thùng chứa lớn
Cắt lỗ trong thùng chứa lớn
Cắt lỗ trong thùng chứa lớn
Cắt lỗ trong thùng chứa lớn

Lấy hộp chứa lớn và khoét một lỗ ở phía trước và phía sau, nó không cần phải chính xác nhưng ở phía trước, chúng ta nên khá lớn như trong hình để cho phép bóng được bắn theo các hướng khác nhau khi servo di chuyển. và mặt sau của hộp chứa cắt một lỗ nhỏ hơn để cho phép các dây dẫn ra ngoài và đặt các bộ phận mạch điện vào hoặc thay đổi mạch điện nếu cần. ở phía trước, keo servo vào nắp của một trong các thùng chứa và sau đó dán vào đế của thùng chứa để hỗ trợ, xem hình thứ hai để tham khảo

Bước 5: Đường ống

Ống
Ống

làm hoặc mua một ống nhựa pvc dài 1 feet, tốt nhất là có đường cong để cho bóng lăn vào sau đó cắt một viên peice 1,5 inch để cho bóng vào.

Bước 6: Cái phễu

Cái phễu
Cái phễu
Cái phễu
Cái phễu
Cái phễu
Cái phễu

cắt bỏ 4 hình thang bằng nhau, có thể tùy ý nhưng của tôi cao 5 inch và hơi xéo khi đặt vào ống, sau đó miếng ván xốp ở phía dưới khoét một lỗ đủ lớn để một quả bóng bàn chui qua. tiếp theo dán chúng lại với nhau tạo thành một cái nhảy cho tất cả các quả bóng ngồi vào nhau. Sau đó chúng ta sẽ dán keo này vào đầu ống nơi đã khoét lỗ

Bước 7: Đặt phễu, ống và động cơ

Đặt phễu, ống và động cơ
Đặt phễu, ống và động cơ

bạn sẽ muốn đặt đường ống bên trong hộp chứa ngay trên mép của hộp màu trắng được làm cho động cơ để quả bóng bay ra và được bánh xe đẩy. bây giờ bạn có thể dán trên phễu vào đầu ống

Bước 8: Servo cuối cùng

Servo cuối cùng
Servo cuối cùng
Servo cuối cùng
Servo cuối cùng

servo này được dán vào dưới cùng của phễu / nơi tôi cắt đường ống để nó nhô ra đủ để các quả bóng ping sẽ không rơi qua cho đến khi nhấn vào nút và servo di chuyển

Bước 9: Thêm mã để kiểm tra các bộ phận làm việc

Thêm mã để kiểm tra các bộ phận làm việc
Thêm mã để kiểm tra các bộ phận làm việc

// Trình sửa mèo

// nhập thư viện để sử dụng các lệnh trong toàn bộ mã, ví dụ: khai báo các chân là servos và thiết lập điều khiển từ xa IR #include #include

// thiết lập các biến để thiết lập tốc độ cho động cơ DC int onspeed = 255; int lowspeed = 100; int offpeed = 0;

// thiết lập chân thu thông tin và hai chân động cơ int IR_Recv = 2; int motor1 = 10; int motor2 = 11;

// khai báo các biến dưới dạng servos để chương trình biết đó là một servo để sử dụng các lệnh cụ thể Servo vạt; Góc Servo;

// khai báo chân IR để nhận đầu vào từ điều khiển từ xa // lấy kết quả từ remote IRrecv’tcv (IR_Recv); giải mã kết quả;

void setup () {

Serial.begin (9600); // bắt đầu giao tiếp nối tiếp không thể thay đổi được. // Khởi động bộ thu

nắp bật.attach (7); // gắn nắp servo vào chân 7 để chúng ta có thể sử dụng nó sau này trong chương trình angle.attach (4); // gắn góc servo vào chân 4 để chúng ta có thể sử dụng nó sau này trong chương trình pinMode (motor1, OUTPUT); // đặt motor1 thành đầu ra để chúng ta có thể gửi tốc độ tới khi nút được nhấn pinMode (motor2, OUTPUT); // đặt motor2 thành đầu ra để chúng tôi có thể gửi tốc độ đến khi nút được nhấn

}

void loop () {

vạt.write (0); // đặt servo điều khiển bộ nạp bi thành 0 độ để không cho bất kỳ quả bóng nào lọt qua

if (Uncv.decode (& results)) {long int decCode = results.value; Serial.println (giải mã); không thể tìm thấy ();

switch (results.value) {

case 0xFFA25D: // power analogWrite (motor1, onspeed); analogWrite (motor2, tốc độ); chậm trễ (7000); vỗ.write (90); chậm trễ (500); vạt.write (0); chậm trễ (2000); analogWrite (motor1, offpeed); analogWrite (motor2, offpeed); nghỉ;

trường hợp 0xFFE01F: // EQ

analogWrite (motor1, tốc độ); analogWrite (motor2, tốc độ thấp); chậm trễ (7000); vỗ.write (90); chậm trễ (500); vạt.write (0); chậm trễ (2000); analogWrite (motor1, offpeed); analogWrite (motor2, offpeed);

nghỉ;

case 0xFF629D: // mode

analogWrite (motor1, tốc độ thấp); analogWrite (motor2, tốc độ); chậm trễ (7000); vỗ.write (90); chậm trễ (500); vạt.write (0); chậm trễ (2000); analogWrite (motor1, offpeed); analogWrite (motor2, offpeed);

nghỉ;

trường hợp 0xFF30CF: // thiết lập 1, 90 độ

góc.write (30);

nghỉ;

trường hợp 0xFF18E7: // thiết lập 2, 0 độ

angle.write (90);

nghỉ;

trường hợp 0xFF7A85: // thiết lập 3, 180 độ

angle.write (150);

nghỉ;

} } }

Đề xuất: