
Mục lục:
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-23 15:15


Cách xây dựng một robot tránh chướng ngại vật
Bước 1: Hộp đen

bước đầu tiên tôi sử dụng hộp đen làm cơ sở cho rô bốt của mình.
Bước 2: Arduino

Arduino là bộ não của toàn bộ hệ thống và điều phối động cơ của chúng ta
Bước 3: Gắn Arduino vào hộp đen

Tôi đã gắn arduino vào hộp đen bằng keo nóng
Bước 4: Cảm biến siêu âm

Để tạo ra một robot có thể tự di chuyển, chúng ta cần một số loại đầu vào, một cảm biến phù hợp với mục tiêu của chúng ta. Cảm biến siêu âm là một công cụ đo khoảng cách đến một vật thể bằng sóng âm siêu âm. Cảm biến siêu âm sử dụng một bộ chuyển đổi để gửi và nhận các xung siêu âm để chuyển tiếp thông tin về khoảng cách gần của một đối tượng
Bước 5: Kết nối Breadboard của Cảm biến với Arduino


Tôi đã sử dụng dây để nối kết nối giữa breadboard và arduino.
Hãy chú ý rằng cảm biến ping của bạn có thể có cách bố trí chân khác nhưng nó phải có chân điện áp, chân nối đất, chân trig và chân echo.
Bước 6: Tấm chắn động cơ

Bo mạch Arduino không thể tự điều khiển động cơ một chiều do dòng điện chúng tạo ra quá thấp. Để giải quyết vấn đề này, chúng tôi sử dụng lá chắn động cơ. động cơ bước. … Bằng cách định địa chỉ các chân này, bạn có thể chọn một kênh động cơ để bắt đầu, chỉ định hướng động cơ (cực tính), đặt tốc độ động cơ (PWM), dừng và khởi động động cơ và theo dõi sự hấp thụ hiện tại của mỗi kênh
Bước 7: Kết nối Motor Shield với Arduino

Đơn giản chỉ cần gắn tấm chắn động cơ vào arduino bằng các dây cảm biến được quấn vào
Bước 8: Kết nối 4 động cơ và pin với lá chắn

Mỗi Tấm chắn động cơ có (ít nhất) hai kênh, một cho động cơ và một cho nguồn điện, Hãy kết nối chúng với nhau
Bước 9: Lập trình Robot
chạy mã này
#include #include
Sonar NewPing (TRIG_PIN, ECHO_PIN, MAX_DISTANCE);
AF_DCMotor động cơ1 (1, MOTOR12_1KHZ); AF_DCMotor động cơ2 (2, MOTOR12_1KHZ); AF_DCMotor động cơ3 (3, MOTOR34_1KHZ); AF_DCMotor động cơ4 (4, MOTOR34_1KHZ); Servo myservo;
# xác định TRIG_PIN A2 # xác định ECHO_PIN A3 # xác định MAX_DISTANCE 150 # xác định MAX_SPEED 100 # xác định MAX_SPEED_OFFSET 10
boolean goForward = false; int khoảng cách = 80; int speedSet = 0;
void setup () {
myservo.attach (10); myservo.write (115); chậm trễ (2000); khoảng cách = readPing (); chậm trễ (100); khoảng cách = readPing (); chậm trễ (100); khoảng cách = readPing (); chậm trễ (100); khoảng cách = readPing (); chậm trễ (100); }
void loop () {int distanceR = 0; int khoảng cáchL = 0; chậm trễ (40); if (khoảng cách <= 15) {moveStop (); chậm trễ (50); moveBackward (); chậm trễ (150); moveStop (); chậm trễ (100); khoảng cáchR = lookRight (); chậm trễ (100); khoảng cáchL = lookLeft (); chậm trễ (100);
if (distanceR> = distanceL) {turnRight (); moveStop (); } else {turnLeft (); moveStop (); }} else {moveForward (); } khoảng cách = readPing (); }
int lookRight () {myservo.write (50); chậm trễ (250); int khoảng cách = readPing (); chậm trễ (50); myservo.write (100); khoảng cách trở lại; }
int lookLeft () {myservo.write (120); chậm trễ (300); int khoảng cách = readPing (); chậm trễ (100); myservo.write (115); khoảng cách trở lại; chậm trễ (100); }
int readPing () {delay (70); int cm = sonar.ping_cm (); if (cm == 0) {cm = 200; } trả về cm; }
void moveStop () {motor1.run (RELEASE); motor2.run (RELEASE); motor3.run (RELEASE); motor4.run (RELEASE); } void moveForward () {
if (! goForward) {goForward = true; motor1.run (FORWARD); motor2.run (FORWARD); motor3.run (FORWARD); motor4.run (FORWARD); for (speedSet = 0; speedSet <MAX_SPEED; speedSet + = 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); chậm trễ (5); }}}
void moveBackward () {goForward = false; motor1.run (PHẦN THƯỞNG); motor2.run (PHẦN THƯỞNG); motor3.run (PHẦN THƯỞNG); motor4.run (PHẦN THƯỞNG); for (speedSet = 0; speedSet <MAX_SPEED; speedSet + = 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); chậm trễ (5); } void turnLeft () {motor1.run (BACKWARD); motor2.run (PHẦN THƯỞNG); motor3.run (FORWARD); motor4.run (FORWARD); chậm trễ (500); motor1.run (FORWARD); motor2.run (FORWARD); motor3.run (FORWARD); motor4.run (FORWARD); }
void turnLeft () {motor1.run (BACKWARD); motor2.run (PHẦN THƯỞNG); motor3.run (FORWARD); motor4.run (FORWARD); chậm trễ (500); motor1.run (FORWARD); motor2.run (FORWARD); motor3.run (FORWARD); motor4.run (FORWARD); }
Đề xuất:
Robot tránh chướng ngại vật sử dụng cảm biến siêu âm (Proteus): 12 bước

