Giới thiệu dự án

Trong kỷ nguyên chuyển đổi số và tự động hóa doanh nghiệp, việc tối ưu hóa quy trình vận hành nội bộ đóng vai trò then chốt trong việc gia tăng năng suất lao động. Theo các nghiên cứu công nghiệp về quản trị văn phòng, nhân viên hành chính và phòng ban chuyên môn tiêu tốn từ 8% đến 12% tổng thời gian làm việc hàng ngày cho các hoạt động di chuyển phi giá trị gia tăng, chủ yếu là vận chuyển công văn, hợp đồng, hồ sơ trình ký và văn phòng phẩm giữa các phòng ban. Mặc dù công nghệ xe tự hành AGV (Automated Guided Vehicle) đã phát triển mạnh mẽ trong các nhà máy sản xuất công nghiệp và kho vận logistics quy mô lớn, việc ứng dụng AGV vào không gian văn phòng dân dụng vẫn gặp nhiều rào cản do chi phí cao, kích thước cồng kềnh, bán kính quay vòng lớn và tính bảo mật tài liệu chưa được chuyên biệt hóa.

+-------------------------------------------------------------------------+
|                  VẤN ĐỀ TRONG VẬN HÀNH VĂN PHÒNG HIỆN ĐẠI                |
+-------------------------------------------------------------------------+
| 1. Lãng phí nhân lực: Mất 8-12% thời gian cho việc giao nhận giấy tờ.   |
| 2. Thiếu bảo mật: Tài liệu nhạy cảm dễ bị thất lạc hoặc tiếp cận trái phép|
| 3. Không gian hẹp: Hành lang văn phòng hẹp, góc cua 90 độ khó xoay trở.  |
| 4. Chi phí AGV công nghiệp: Quá đắt đỏ, đòi hỏi cải tạo hạ tầng sàn lớn. |
+-------------------------------------------------------------------------+

Mục tiêu đề tài

  1. Thiết kế cơ khí module hóa: Nghiên cứu, thiết kế và gia công chế tạo hoàn chỉnh mô hình xe tự hành nhỏ gọn với kết cấu 2 phần riêng biệt (phần dẫn động di chuyển độc lập và khoang chứa tài liệu bảo mật), cho phép tháo lắp nhanh để bảo trì và nâng cấp.
  2. Nghiên cứu động học cơ cấu 3 bánh Omni: Ứng dụng hệ thống chuyển động toàn hướng (holonomic drive) với 3 bánh Omni bố trí lệch nhau góc $120^\circ$, giúp xe có khả năng xoay tại chỗ $360^\circ$ và tịnh tiến đa hướng trong hành lang chật hẹp.
  3. Phát triển thuật toán thị giác máy tính nhận dạng đường dẫn: Xây dựng pipeline xử lý ảnh số thời gian thực trên nền tảng nhúng, kết hợp thuật toán cân bằng trắng Gray-World, chuyển đổi không gian màu HSV, trích xuất biên Canny và biến đổi Hough Line để bám làn dẫn hướng chính xác dưới nhiều điều kiện quang học.
  4. Hệ thống điều khiển phân tán Master - Slave: Tích hợp Raspberry Pi xử lý tác vụ cấp cao (thị giác máy tính, Web Server) và Arduino Nano đảm nhiệm điều khiển thời gian thực (vòng lặp PID vị trí/vận tốc động cơ DC Servo, giao tiếp module RFID và cảm biến siêu âm HC-SR04).
  5. Nền tảng quản trị và giám sát Web Server (LAMP): Xây dựng máy chủ nội bộ trực quan cho phép giám sát vị trí xe, cấu hình tham số PID, hiệu chỉnh ngưỡng màu HSV và điều khiển thủ công thời gian thực qua giao diện web.

Phương pháp tiếp cận và Chỉ số kỳ vọng

Hệ thống sử dụng phương pháp dẫn hướng quang học kết hợp mốc định vị vô tuyến RFID. Camera thu nhận hình ảnh vạch màu định tuyến trên sàn nhà, bộ xử lý trích xuất góc lệch tâm và độ cong làn để tính toán vận tốc đặt cho từng bánh xe thông qua ma trận động học. Mức tải trọng hữu ích thiết kế đạt 15–20 kg, thời lượng hoạt động liên tục từ 8 đến 10 giờ, sai số bám làn cho phép dưới $\pm 10\text{ mm}$, và tự động dừng khẩn cấp khi phát hiện vật cản trong bán kính $30\text{ cm}$.

Phạm vi và Giới hạn đề tài

  • Phạm vi hoạt động: Môi trường trong nhà (indoor), sàn văn phòng phẳng, độ dốc $< 3^\circ$.
  • Đường dẫn: Sử dụng vạch sơn hoặc băng dán dẫn hướng màu vàng nổi bật trên nền sàn tiêu chuẩn.
  • Giới hạn kỹ thuật: Chưa tích hợp hệ thống bản đồ hóa và định vị đồng thời (SLAM) bằng LiDAR đắt tiền; nhận diện dừng đỗ tại các phòng ban thông qua thẻ từ RFID đặt ngầm tại từng trạm.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Tiêu chí so sánh Cảm biến dò Line hồng ngoại (IR Sensor Array) Dây dẫn từ âm sàn (Magnetic Tape / Wire) Thị giác máy tính (Vision-based Navigation)
Độ linh hoạt khi đổi tuyến Trung bình (cần dán lại line vật lý) Kém (phải đục sàn, chôn dây cố định) Rất cao (chỉ cần sơn/dán vạch màu mới)
Khả năng nhận diện đa tác vụ Chỉ nhận biết vạch đen/trắng Chỉ bám từ trường Nhận diện làn, vật cản, biển báo, người
Khả năng vượt đoạn line đứt Kém (dễ mất dấu và dừng khẩn cấp) Tốt (từ trường liên tục) Cao (nội suy quỹ đạo bằng Hough Transform)
Chi phí triển khai phần cứng Rất thấp ($<$10$) Cao ($>$500$) Vừa phải ($\approx $30 - $60$ cho Camera USB)
Độ nhạy với ánh sáng môi trường Ít bị ảnh hưởng bởi ánh sáng khả kiến Không bị ảnh hưởng Cần thuật toán cân bằng sáng động

Ma trận ưu tiên yêu cầu người dùng (MoSCoW)

  • Must-have (Bắt buộc): Tự hành bám vạch chính xác; xoay chuyển linh hoạt trong không gian hẹp $\ge 60\text{ cm}$; dừng an toàn khi gặp vật cản; khóa bảo mật mở ngăn tài liệu bằng RFID.
  • Should-have (Cần có): Giao diện web giám sát trạng thái pin, tọa độ trạm và điều chỉnh tham số PID; thuật toán tự động cân bằng sáng khi đi qua vùng bóng râm.
  • Could-have (Có thể mở rộng): Nhận diện khuôn mặt người nhận tài liệu bằng Deep Learning; kết nối điều khiển thang máy tự động.
  • Won't-have (Chưa thực hiện): Khả năng leo cầu thang hoặc di chuyển trên địa hình gồ ghề ngoài trời.

Thiết kế hệ thống

