Mục lục:

Arduino 3D Printed Sumo Bot: 6 bước
Arduino 3D Printed Sumo Bot: 6 bước

Video: Arduino 3D Printed Sumo Bot: 6 bước

Video: Arduino 3D Printed Sumo Bot: 6 bước
Video: Robot-UZ 2023 Robot Sumo 2024, Tháng mười một
Anonim
Arduino 3D Printed Sumo Bot
Arduino 3D Printed Sumo Bot

Vì vậy, tôi đã có một loạt các bộ phận được đặt xung quanh nhà của tôi. Tôi muốn tham gia một cuộc thi sumo sắp diễn ra trong vài tháng nữa nhưng tôi không có bot. Thay vì mua một con bot hoặc sử dụng một thiết kế hiện có yêu cầu tôi phải mua những thứ cho dự án, tôi đã tiếp tục và tạo ra một con bot của riêng mình từ thiết kế của riêng tôi từ những bộ phận mà tôi có. Bạn sẽ cần những thứ sau cho hướng dẫn này.

  1. Một trong mỗi bộ phận được in 3D được tìm thấy ở đây.
  2. Một pin 7,4 vôn hoặc hai pin 18650.
  3. Giá đỡ pin nếu cần.
  4. Arduino không.
  5. Lá chắn không đột phá của Arduino.
  6. Cáp USB cho Arduino.
  7. Nguồn cung cấp trên máy tính để bàn (tùy chọn).
  8. Bộ sạc (tùy chọn).
  9. Dây điện và rất nhiều trong số chúng.
  10. Servos quay liên tục bánh răng kim loại có kích thước tiêu chuẩn.
  11. Hai cảm biến chuyển đổi ir.
  12. Bánh xe servo 7cm.
  13. Công tắc bật và tắt.

Mã này liên tục được thay đổi. Mã cho robot này có thể được tìm thấy ở đây. Đây là phiên bản cập nhật nhất của mã dự án này. Thưởng thức!

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

Cuộc họp
Cuộc họp
Cuộc họp
Cuộc họp
Cuộc họp
Cuộc họp
  1. Robot sử dụng hai servo bánh răng kim loại. Bạn sẽ muốn vặn chúng bằng cách sử dụng bu lông và đai ốc m3 với các servo bên trong khung máy hướng ra ngoài theo cả hai hướng. Chỉ có một cách để các Servos có thể đi vào rô bốt, vì vậy việc này sẽ diễn ra khá dễ dàng.
  2. Gắn các bánh xe servo.
  3. Gắn các cảm biến ir để chúng hướng xuống phía trước của rô bốt. Chúng được gắn bằng hai vít thông qua các lỗ M3 ở phía trước của robot. Có các khe ở dưới cùng của robot để chúng nhìn qua. Bạn cần cẩn thận để các cảm biến không nhấc khung xe và có thể nhìn thấy tất cả các khe hở. Bạn sẽ tìm hiểu thêm về điều này sau khi chúng tôi kiểm tra rô-bốt để xem liệu công việc hữu ích của bạn có hoạt động hay không.
  4. Đặt cảm biến HC-SR04 vào bên trong hai lỗ hướng ra bên ngoài robot từ bên trong. Các lỗ nằm ở phía trước của khung xe.
  5. Đặt Arduino Uno vào bên trong khung với tấm chắn trên đó.
  6. Kết nối mọi thứ lại với nhau theo danh sách gạch đầu dòng bên dưới.

    1. Cấp nguồn từ nguồn điện bạn chọn vào công tắc nguồn. Bạn sẽ đấu dây dương hoặc âm vào công tắc. Nếu bạn chọn dây dẫn âm, đây sẽ là dây nối đất của bạn trong khi nếu bạn chọn dây dẫn dương sẽ là dây dẫn nguồn điện của bạn. Dây còn lại tùy theo dương hay âm sẽ là dương hay âm của bạn.
    2. Kết nối dây dẫn dương với vin trên Arduino và dây dẫn dương trên servos.
    3. Kết nối mặt đất với mặt đất trên Servos và Arduino.
    4. Kết nối 5v từ bộ điều chỉnh 5 volt trên Arduino với tất cả các cực dương trên mỗi cảm biến.
    5. Nối dây các cảm biến vào Arduino.
    6. Cuối cùng đấu dây chân 7 trên Arduino sang cảm biến IR phải, chân 6 vào cảm biến IR bên trái, chân 8 vào một trong các servo, chân 9 vào servo cuối cùng.