Robot tránh chướng ngại vật sử dụng cảm biến siêu âm (Proteus): Chúng ta thường bắt gặp robot tránh chướng ngại vật ở mọi nơi. Mô phỏng phần cứng của robot này là một phần của cuộc thi tại nhiều trường cao đẳng và trong nhiều sự kiện. Nhưng phần mềm mô phỏng robot vượt chướng ngại vật là rất hiếm. Mặc dù nếu chúng ta có thể tìm thấy nó ở đâu đó,
Robot LEGO tránh chướng ngại vật: 8 bước (có hình ảnh)

Robot LEGO tránh chướng ngại vật: Chúng tôi yêu thích LEGO và chúng tôi cũng yêu thích Mạch điên, vì vậy chúng tôi muốn kết hợp cả hai thành một robot đơn giản và vui nhộn có thể tránh chạy vào tường và các đồ vật khác. Chúng tôi sẽ chỉ cho bạn cách chúng tôi xây dựng công trình của mình và phác thảo những điều cơ bản cần thiết để bạn có thể tự xây dựng.
Robot tránh chướng ngại vật bằng Arduino Nano: 5 bước

Robot tránh chướng ngại vật bằng Arduino Nano: Trong hướng dẫn này, tôi sẽ mô tả cách bạn có thể tạo ra robot tránh chướng ngại vật bằng Arduino
Bộ đếm Arduino sử dụng màn hình LED TM1637 & cảm biến tránh chướng ngại vật: 7 bước

Bộ đếm Arduino Sử dụng Màn hình LED TM1637 & Cảm biến tránh chướng ngại vật: Trong hướng dẫn này, chúng ta sẽ học cách tạo bộ đếm chữ số đơn giản bằng Màn hình LED TM1637 và cảm biến tránh chướng ngại vật và Visuino
Boe-Bot: Robot tránh chướng ngại vật: 6 bước

Boe-Bot: Robot tránh chướng ngại vật: Robot nhỏ này sử dụng râu của mình để phát hiện chướng ngại vật. Khi một hoặc cả hai râu của anh ta được kích hoạt, anh ta sẽ lùi lại và quay sang một hướng khác. Mặt khác, anh ta tiến về phía trước. Được cung cấp năng lượng bởi 4 pin AA, bo mạch chủ Paralax cho phép