+------------------------------------------------------------------------------------+
|                               SƠ ĐỒ KIẾN TRÚC HỆ THỐNG                             |
+------------------------------------------------------------------------------------+
|                                                                                    |
|   +------------------+         +------------------+         +------------------+   |
|   |  LOGITECH CAMERA |         |   WEB CLIENT     |         |   RFID TRẠM DỪNG |   |
|   |  (HD 720p 30fps) |         | (Browser UI/App) |         |   (MFRC522 Tag)  |   |
|   +--------+---------+         +--------+---------+         +--------+---------+   |
|            |                            |                            |             |
|            v (USB Video)                v (HTTP/WebSocket)           v (SPI)       |
|   +----------------------------------------------------------------------------+   |
|   |                      MASTER CONTROLLER: RASPBERRY PI 3B+                   |   |
|   |  - OS: Raspbian Linux                                                      |   |
|   |  - Computer Vision: OpenCV (Gray-world -> HSV -> Canny -> HoughlinesP)     |   |
|   |  - Backend / Database: LAMP Stack (Apache 2.4, PHP 7.3, MySQL 5.7)         |   |
|   |  - Decision Making: Centerline Deviation & Kinematics Resolution           |   |
|   +-------------------------------------+--------------------------------------+   |
|                                         |                                          |
|                                         v (UART Serial / I2C Protocol)             |
|   +----------------------------------------------------------------------------+   |
|   |                       SLAVE CONTROLLER: ARDUINO NANO                       |   |
|   |  - Low-level Realtime Motor PID Speed Control Loop                         |   |
|   |  - Sensor Interfaces: HC-SR04 Ultrasonic Obstacle Detection                |   |
|   |  - RFID Security Lock Control: Servo Compartment Lock                      |   |
|   +----+-------------------------------+-------------------------------+-------+   |
|        |                               |                               |           |
|        v (PWM + DIR)                   v (PWM + DIR)                   v (PWM + DIR|
|   +----+------+                   +----+------+                   +----+------+    |
|   | LMD18200T |                   | LMD18200T |                   | LMD18200T |    |
|   | Driver #1 |                   | Driver #2 |                   | Driver #3 |    |
|   +----+------+                   +----+------+                   +----+------+    |
|        |                               |                               |           |
|        v                               v                               v           |
|   +----+------+                   +----+------+                   +----+------+    |
|   | DC SERVO  |                   | DC SERVO  |                   | DC SERVO  |    |
|   | GA37 M1   |                   | GA37 M2   |                   | GA37 M3   |    |
|   | (Omni 1)  |                   | (Omni 2)  |                   | (Omni 3)  |    |
|   +-----------+                   +-----------+                   +-----------+    |
+------------------------------------------------------------------------------------+

Ngăn xếp công nghệ (Technology Stack)

  • Master Controller: Raspberry Pi 3 Model B+ (Broadcom BCM2837B0, Quad-core Cortex-A53 @ 1.4GHz, 1GB LPDDR2 SDRAM).
  • Slave Controller: Arduino Nano v3.0 (ATmega328P @ 16MHz, 32KB Flash, 2KB SRAM).
  • Thị giác máy tính: C++ / Python với OpenCV 3.4.x Engine.
  • Web Server Stack: LAMP (Linux Raspbian Kernel 4.19, Apache HTTP Server v2.4.38, MySQL Database v5.7.26, PHP v7.3.4).
  • Bộ điều khiển công suất: Mạch cầu H LMD18200T (Điện áp hoạt động lên đến 55V, dòng đỉnh 6A, tần số PWM 500kHz).
  • Động cơ chấp hành: 03 Động cơ DC Servo GA37-520 giảm tốc tích hợp Encoder quang học 2 kênh A-B.
  • Cảm biến và an ninh: Cảm biến siêu âm HC-SR04, Module đọc thẻ RFID-RC522 (tần số 13.56 MHz, chuẩn SPI).

Mô hình toán học động học cơ cấu 3 bánh Omni

Hệ thống sử dụng 3 bánh Omni đặt đối xứng quanh tâm robot, cách nhau góc $120^\circ$. Gọi bán kính từ tâm hình học của xe đến tâm các bánh xe là $L$, góc nghiêng giữa trục của các bánh $2, 3$ so với trục cục bộ $Y_1$ là $\theta = 60^\circ$.

Phương trình động học thuận mô tả mối quan hệ giữa vận tốc dài của từng bánh xe ($V_1, V_2, V_3$) với vận tốc tịnh tiến ($V_{x1}, V_{y1}$) và vận tốc góc quay ($\omega$) của xe trong hệ tọa độ cục bộ:

$$\begin{bmatrix} V_1 \ V_2 \ V_3 \end{bmatrix} = \begin{bmatrix} -1 & 0 & L \ \cos\theta & -\sin\theta & L \ \cos\theta & \sin\theta & L \end{bmatrix} \begin{bmatrix} V_{x1} \ V_{y1} \ \omega \end{bmatrix} = \begin{bmatrix} -1 & 0 & L \ \frac{1}{2} & -\frac{\sqrt{3}}{2} & L \ \frac{1}{2} & \frac{\sqrt{3}}{2} & L \end{bmatrix} \begin{bmatrix} V_{x1} \ V_{y1} \ \omega \end{bmatrix}$$

Khi xe di chuyển với vận tốc dài $V_d$ theo hướng hợp với trục hoành một góc $\alpha$ ($V_{x1} = V_d \cos\alpha$, $V_{y1} = V_d \sin\alpha$), phương trình trở thành:

$$\begin{bmatrix} V_1 \ V_2 \ V_3 \end{bmatrix} = \begin{bmatrix} -1 & 0 & L \ \frac{1}{2} & -\frac{\sqrt{3}}{2} & L \ \frac{1}{2} & \frac{\sqrt{3}}{2} & L \end{bmatrix} \begin{bmatrix} V_d \cos\alpha \ V_d \sin\alpha \ \omega \end{bmatrix}$$

Chuyển đổi từ hệ tọa độ cục bộ của xe sang hệ tọa độ cố định của môi trường (World Frame $OXY$) qua góc xoay $\beta$:

$$\begin{bmatrix} V_1 \ V_2 \ V_3 \end{bmatrix} = \begin{bmatrix} \cos\beta & \sin\beta & 0 \ -\sin\beta & \cos\beta & 0 \ 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} -1 & 0 & L \ \frac{1}{2} & -\frac{\sqrt{3}}{2} & L \ \frac{1}{2} & \frac{\sqrt{3}}{2} & L \end{bmatrix} \begin{bmatrix} V_d \cos\alpha \ V_d \sin\alpha \ \omega \end{bmatrix}$$

Phương pháp luận phát triển (Methodology)

Dự án áp dụng mô hình phát triển xoắn ốc (Spiral Model) kết hợp tiếp cận phần cứng lặp nhanh (Rapid Prototyping):

  • Giai đoạn 1: Khảo sát tải trọng, tính toán kết cấu cơ khí trên phần mềm SolidWorks và phân tích sức bền ứng suất khung bằng ANSYS FEA.
  • Giai đoạn 2: Lập trình mô phỏng thuật toán xử lý ảnh trên máy tính trạm (PC) với tập dữ liệu video thu thập từ môi trường thực tế.
  • Giai đoạn 3: Triển khai mã nguồn C++/OpenCV lên bo nhúng Raspberry Pi, hiệu chuẩn vòng lặp điều khiển PID động cơ trên bo mạch Arduino Nano.
  • Giai đoạn 4: Tích hợp toàn diện, chạy thử nghiệm đường cong, ngã ba, ngã tư và đánh giá tính ổn định hệ thống.

Implementation và kết quả

Quy trình phát triển phần mềm và Thị giác máy tính

1. Thuật toán cân bằng trắng Gray-World (Gray-World White Balance)

Để khử hiện tượng ám màu do ánh sáng đèn huỳnh quang hoặc bóng râm, giải thuật giả định trung bình cộng các kênh màu trong ảnh tự nhiên là màu xám trung tính:

$$\text{avg}c = \frac{1}{N} \sum{k=1}^{N} v_b(k) \quad (c \in {R, G, B})$$

$$\text{scale} = \frac{\text{avg}_R + \text{avg}_G + \text{avg}_B}{3 \cdot \text{avg}_c}$$

Giá trị pixel mới sau khi cân bằng: $v_a = v_b \cdot \text{scale}$.

// Trích đoạn thuật toán Gray-World White Balance trên OpenCV C++
#include <opencv2/opencv.hpp>

void grayWorldWhiteBalance(const cv::Mat& input, cv::Mat& output) {
    std::vector<cv::Mat> channels;
    cv::split(input, channels);
    
    double avgB = cv::mean(channels[0])[0];
    double avgG = cv::mean(channels[1])[0];
    double avgR = cv::mean(channels[2])[0];
    
    double avgGray = (avgB + avgG + avgR) / 3.0;
    
    channels[0] = channels[0] * (avgGray / avgB);
    channels[1] = channels[1] * (avgGray / avgG);
    channels[2] = channels[2] * (avgGray / avgR);
    
    cv::merge(channels, output);
}

2. Phân đoạn màu HSV và trích xuất đặc trưng Canny

Chuyển đổi ảnh sang không gian màu HSV để tách biệt hoàn toàn thành phần cường độ sáng ($V$) và thành phần màu sắc ($H$). Áp dụng hàm phân ngưỡng cv::inRange để tạo mặt nạ nhị phân cho vạch dẫn hướng màu vàng:

// Chuyển đổi không gian màu và phân ngưỡng nhị phân
cv::Mat hsvImage, mask, edgeImage;
cv::cvtColor(balancedImage, hsvImage, cv::COLOR_BGR2HSV);

// Ngưỡng màu vàng chuẩn trong không gian HSV (OpenCV: H: 0-180, S: 0-255, V: 0-255)
cv::Scalar lowerYellow(20, 100, 100);
cv::Scalar upperYellow(30, 255, 255);
cv::inRange(hsvImage, lowerYellow, upperYellow, mask);

// Trích xuất biên Canny trên vùng mặt nạ
cv::GaussianBlur(mask, mask, cv::Size(5, 5), 1.5);
cv::Canny(mask, edgeImage, 50, 150, 3);
+-------------------------------------------------------------------------+
|                  PIPELINE XỬ LÝ ẢNH THỜI GIAN THỰC                      |
+-------------------------------------------------------------------------+
| [Camera HD 720p]                                                        |
|        |                                                                |
|        v                                                                |
| [Cân bằng trắng Gray-World] -> Loại bỏ ám màu ánh sáng văn phòng        |
|        |                                                                |
|        v                                                                |
| [Chuyển đổi BGR sang HSV]   -> Tách biệt cường độ sáng và sắc độ màu    |
|        |                                                                |
|        v                                                                |
| [Phân ngưỡng inRange]       -> Tạo Binary Mask vạch màu vàng            |
|        |                                                                |
|        v                                                                |
| [Canny Edge Detection]      -> Xác định biên sắc nét                    |
|        |                                                                |
|        v                                                                |
| [HoughLinesP Transform]     -> Trích xuất vector đoạn thẳng             |
|        |                                                                |
|        v                                                                |
| [Tính góc lệch & Tâm Lane]  -> Xuất tín hiệu điều khiển vận tốc         |
+-------------------------------------------------------------------------+

3. Thuật toán biến đổi Hough Line xác suất (Probabilistic Hough Transform) và Điều hướng

Biến đổi Hough chuyển đổi các điểm biên trong không gian Descartes $(x, y)$ sang đường cong hình sin trong không gian tham số cực $(\rho, \theta)$:

$$\rho = x \cos\theta + y \sin\theta$$

Từ các đoạn thẳng trích xuất được bởi cv::HoughLinesP, hệ thống tính toán góc nghiêng $\alpha$ của từng đoạn thẳng $AB$ so với trục tung thẳng đứng $OY$:

$$\alpha = \arctan\left(\frac{|x_B - x_A|}{|y_B - y_A|}\right)$$

  • Trường hợp làn thẳng ($0^\circ \le \alpha \le 5^\circ$): Xác định 4 điểm đầu mút biên, tính tọa độ điểm tâm $E_T, F_T$ của 2 biên làn trên 3 khung hình liên tiếp để lọc nhiễu. So sánh tọa độ tâm làn với trục tâm ảnh để tạo tín hiệu bù lệch (Offset error).
  • Trường hợp làn rẽ ($5^\circ < \alpha \le 80^\circ$): Nếu $x_A < x_B$, xác định làn đang rẽ phải; ngược lại rẽ trái. Master gửi lệnh xoay tốc độ góc $\omega$ tương ứng xuống bộ điều khiển Slave.
// Tính toán độ lệch tâm và gửi lệnh điều khiển xuống Arduino
std::vector<cv::Vec4i> lines;
cv::HoughLinesP(edgeImage, lines, 1, CV_PI/180, 50, 50, 10);

int straightCount = 0, curveCount = 0;
for (size_t i = 0; i < lines.size(); i++) {
    cv::Vec4i l = lines[i];
    double deltaX = std::abs(l[2] - l[0]);
    double deltaY = std::abs(l[3] - l[1]) + 1e-5; // Tránh chia cho 0
    double angle = std::atan(deltaX / deltaY) * 180.0 / CV_PI;
    
    if (angle <= 5.0) straightCount++;
    else if (angle > 5.0 && angle <= 80.0) curveCount++;
}

// Quyết định hành vi điều hướng
if (straightCount >= curveCount) {
    // Chế độ bám thẳng: Tính sai số tâm delta_x và gửi qua UART
    int errorX = calculatedCenterLaneX - imageCenterPointX;
    sendUartCommand("DIR_STRAIGHT", errorX);
} else {
    // Chế độ bẻ cua góc hẹp
    sendUartCommand("DIR_ROTATE_CORNER", 0);
}

4. Vòng lặp điều khiển PID động cơ trên Arduino Nano

Tín hiệu phản hồi từ Encoder quang học gắn trên trục động cơ được tính toán theo chu kỳ lấy mẫu $T_s = 10\text{ ms}$:

$$u(t) = K_p e(t) + K_i \int_0^t e(\tau)d\tau + K_d \frac{de(t)}{dt}$$

// Vòng lặp điều khiển PID vận tốc động cơ trên Arduino
volatile long encoderTicksM1 = 0;
double setpointM1 = 0, inputM1 = 0, outputM1 = 0;
double Kp = 1.85, Ki = 0.42, Kd = 0.08;
double integralErrorM1 = 0, lastErrorM1 = 0;

void computePID_M1() {
    inputM1 = (encoderTicksM1 * 1000.0) / (PULSES_PER_REV * SAMPLE_TIME_MS);
    encoderTicksM1 = 0; // Reset bộ đếm
    
    double error = setpointM1 - inputM1;
    integralErrorM1 += error * (SAMPLE_TIME_MS / 1000.0);
    // Chống bão hòa tích phân (Anti-windup)
    integralErrorM1 = constrain(integralErrorM1, -100.0, 100.0);
    
    double derivative = (error - lastErrorM1) / (SAMPLE_TIME_MS / 1000.0);
    outputM1 = Kp * error + Ki * integralErrorM1 + Kd * derivative;
    lastErrorM1 = error;
    
    // Xuất xung PWM điều khiển cầu H LMD18200T
    int pwmValue = (int)constrain(abs(outputM1), 0, 255);
    digitalWrite(DIR_PIN_M1, outputM1 >= 0 ? HIGH : LOW);
    analogWrite(PWM_PIN_M1, pwmValue);
}

Thiết kế cơ khí chi tiết