Cảnh báo: Không đấu dây đúng cách cho rô bốt có thể dẫn đến rô bốt hút thuốc và phá hủy thiết bị điện tử

Bước 2: Dấu hiệu đầu tiên của sự sống

Cảnh báo: Không kết nối rô bốt với máy tính của bạn khi được cấp nguồn hoặc với các Servos được nối dây. Nếu không làm như vậy có thể dẫn đến hỏng máy tính của bạn

int mode = 3;

Dòng mã trên là biến quan trọng đối với robot. Nó thực hiện như sau nếu bằng mỗi số được liệt kê bên dưới.

  1. Trong khi bằng 0, rô bốt di chuyển theo một mẫu cụ thể.
  2. Nếu chế độ bằng một, rô bốt sẽ in đầu ra cho máy tính của mỗi số đọc cảm biến.
  3. Khi bằng hai robot sẽ tránh các cạnh và chướng ngại vật nếu nó đi qua chúng.
  4. Robot chiến đấu với các bot khác.

Đây là các chế độ khác nhau của robot được sử dụng để kiểm tra và giúp robot tiến bộ. Bạn sẽ cần phải thay đổi "3" đó thành 0 trong bước đầu tiên của hướng dẫn này.

Bây giờ tải mã lên rô bốt. Bạn sẽ thấy nó di chuyển tới, lui, trái và phải theo thứ tự đó.

Bước 3: Nó có thể nhìn thấy

int mode = 0;

Thay đổi biến sau thành "1" nếu bước trước đó đã được hoàn thành. Bây giờ khi được kết nối với màn hình nối tiếp của bạn trên Arduino, nó sẽ in ra những gì robot của bạn đang nhìn thấy. "0" Có nghĩa là cảm biến cạnh rằng nó đang nhìn thấy thứ gì đó. "1" có nghĩa là nó không nhìn thấy bất kỳ cạnh nào. Nếu bạn nhận thấy logic bị đảo ngược, hãy lưu ý điều đó cho các bước trong tương lai.

Đừng lo lắng về cảm biến ping. Dù sao thì tôi vẫn chưa làm việc đó. Robot này đang được phát triển nặng.

Bước 4: Nó có thể tránh được mép bàn

void Tránh () {

int sensorStateLeft = digitalRead (leftSensor);

int sensorStateRight = digitalRead (rightSensor);

chậm trễ (50);

if (Ping.ping_cm ()> = 15 && sensorStateLeft == 0 && sensorStateRight == 0) {

left.write (0); ngay.write (90);

}

if (Ping.ping_cm () <= 15 && Ping.ping_cm ()! = 0 || sensorStateLeft == 1 || sensorStateRight == 1) {

left.write (90);

right.write (0); }

}

Mã trên là mã được triệu hồi khi chế độ bằng hai. Nếu bước trước đó đã được hoàn thành, thay đổi chế độ thành bằng "2".

Nếu các cảm biến được đảo ngược, vui lòng đảo ngược "sensorStateLeft" và "sensorStateRight" trong mỗi câu lệnh "if" thành một số khác với số mà chúng đã được đưa ra là "1" hoặc "0".

Giờ đây, robot có thể tránh khỏi rìa của một đấu trường sumo. Nó gần như đã sẵn sàng để chiến đấu. Hãy kiểm tra nó ra để xem nó có hoạt động hay không.

Bước 5: TRẬN ĐẤU

Sumo của bạn đã sẵn sàng chiến đấu ngay bây giờ với một vài thay đổi mã. Thay đổi chế độ bằng "3" và đảo ngược logic nếu cần trong khoảng trống "Sumo". Bây giờ robot của bạn sẽ tránh khỏi rìa của đấu trường nhưng không thể phát hiện ra các robot khác. Về cơ bản, nó tránh các cạnh của đấu trường và di chuyển đủ nhanh để hy vọng có thể đẩy một con rô bốt ra khỏi mép bàn. Thưởng thức!

Bước 6: Kết luận

Robot của bạn đã hoàn thành ngay bây giờ. Nếu có bất kỳ vấn đề hoặc nhận xét nào cho dự án này, vui lòng cho tôi biết. Tôi vô cùng tin tưởng luôn sẵn sàng đón nhận phản hồi bởi vì tôi không biết liệu đây có phải là một hướng dẫn được thực hiện tốt hay không. Thưởng thức!

Đề xuất: