Chuyển đến phần nội dung
  • Tiếng Việt
    • English
    • Tiếng Việt

 

  • Tiếng Việt
    • English
    • Tiếng Việt
Tài liệu sử dụng

Robot Arduino

13
  • Tổng quan
  • Cài đặt Arduino IDE
  • Điều khiển LED
  • Điều khiển động cơ Servo
  • Điều khiển động cơ DC với L298N
  • Đọc cảm biến HC-SR04
  • Đọc cảm biến encoder
  • Đọc cảm biến dò line
  • Kết nối Module Bluetooth HM-10
  • Điều khiển xe với PID
  • Lập trình robot điều khiển từ xa
  • Lập trình robot tránh vật cản
  • Lập trình robot dò line

Robot ESP32

12
  • Tổng quan
  • Điều khiển LED
  • Điều khiển động cơ Servo
  • Điều khiển động cơ DC với L298N
  • Đọc cảm biến HCSR04
  • Đọc cảm biến Encoder
  • Đọc cảm biến dò line
  • Bluetooth – Kết nối module HM10
  • Bluetooth – Lập trình điều khiển xe từ xa
  • Wifi – Lập trình web html
  • Wifi – Lập trình điều khiển xe từ xa
  • Lập trình robot dò line

Robot ESP32 Camera

1
  • Tổng quan

Robot ESP32 Lidar

1
  • Tổng quan

Robot ESP32 Lidar & Camera

1
  • Tổng quan
Xem danh mục

Đọc cảm biến dò line

1. Mục tiêu bài học #

Sau bài học này, bạn sẽ:

  • Hiểu nguyên lý hoạt động của cảm biến dò line.
  • Đọc trạng thái 5 mắt cảm biến trên Arduino.
  • Xác định vị trí vạch đen dưới cảm biến.
  • Làm nền tảng cho các bài xe dò line tự động sau này.

2. Giới thiệu module cảm biến dò line 5 mắt TCRT5000 #

Cảm biến dò line 5 mắt là một trong những cảm biến phổ biến nhất trong các robot dò line.

Module gồm:

  • 5 cặp LED phát hồng ngoại và mắt thu.
  • 5 đèn LED báo trạng thái.
  • 5 chân tín hiệu Digital.

Nguyên lý hoạt động

LED hồng ngoại phát ánh sáng xuống mặt đất.

Khi gặp nền trắng

Màu trắng phản xạ ánh sáng mạnh.

➡ Mắt thu nhận được nhiều ánh sáng.

➡ Ngõ ra Digital = HIGH.

Khi gặp vạch đen

Màu đen hấp thụ ánh sáng.

➡ Mắt thu nhận ít ánh sáng.

➡ Ngõ ra Digital = LOW.

Ví dụ:

Bề mặtGiá trị Digital
Trắng1
Đen0

Vị trí các mắt cảm biến

L2      L1      C      R1      R2
| | | | |
[ ] [ ] [ ] [ ] [ ]

Trong đó:

  • L2: ngoài cùng bên trái
  • L1: trái
  • C: giữa
  • R1: phải
  • R2: ngoài cùng bên phải

4. Sơ đồ kết nối #

5. Code đọc cảm biến line cơ bản #

#define L2_PIN 8
#define L1_PIN 9
#define C_PIN  10
#define R1_PIN 11
#define R2_PIN 12

void setup()
{
    Serial.begin(9600);

    pinMode(L2_PIN, INPUT);
    pinMode(L1_PIN, INPUT);
    pinMode(C_PIN, INPUT);
    pinMode(R1_PIN, INPUT);
    pinMode(R2_PIN, INPUT);
}

void loop()
{
    int l2 = digitalRead(L2_PIN);
    int l1 = digitalRead(L1_PIN);
    int c  = digitalRead(C_PIN);
    int r1 = digitalRead(R1_PIN);
    int r2 = digitalRead(R2_PIN);

    Serial.print(l2);
    Serial.print(" ");

    Serial.print(l1);
    Serial.print(" ");

    Serial.print(c);
    Serial.print(" ");

    Serial.print(r1);
    Serial.print(" ");

    Serial.println(r2);

    delay(100);
}

5. Nạp code và kiểm tra #

Bước 1: Nạp code

Bước 2: Mở Serial Monitor

Chọn:

  • Baudrate: 9600

Bạn sẽ thấy:

Khi tất cả cảm biến nằm trên nền trắng:

1 1 1 1 1

Khi mắt giữa nằm trên vạch đen:

1 1 0 1 1

Khi vạch nằm lệch trái:

1 0 0 1 1

Khi vạch nằm lệch phải:

1 1 0 0 1

Có thể sửa code như sau để hiển thị rõ ràng hơn

void loop()
{
    int l2 = digitalRead(L2_PIN);
    int l1 = digitalRead(L1_PIN);
    int c  = digitalRead(C_PIN);
    int r1 = digitalRead(R1_PIN);
    int r2 = digitalRead(R2_PIN);

    Serial.print("L2=");
    Serial.print(l2);

    Serial.print(" L1=");
    Serial.print(l1);

    Serial.print(" C=");
    Serial.print(c);

    Serial.print(" R1=");
    Serial.print(r1);

    Serial.print(" R2=");
    Serial.println(r2);

    delay(100);
}

Ví dụ:

L2=1 L1=1 C=0 R1=1 R2=1

Ta có thể suy ra vị trí của line như sau:

Trạng tháiVị trí line
1 1 0 1 1Chính giữa
1 0 1 1 1Lệch trái
0 1 1 1 1Rất lệch trái
1 1 1 0 1Lệch phải
1 1 1 1 0Rất lệch phải

7. Một số lưu ý #

Điều chỉnh độ cao

Khoảng cách tốt nhất:

5mm ~ 15mm

so với mặt sàn.

Nếu quá cao:

  • Khó phát hiện line.
  • Dễ bị nhiễu.

Màu line

Hoạt động tốt nhất với:

  • Vạch đen.
  • Nền trắng.

Ví dụ:

Nền trắng + line đen

hoặc

Nền vàng nhạt + line đen


8. Ứng dụng #

Encoder thường dùng để:

9. Tổng kết #

Sau bài học này bạn đã:

  • Hiểu nguyên lý cảm biến dò line TCRT5000.
  • Đọc được dữ liệu từ 5 mắt cảm biến.
  • Xác định được vị trí tương đối của vạch line.
  • Sẵn sàng xây dựng robot dò line ở bài học tiếp theo.
Cập nhật vào Tháng 5 30, 2026

Cảm xúc của bạn là gì

  • Vui
  • Bình thường
  • Buồn

Chia sẻ bài viết này :

  • Facebook
  • X
  • LinkedIn
  • Pinterest
Đọc cảm biến encoderKết nối Module Bluetooth HM-10
Table of Contents
  • 1. Mục tiêu bài học
  • 2. Giới thiệu module cảm biến dò line 5 mắt TCRT5000
  • 4. Sơ đồ kết nối
  • 5. Code đọc cảm biến line cơ bản
  • 5. Nạp code và kiểm tra
  • 7. Một số lưu ý
  • 8. Ứng dụng
  • 9. Tổng kết
Bản quyền; 2026 - Giao diện WordPress tạo bởi CreativeThemes