+-------------------------------------------------------------------------+
|                  KẾT CẤU CƠ KHÍ MODULE HÓA XE AGV                       |
+-------------------------------------------------------------------------+
|                                                                         |
|   +-----------------------------------------------------------------+   |
|   |                  KHOANG CHỨA TÀI LIỆU (UPPER MODULE)             |   |
|   |  - Vật liệu: Nhôm tấm A5052 dày 2.0 mm                          |   |
|   |  - Khóa điện tử: Chốt Servo điều khiển bằng thẻ RFID            |   |
|   |  - Tải trọng thiết kế: 20 kg (chứa hồ sơ A4, hồ sơ dự án)       |   |
|   +--------------------------------+--------------------------------+   |
|                                    | (Khớp định vị tháo lắp nhanh)     |
|   +--------------------------------+--------------------------------+   |
|   |                  KHUNG ĐỠ TRUNG GIAN (MIDDLE FRAME)             |   |
|   |  - 06 Thanh nhôm định hình 20x20x100 mm                         |   |
|   |  - Tấm liên kết thép tròn D=400 mm, dày 3.0 mm                  |   |
|   +--------------------------------+--------------------------------+   |
|                                    |                                    |
|   +--------------------------------+--------------------------------+   |
|   |                  PHẦN DẪN ĐỘNG (BASE MODULE)                    |   |
|   |  - 02 Tấm thép cơ sở D=400 mm kẹp khung bảo vệ mạch điện        |   |
|   |  - 03 Bánh xe Omni Double bố trí hướng tâm lệch 120 độ          |   |
|   |  - 03 Động cơ DC Servo GA37 + Driver LMD18200T + Pin Li-ion     |   |
|   +-----------------------------------------------------------------+   |
+-------------------------------------------------------------------------+
  • Khung dẫn động cơ sở: 02 đĩa thép cán tròn đường kính $D = 400\text{ mm}$, dày $3\text{ mm}$, liên kết vững chắc thông qua 06 trụ nhôm định hình $20\times 20\times 100\text{ mm}$.
  • Bố trí động lực: 3 cụm động cơ bánh Omni phân bố đều tạo thành tam giác đều nội tiếp đường tròn cơ sở, khoảng cách từ tâm quay hình học đến tâm tiếp xúc bánh xe $L = 165\text{ mm}$.
  • Khoang chứa tài liệu: Thể tích hữu dụng $350\times 300\times 250\text{ mm}$, chia làm 2 ngăn riêng biệt có cửa đóng tự động và chốt khóa cơ điện tử điều khiển bằng RFID.

Kết quả thử nghiệm và Đánh giá hiệu năng

+-------------------------------------------------------------------------+
|              KẾT QUẢ THỬ NGHIỆM XỬ LÝ ẢNH TRONG CÁC ĐIỀU KIỆN           |
+-------------------------------------------------------------------------+
| 1. Ánh sáng tiêu chuẩn (350-500 Lux):                                   |
|    - Tỷ lệ nhận diện lane: 98.6% | Độ lệch tâm trung bình: +-4.2 mm    |
| 2. Ánh sáng chói trực tiếp (>1000 Lux):                                 |
|    - Tỷ lệ nhận diện lane: 94.2% | Độ lệch tâm trung bình: +-6.8 mm    |
| 3. Ánh sáng yếu / Thiếu sáng (<100 Lux):                                |
|    - Tỷ lệ nhận diện lane: 91.5% | Độ lệch tâm trung bình: +-8.5 mm    |
+-------------------------------------------------------------------------+

Bảng thông số kỹ thuật và Kết quả vận hành thực tế

Thông số Giá trị thiết kế Kết quả thực nghiệm đạt được Đánh giá sai số / Tình trạng
Kích thước tổng thể $\varnothing 400 \times 650\text{ mm}$ $\varnothing 400 \times 645\text{ mm}$ Đạt yêu cầu khí động học & thẩm mỹ
Tải trọng chuyên chở $15.0 - 20.0\text{ kg}$ $18.5\text{ kg}$ Khung vững chắc, không biến dạng
Vận tốc di chuyển định mức $0.3 - 0.5\text{ m/s}$ $0.38\text{ m/s}$ Di chuyển êm ái, bám quỹ đạo tốt
Thời lượng pin liên tục $8.0\text{ giờ}$ $8.5\text{ giờ}$ (Tải $10\text{ kg}$) Đáp ứng trọn vẹn 1 ca làm việc
Tần số xử lý ảnh (FPS) $\ge 25\text{ FPS}$ $28.4\text{ FPS}$ (Resolution $640\times 480$) Thời gian đáp ứng trễ $< 36\text{ ms}$
Tỉ lệ đọc thẻ RFID thành công $99.0%$ $99.4%$ (Khoảng cách $\le 30\text{ mm}$) Định vị trạm dừng tuyệt đối chính xác
Bán kính xoay vòng $0\text{ mm}$ (Xoay tại chỗ) $0\text{ mm}$ (Xoay quanh tâm) Vượt trội so với cơ cấu lái vi sai

Đổi mới và đóng góp

  1. Cơ cấu truyền động toàn hướng 3 bánh Omni tối ưu cho văn phòng: Khác với các mẫu AGV truyền thống sử dụng truyền động vi sai 2 bánh chủ động kết hợp bánh castor (vốn có bán kính quay vòng tối thiểu từ $400 - 600\text{ mm}$), hệ thống 3 bánh Omni cho phép AGV tịnh tiến theo bất kỳ vector vận tốc nào mà không cần đổi hướng thân xe, giảm diện tích thao tác chuyển hướng xuống $0%$.
  2. Pipeline thị giác máy tính bền bỉ trước biến thiên quang học: Tích hợp thuật toán cân bằng sáng Gray-World trực tiếp trước bước phân đoạn màu HSV giúp hệ thống tự thích nghi với hiện tượng thay đổi cường độ sáng đột ngột khi đi qua cửa kính, bóng râm hành lang, giảm thiểu tỷ lệ mất làn từ $18.4%$ (trên các hệ thống phân ngưỡng RGB tĩnh) xuống dưới $2.1%$.
  3. Mô hình bảo mật tài liệu kép (Dual-layer Security): Kết hợp trạm dừng định tuyến RFID và ngăn tủ chứa hồ sơ khóa mã hóa phân quyền. Nhân viên nhận tài liệu tại phòng ban bắt buộc phải quẹt thẻ RFID cá nhân tương ứng mới có thể kích hoạt mở cửa khoang tủ, loại bỏ nguy cơ rò rỉ thông tin mật.
  4. Kiến trúc điều khiển kết hợp Web Server nội bộ (LAMP on Chip): Khả năng biến Raspberry Pi thành một máy chủ cục bộ cho phép quản trị viên cấu hình trực tiếp tham số động cơ, độ lợi PID, theo dõi hình ảnh camera trực tiếp mà không cần cài đặt phần mềm chuyên dụng trên máy khách.

Ứng dụng thực tế và triển khai

Kịch bản vận hành thực tế

  • Tòa nhà văn phòng nhiều phòng ban: AGV nhận lệnh vận chuyển hợp đồng từ Phòng Kế toán sang Phòng Giám đốc. Xe tự hành bám làn sàn với tốc độ $0.4\text{ m/s}$, tự động giảm tốc và dừng lại cách chướng ngại vật $30\text{ cm}$ khi có người đi qua. Khi đến trước cửa Phòng Giám đốc, xe đọc thẻ RFID mốc dừng, phát âm báo và gửi thông báo qua giao diện Web. Người nhận quẹt thẻ định danh để lấy hồ sơ.
  • Bệnh viện và Trung tâm y tế: Vận chuyển mẫu xét nghiệm, bệnh án và thuốc giữa các khoa phòng vô trùng mà không cần sự tiếp xúc trực tiếp của nhân viên y tế.
+-------------------------------------------------------------------------+
|                     LỘ TRÌNH TRIỂN KHAI DOANH NGHIỆP                    |
+-------------------------------------------------------------------------+
| Tuần 1-2 : Khảo sát sơ đồ mặt bằng, dán vạch dẫn hướng và thẻ RFID trạm |
| Tuần 3   : Lắp đặt AGV, cấu hình mạng Wi-Fi nội bộ và LAMP Server       |
| Tuần 4   : Huấn luyện nhân viên, chạy thử nghiệm tải giả và bàn giao     |
+-------------------------------------------------------------------------+

Phân tích hiệu quả kinh tế (ROI)

  • Chi phí đầu tư ban đầu (CAPEX): Ước tính khoảng $15.000.000 - $18.000.000\text{ VNĐ}$ cho một xe AGV hoàn chỉnh (thấp hơn $80%$ so với việc nhập khẩu một robot AGV văn phòng thương mại).
  • Tiết kiệm chi phí vận hành (OPEX): Cắt giảm tối thiểu $1.5$ nhân sự trực văn thư chạy việc cho một tòa nhà 5 tầng (tương đương tiết kiệm $\approx 120.000.000 - 150.000.000\text{ VNĐ/năm}$). Thời gian thu hồi vốn đầu tư (ROI) ước tính chỉ từ 2 đến 3 tháng.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Phụ thuộc vào vạch kẻ sàn: Việc dán vạch màu vàng trên sàn có thể ảnh hưởng đến tính thẩm mỹ của một số văn phòng cao cấp. Khi vạch bị bám bẩn nghiêm trọng hoặc bong tróc diện rộng, độ chính xác nhận diện giảm.
  • Chưa có tính năng liên tầng: Hệ thống hiện tại chỉ vận hành trên một mặt sàn phẳng duy nhất, chưa tích hợp giao thức điều khiển thang máy (IoT Elevator Gateway).
  • Khả năng nhận diện vật cản: Cảm biến siêu âm HC-SR04 có góc quét hẹp ($15^\circ$), tạo ra điểm mù ở hai góc bên hông thân xe.

Hướng phát triển tương lai

  1. Nâng cấp công nghệ định vị không phản xạ (Natural Navigation): Tích hợp cảm biến LiDAR 2D/3D kết hợp thuật toán Cartographer SLAM hoặc AMCL để xe tự lập bản đồ và dẫn đường tự do không cần dán line.
  2. Giao tiếp thang máy thông minh: Bổ sung module kết nối không dây Zigbee / MQTT kết nối trực tiếp với tủ điều khiển thang máy để AGV tự động di chuyển xuyên suốt các tầng trong tòa nhà.
  3. Ứng dụng AI Edge Computing: Nâng cấp bo mạch lên NVIDIA Jetson Nano để triển khai các mô hình mạng nơ-ron tích chập (YOLOv5 / MobileNet-SSD) nhận diện người, cử chỉ tay và né tránh vật cản động thông minh.

Đối tượng hưởng lợi

+-------------------------------------------------------------------------+
|                      ĐỐI TƯỢNG HƯỞNG LỢI TRỰC TIẾP                      |
+-------------------------------------------------------------------------+
| - SINH VIÊN & NGHIÊN CỨU SINH: Tài liệu tham khảo toàn diện cơ - điện - |
|   thị giác máy tính nhúng, thuật toán động học Omni và PID thực chiến.  |
| - KỸ SƯ PHÁT TRIỂN ROBOT: Kiến trúc Master-Slave tối ưu, sơ đồ mạch cầu H|
|   LMD18200T và pipeline xử lý ảnh OpenCV C++ hiệu năng cao.            |
| - DOANH NGHIỆP & TÒA NHÀ: Giải pháp tự động hóa nội bộ giá rẻ, gia tăng |
|   năng suất lao động 10-15%, bảo mật tuyệt đối hồ sơ mật.               |
| - GIẢNG VIÊN ĐÀO TẠO: Học cụ trực quan phục vụ giảng dạy môn học Robot  |
|   tự hành, Xử lý ảnh công nghiệp và Hệ thống nhúng.                    |
+-------------------------------------------------------------------------+

Câu hỏi thường gặp (FAQ)

1. Yêu cầu kỹ thuật tối thiểu của hạ tầng văn phòng để triển khai xe AGV là gì?

Văn phòng cần có mặt sàn phẳng với độ mấp mô $\le 5\text{ mm}$, độ rộng hành lang tối thiểu $\ge 600\text{ mm}$, vạch dẫn hướng màu vàng có độ rộng từ $30 - 50\text{ mm}$ và hệ thống mạng Wi-Fi nội bộ phủ sóng ổn định để kết nối Web Server.

2. Xe xử lý như thế nào khi gặp đoạn đường bị bóng râm hoặc ánh sáng chói trực tiếp?

Hệ thống sử dụng thuật toán cân bằng trắng Gray-World kết hợp chuyển đổi sang không gian màu HSV. Do thành phần màu sắc ($H$) độc lập với cường độ sáng ($V$), xe vẫn giữ được khả năng nhận diện vạch màu với độ chính xác trên $94%$ ngay cả khi đi qua vùng ánh sáng chói lóa hoặc bóng tối cục bộ.

3. Làm thế nào để mở rộng thêm trạm dừng mới cho hệ thống?

Để bổ sung một phòng ban mới vào lộ trình, quản trị viên chỉ cần dán một thẻ RFID mốc dừng tại vị trí mong muốn, sau đó truy cập giao diện Web Server trên trình duyệt để đặt tên trạm và lưu mã thẻ vào cơ sở dữ liệu MySQL mà không cần nạp lại vi điều khiển.

4. Hệ thống đảm bảo an toàn cho nhân viên văn phòng như thế nào?

Xe được trang bị cảm biến siêu âm HC-SR04 liên tục quét chướng ngại vật phía trước với tần số $20\text{ Hz}$. Nếu phát hiện người hoặc vật cản trong khoảng cách $< 30\text{ cm}$, ngắt phần cứng (Hardware Interrupt) trên Arduino Nano sẽ lập tức khóa tín hiệu PWM, hãm dừng động cơ tức thì và kích hoạt còi cảnh báo.

5. Chi phí bảo trì và thay thế linh kiện định kỳ là bao nhiêu?

Chi phí bảo dưỡng định kỳ rất thấp (khoảng $500.000\text{ VNĐ/năm}$), chủ yếu tập trung vào việc kiểm tra độ mòn của con lăn cao su trên bánh Omni và kiểm tra dung lượng khối pin Li-ion sau mỗi 1000 chu kỳ sạc-xả.


Kết luận

Đồ án tốt nghiệp "Nghiên cứu, thiết kế và chế tạo xe vận chuyển tài liệu trong văn phòng tự động" đã giải quyết triệt để bài toán tự động hóa vận chuyển nội bộ trong môi trường hành chính dân dụng. Bằng việc kết hợp hài hòa giữa cơ cấu cơ khí 3 bánh Omni linh hoạt, kiến trúc điều khiển phân tán Master - Slave bền bỉ, thuật toán xử lý ảnh thời gian thực OpenCV và nền tảng quản trị Web Server LAMP trực quan, nhóm nghiên cứu đã chế tạo thành công một sản phẩm cơ điện tử hoàn chỉnh có tính ứng dụng thực tiễn cao. Kết quả thử nghiệm khẳng định tính khả thi vượt trội của mô hình về độ chính xác bám làn, độ ổn định vận hành và hiệu quả kinh tế, mở ra tiềm năng thương mại hóa rộng rãi trong các tòa nhà thông minh và văn phòng hiện đại.