Giới thiệu dự án
Trong bối cảnh bùng nổ của thương mại điện tử và chuỗi cung ứng thông minh thế kỷ 21, hoạt động lấy hàng (order picking) chiếm tới 55% – 65% tổng chi phí vận hành kho bãi và tiêu tốn hơn 50% thời gian di chuyển của nhân công. Tại Việt Nam, phần lớn các kho hàng bán lẻ và trung tâm phân phối vẫn dựa vào phương thức vận hành thủ công hoặc bán tự động. Việc công nhân di chuyển hàng chục kilomet mỗi ngày để định vị, bốc dỡ từng mã hàng không chỉ gây lãng phí nhân lực mà còn tiềm ẩn nguy cơ sai sót cao và giới hạn tốc độ xử lý đơn hàng trong ngày.
Dự án "Thiết kế và chế tạo mô hình robot lấy hàng tự động" được thực hiện nhằm giải quyết trực tiếp bài toán tự động hóa logistics nội bộ (Intralogistics). Hệ thống kết hợp giữa robot tự hành đa hướng (Autonomous Mobile Robot - AMR) với cơ cấu chấp hành nâng hạ, ứng dụng giải thuật định tuyến tối ưu và hệ thống quản trị trung tâm dựa trên nền tảng Web Server.
+-------------------------------------------------------------------------+
| KIẾN TRÚC TỔNG THỂ HỆ THỐNG |
+-------------------------------------------------------------------------+
| [ Giao diện Người dùng / Web Server ] |
| [ Khối Điều khiển Cấp cao: Raspberry Pi 4 Model B ] |
| [ Khối Điều khiển Thời gian thực: Arduino Mega 2560 ] |
| [Cơ cấu Di chuyển X-Y] [Cơ cấu Chuyển phương] [Cơ cấu Nâng hạ] |
| Động cơ Planet 36RB24900 Động cơ GA25-370 + T8 Trục vít đai ốc + |
| + Bánh răng côn 90° + Đai răng GT2 Khóa Solenoid LY-01 |
+-------------------------------------------------------------------------+
Mục tiêu kỹ thuật của đề tài
- Thiết kế cơ khí chính xác: Chế tạo robot kích thước tiêu chuẩn $300 \times 400 \times 300\text{ mm}$, tự trọng 8 kg, tải trọng nâng định mức 2 kg (tổng tải có tải 10 kg).
- Cơ cấu chuyển hướng trực giao X-Y: Ứng dụng cơ cấu trục vít me - đai ốc kết hợp bộ truyền đai thang và bánh răng côn, cho phép robot đổi hướng di chuyển 90° mà không cần bán kính quay xe.
- Kiểm soát chuyển động chính xác: Xây dựng bộ điều khiển PID vận tốc vòng kín trên vi điều khiển ATmega2560, triệt tiêu sai số xác lập khi tải trọng thay đổi.
- Tối ưu hóa đường đi: Cài đặt thuật toán tìm kiếm $A^*$ ($A\text{-Star}$) trên ma trận không gian 2D, đảm bảo đường đi ngắn nhất và tự động tính toán lại đường đi khi phát hiện vật cản.
- Giám sát thời gian thực: Triển khai Web Server quản trị cơ sở dữ liệu trên Raspberry Pi 4, đồng bộ hóa vị trí tọa độ của robot theo chu kỳ thời gian thực.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
| Tiêu chí kỹ thuật / Vận hành |
Lấy hàng thủ công (Manual Picking) |
Hệ thống AS/RS cố định (Crane Stacker) |
Hệ thống Robot lấy hàng tự động (Đề tài) |
| Chi phí đầu tư ban đầu |
Rất thấp (chỉ giá kệ, xe đẩy) |
Cực kỳ cao ($> 200.000\text{ USD}$) |
Trung bình - Thấp (Module hóa) |
| Mật độ lưu trữ không gian |
Thấp (cần lối đi rộng $\ge 2.5\text{ m}$) |
Tối đa (tận dụng chiều cao kho) |
Cao (lối đi hẹp $\approx 0.5\text{ m}$) |
| Độ linh hoạt & Mở rộng |
Linh hoạt nhưng phụ thuộc nhân công |
Rất kém (cố định theo đường ray) |
Cao (dễ dàng tăng số lượng robot) |
| Tốc độ lấy hàng |
Chậm ($30 - 50\text{ lines/h}$) |
Rất nhanh ($150 - 200\text{ lines/h}$) |
Nhanh ($100 - 140\text{ lines/h}$) |
| Khả năng tự định tuyến |
Thủ công |
Theo trục cố định $X-Z$ |
Thuật toán $A^*$ trên lưới 2D |
Phân loại yêu cầu hệ thống theo mô hình MoSCoW
- Must have (Bắt buộc): Di chuyển chính xác theo 2 trục trực giao $X-Y$; tải hàng $2\text{ kg}$; thuật toán $A^*$ tìm đường tối ưu; bộ điều khiển PID giữ ổn định tốc độ; cảm biến phát hiện vật cản dừng khẩn cấp.
- Should have (Nên có): Giao tiếp UART không dây giữa Raspberry Pi và Arduino; Web Server giám sát tọa độ robot và trạng thái kho hàng; khóa điện từ Solenoid giữ an toàn giỏ hàng.
- Could have (Có thể mở rộng): Cơ chế sạc pin tự động khi dung lượng LiPo dưới 20%; hỗ trợ định tuyến đa robot tránh xung đột điểm giao cắt (Multi-agent Pathfinding).
- Won't have (Chưa thực hiện): Nhận diện mã vạch Barcode/QR code trực tiếp bằng Camera AI; cánh tay robot 6 bậc tự do gắp sản phẩm đơn lẻ.
Thiết kế hệ thống
Danh mục công nghệ và phiên bản (Technology Stack)
- Xử lý trung tâm: Raspberry Pi 4 Model B (Broadcom BCM2711, Quad-core Cortex-A72 1.5 GHz, 4GB LPDDR4, Raspberry Pi OS Debian 10 Buster).
- Điều khiển cơ sở: Arduino Mega 2560 (Microchip ATmega2560 8-bit AVR @ 16 MHz, 54 Digital I/O, 4 Hardware UARTs).
- Ngôn ngữ lập trình: C/C++ (Embedded Arduino v1.8.13), Python 3.7 (Xử lý thuật toán $A^*$), PHP 7.4.3 (Backend Web), HTML5/CSS3/JavaScript (Frontend).
- Hệ quản trị CSDL: MySQL Server 8.0.22 (Lưu trữ ma trận vị trí, trạng thái ô hàng và tọa độ thời gian thực).
- Mạch công suất & Giao tiếp: Driver động cơ DC XY-160D 7A Dual-channel, Driver L298N Dual H-Bridge, Mạch chuyển mức logic 8 kênh TXS0108E (3.3V $\leftrightarrow$ 5.0V bi-directional), Mạch Buck hạ áp DC-DC XL4016 8A và XL4015 5A.
+--------------------------------------------------------------------------+
| SƠ ĐỒ TRUYỀN ĐỘNG CƠ KHÍ |
+--------------------------------------------------------------------------+
| [Động cơ Di chuyển: Planet 36RB24900] |
| [Trục Bánh xe Chủ động Phương X / Phương Y] |
| |
| [Động cơ Chuyển phương: GA25-370 (12V, 60RPM)] |
| [Trục vít me T8 (Bước p = 2mm, Chiều dài l = 200mm)] |
| [Cơ cấu Hạ cụm bánh xe Phương Y / Nâng cụm bánh xe Phương X] |
+--------------------------------------------------------------------------+
Tính toán và kiểm nghiệm cơ khí
-
Kiểm tra điều kiện tự hãm của trục vít me T8 (Chuyển phương):
- Lực dọc trục phân bố: $F_a = \frac{G}{2} = \frac{80\text{ N}}{2} = 40\text{ N}$.
- Đường kính trung bình ren $d_2 = 7\text{ mm}$, bước ren $p = 2\text{ mm}$, số đầu mối ren $z_h = 1 \implies$ bước xoắn $p_h = 2\text{ mm}$.
- Góc nâng ren vít:
$$\gamma = \arctan\left(\frac{p_h}{\pi d_2}\right) = \arctan\left(\frac{2}{\pi \cdot 7}\right) \approx 5.20^\circ$$
- Góc ma sát quy ước đối với ren hình thang ($\alpha = 15^\circ$, hệ số ma sát thép - đồng $f = 0.12$):
$$\rho' = \arctan\left(\frac{f}{\cos \alpha}\right) = \arctan\left(\frac{0.12}{\cos 15^\circ}\right) \approx 7.08^\circ$$
- Do $\gamma < \rho'$ ($5.20^\circ < 7.08^\circ$), cơ cấu thỏa mãn tuyệt đối điều kiện tự hãm, đảm bảo không bị trượt khi ngắt nguồn động cơ.
-
Kiểm nghiệm độ ổn định dọc trục (Hiện tượng uốn dọc Euler):
- Hệ số chiều dài ngàm - bản lề $\mu = 0.7$, chiều dài tự do $l = 300\text{ mm}$. Bán kính quán tính $i = \frac{d_1}{4} = \frac{6}{4} = 1.5\text{ mm}$.
- Độ mảnh của trục vít:
$$\lambda = \frac{\mu l}{i} = \frac{0.7 \cdot 300}{1.5} = 140 > 100 \implies \text{Áp dụng công thức Euler}$$
- Tải trọng tới hạn Euler ($E = 2.1 \times 10^5\text{ N/mm}^2$, $J = \frac{\pi d_1^4}{64} = 63.62\text{ mm}^4$):
$$F_{th} = \frac{\pi^2 E J}{(\mu l)^2} = \frac{\pi^2 \cdot 2.1 \times 10^5 \cdot 63.62}{(0.7 \cdot 300)^2} \approx 2988.5\text{ N}$$
- Hệ số an toàn ổn định:
$$S_0 = \frac{F_{th}}{F_a} = \frac{2988.5}{40} \approx 74.71 \ge [S_0] = [2.5 \div 4.0] \quad (\text{Thỏa mãn an toàn})$$
Phương pháp nghiên cứu và phát triển (Methodology)
Dự án áp dụng mô hình phát triển gia tăng (Incremental V-Model) kết hợp kiểm thử phần cứng lặp (Hardware-in-the-loop - HIL) trong 14 tuần:
Tuần 01 - 04: Thiết kế CAD/CAE 3D trên Autodesk Inventor, gia công khung nhôm định hình 20x20, phay CNC chi tiết truyền động.
Tuần 05 - 07: Lắp ráp phần cứng, khảo sát hàm truyền động cơ DC Planet, lấy mẫu đáp ứng vận tốc để xác định thông số PID.
Tuần 08 - 10: Xây dựng thuật toán A* trên Python, thiết kế giao thức UART đồng bộ nhị phân giữa Raspberry Pi và Arduino Mega.
Tuần 11 - 14: Xây dựng cơ sở dữ liệu MySQL, giao diện Web LAMP, thử nghiệm tích hợp toàn hệ thống và hiệu chỉnh sai số thực địa.
Implementation và kết quả
Quá trình phát triển và thuật toán cốt lõi
1. Thuật toán tìm đường tối ưu $A^*$ (A-Star Algorithm)
Giải thuật tìm kiếm đồ thị heuristic sử dụng hàm đánh giá:
$$f(n) = g(n) + h(n)$$
- $g(n)$: Chi phí thực tế từ điểm xuất phát $S$ đến nút hiện tại $n$ (khoảng cách lưới trực giao = 10 đơn vị, đường chéo = 14 đơn vị theo định lý Pythagoras $\sqrt{10^2+10^2} \approx 14.14$).
- $h(n)$: Hàm ước lượng khoảng cách Heuristic Euclidean từ nút $n$ đến đích $T(x_d, y_d)$:
$$h(n) = \sqrt{(x_d - x_n)^2 + (y_d - y_n)^2}$$
# Cài đặt lõi giải thuật A* trên Raspberry Pi 4 (Python 3.7)
import math
class Node:
def __init__(self, x, y, g=0, h=0, parent=None):
self.x = x
self.y = y
self.g = g
self.h = h
self.f = g + h
self.parent = parent
def heuristic(x1, y1, x2, y2):
return math.sqrt((x2 - x1)**2 + (y2 - y1)**2) * 10
def a_star_search(grid_matrix, start, goal):
open_list = {}
closed_set = set()
start_node = Node(start[0], start[1], 0, heuristic(start[0], start[1], goal[0], goal[1]))
open_list[(start_node.x, start_node.y)] = start_node
# 8 hướng di chuyển: 4 trực giao (cost 10), 4 chéo (cost 14)
neighbors = [(-1,0,10), (1,0,10), (0,-1,10), (0,1,10),
(-1,-1,14), (-1,1,14), (1,-1,14), (1,1,14)]
while open_list:
current = min(open_list.values(), key=lambda node: node.f)
if (current.x, current.y) == goal:
path = []
while current:
path.append((current.x, current.y))
current = current.parent
return path[::-1] # Trả về lộ trình tối ưu từ Start -> Goal
del open_list[(current.x, current.y)]
closed_set.add((current.x, current.y))
for dx, dy, cost in neighbors:
nx, ny = current.x + dx, current.y + dy
if 0 <= nx < len(grid_matrix) and 0 <= ny < len(grid_matrix[0]):
if grid_matrix[nx][ny] == 1 or (nx, ny) in closed_set: # 1: Vật cản
continue
g_tentative = current.g + cost
if (nx, ny) not in open_list or g_tentative < open_list[(nx, ny)].g:
neighbor_node = Node(nx, ny, g_tentative,
heuristic(nx, ny, goal[0], goal[1]), current)
open_list[(nx, ny)] = neighbor_node
return None
2. Thuật toán điều khiển PID vận tốc vòng kín
Tín hiệu điều khiển rời rạc tại chu kỳ lấy mẫu $T_s = 10\text{ ms}$:
$$u[k] = K_p e[k] + K_i T_s \sum_{j=0}^{k} e[j] + K_d \frac{e[k] - e[k-1]}{T_s}$$
// Cài đặt bộ điều khiển PID rời rạc trên Arduino Mega 2560
#include <Arduino.h>
volatile long encoder_count = 0;
double setpoint_rpm = 150.0;
double current_rpm = 0.0;
double error = 0, last_error = 0, integral_error = 0, derivative_error = 0;
// Bộ tham số chỉnh định theo Ziegler-Nichols 2
const double Kp = 3.45;
const double Ki = 0.82;
const double Kd = 0.09;
const double Ts = 0.01; // 10ms sampling time
void IRAM_ATTR encoder_isr() {
encoder_count++;
}
void compute_pid() {
// Động cơ Planet 36RB: 334 xung/vòng (sau hộp giảm tốc)
current_rpm = ((double)encoder_count / 334.0) * (60.0 / Ts);
encoder_count = 0;
error = setpoint_rpm - current_rpm;
integral_error += error * Ts;
derivative_error = (error - last_error) / Ts;
double output_pwm = Kp * error + Ki * integral_error + Kd * derivative_error;
last_error = error;
// Giới hạn điện áp đầu ra PWM 0 - 255
output_pwm = constrain(output_pwm, 0, 255);
analogWrite(5, (int)output_pwm); // Chân PWM điều khiển Driver XY-160D
}
Kết quả kiểm nghiệm và dữ liệu thực nghiệm
Bảng thông số hiệu chỉnh PID và chất lượng đáp ứng động học
| Cấp vận tốc đặt (Setpoint) |
Hệ số $K_p$ |
Hệ số $K_i$ |
Hệ số $K_d$ |
Thời gian quá độ ($t_s$, sai số $\le 2%$) |
Độ vọt lố ($%OS$) |
Sai số xác lập ($e_{ss}$) |
| Mức chậm (16 RPM) |
2.10 |
0.45 |
0.03 |
$0.42\text{ s}$ |
$1.8%$ |
$0.0\text{ RPM}$ |
| Mức trung bình (50 RPM) |
2.85 |
0.65 |
0.06 |
$0.35\text{ s}$ |
$3.2%$ |
$0.0\text{ RPM}$ |
| Mức định mức (150 RPM) |
3.45 |
0.82 |
0.09 |
$0.28\text{ s}$ |
$4.5%$ |
$0.0\text{ RPM}$ |
Vận tốc (RPM)
0 0.28s (Thời gian quá độ ts)
Bảng đối chiếu mục tiêu thiết kế và kết quả thực nghiệm
| Hạng mục thông số |
Mục tiêu thiết kế ban đầu |
Kết quả thực nghiệm đạt được |
Đánh giá hoàn thành |
| Kích thước bao ngoài |
$300 \times 400 \times 300\text{ mm}$ |
$300 \times 400 \times 295\text{ mm}$ |
Đạt $100%$ |
| Tải trọng nâng hàng |
$2.0\text{ kg}$ |
$2.2\text{ kg}$ (Khối lượng max) |
Đạt $110%$ |
| Độ chính xác dừng điểm |
$\le \pm 5\text{ mm}$ |
$\pm 2.5\text{ mm}$ (Tại mỗi ô lưới) |
Vượt mục tiêu ($50%$) |
| Thời gian tính toán $A^*$ |
$\le 100\text{ ms}$ (Lưới $10 \times 10$) |
$32.4\text{ ms}$ (Raspberry Pi 4) |
Vượt mục tiêu ($67.6%$) |
| Độ trễ cập nhật Web Server |
$\le 500\text{ ms}$ |
$120\text{ ms}$ qua giao thức HTTP |
Đạt yêu cầu |
Đổi mới và đóng góp
- Cơ cấu chuyển hướng trực giao hai phương tách biệt ($X-Y$ Dual-Drive): Khác biệt hoàn toàn với robot vi sai (Differential Drive) cần không gian quay đầu hoặc bánh xe Mecanum đắt tiền và dễ trượt, mô hình sử dụng cụm nâng hạ bánh xe bằng trục vít T8 và đai răng GT2. Giải pháp này giúp chuyển đổi phương di chuyển vuông góc trong thời gian $< 1.2\text{ s}$, tăng độ chính xác vị trí lên 40% và loại bỏ hiện tượng trích tích lũy sai số góc quay.
- Kiến trúc điều khiển phân tầng linh hoạt (Hierarchical Control Architecture): Tách bạch giữa tầng tính toán giải thuật ma trận/Web Server (High-level: Raspberry Pi 4 chạy Linux) và tầng điều khiển phản hồi vận tốc thời gian thực (Low-level: Arduino Mega 2560 chạy vi chương trình C++ ngắt cứng $10\text{ ms}$). Thiết kế này triệt tiêu hoàn toàn hiện tượng nghẽn CPU khi vừa tính toán đường đi vừa phát xung PWM.
- Cơ chế tránh vật cản động thông minh: Khi cảm biến quang hồng ngoại E3F-DS30C4 phát hiện chướng ngại vật xuất hiện tức thời trên đường đi, robot lập tức gửi tín hiệu ngắt về Raspberry Pi để cập nhật trạng thái ô lưới $Grid(x, y) = 1$ và tái tính toán tuyến đường $A^*$ trong vòng $35\text{ ms}$, giảm $100%$ nguy cơ va chạm trong kho.
Ứng dụng thực tế và triển khai
Kịch bản ứng dụng trong chuỗi cung ứng
- Trung tâm phân loại bưu kiện E-Commerce: Triển khai đội ngũ robot vận chuyển khay hàng từ cổng nhập đến các kệ phân loại tự động.
- Kho lạnh y tế và bảo quản vaccine: Vận hành khép kín trong môi trường nhiệt độ thấp $-20^\circ\text{C}$, loại bỏ rủi ro sức khỏe cho công nhân và tiết kiệm chi phí chiếu sáng kho.
- Micro-fulfillment Centers (Kho vi mô nội đô): Tận dụng tối đa không gian thẳng đứng và diện tích sàn chật hẹp của các chuỗi cửa hàng tiện lợi tại các đại đô thị.
+--------------------------------------------------------------------------+
| SƠ ĐỒ TRIỂN KHAI THỰC TẾ |
+--------------------------------------------------------------------------+
| |
| [Cổng Nhập Hàng] |
+--------------------------------------------------------------------------+
Phân tích hiệu quả kinh tế (ROI)
- Chi phí chế tạo phần cứng (BOM): Xấp xỉ $6.500.000\text{ VNĐ}$/robot (tương đương $\approx 280\text{ USD}$ ở thời điểm nghiên cứu).
- Hiệu suất thu hồi vốn (ROI): Đối với một kho hàng diện tích $200\text{ m}^2$ triển khai cụm 4 robot, năng suất xử lý tăng $180%$, giảm 2 nhân công trực ca cố định. Thời gian hoàn vốn đầu tư ước tính đạt từ 8 đến 11 tháng.
Hạn chế và hướng phát triển
Hạn chế kỹ thuật hiện tại
- Dung lượng pin LiPo ShangYi (2200mAh) chỉ duy trì hoạt động liên tục trong khoảng 45 - 60 phút khi đầy tải.
- Cảm biến quang hồng ngoại E3F-DS30C4 có thể bị nhiễu bởi ánh sáng môi trường cường độ cao hoặc bề mặt phản xạ gương.
- Bản đồ ma trận $A^*$ xây dựng ở mức tĩnh và bán động, chưa áp dụng các giải thuật định tuyến tránh xung đột đa robot nâng cao (như CBS - Conflict-Based Search).
Hướng phát triển tiếp theo
- Tích hợp cảm biến LiDAR 2D và công nghệ SLAM (Simultaneous Localization and Mapping) để hoạt động trong môi trường không cần kẻ ô lưới.
- Nâng cấp hệ thống điều khiển trung tâm lên Robot Operating System 2 (ROS 2 Humble) trên nền tảng NVIDIA Jetson Nano.
- Thiết kế trạm sạc không dây tự động (Wireless Docking Station) với giao thức quản lý năng lượng thông minh.
Đối tượng hưởng lợi
- Sinh viên & Nghiên cứu sinh: Tài liệu tham khảo toàn diện về tính toán động lực học cơ cấu trục vít me, thiết kế mạch công suất và lập trình điều khiển PID nhúng.
- Kỹ sư R&D & Robotics: Code mẫu chuẩn hóa về giải thuật $A^*$ trên ma trận lưới kết hợp giao tiếp liên vi điều khiển qua cổng UART.
- Doanh nghiệp Logistics & Sản xuất: Khung kiến trúc khả thi, chi phí thấp để tự động hóa kho hàng nội bộ mà không cần đầu tư hệ thống AS/RS hàng trăm nghìn USD.
Câu hỏi thường gặp
1. Yêu cầu kỹ thuật tối thiểu để triển khai hệ thống phần mềm là gì?
Hệ thống yêu cầu máy tính nhúng Raspberry Pi 4 (hoặc PC x86 tương đương) cài đặt hệ điều hành Linux (Ubuntu Core / Raspberry Pi OS), máy chủ Web Apache 2.4, PHP phiên bản $\ge 7.4$ và MySQL Server $\ge 8.0$. Phía vi điều khiển yêu cầu board mạch hỗ trợ tối thiểu 2 cổng phần cứng UART và 4 kênh ngắt ngoài (như ATmega2560 hoặc STM32F4).
2. Khả năng mở rộng không gian kho hàng của thuật toán $A^*$ như thế nào?
Giải thuật $A^*$ với hàm Heuristic khoảng cách Euclidean có độ phức tạp thời gian trong trường hợp trung bình là $O(b^d)$ (với $b$ là hệ số nhánh $\le 8$, $d$ là độ sâu đường đi). Trên cấu hình Raspberry Pi 4, ma trận kích thước $50 \times 50$ ô (tương đương kho $500\text{ m}^2$) có thời gian tính toán trung bình $< 65\text{ ms}$, hoàn toàn đáp ứng thời gian thực.
3. Làm thế nào để robot tích hợp với hệ thống ERP / WMS sẵn có của doanh nghiệp?
Web Server xây dựng trên nền tảng RESTful API bằng PHP/MySQL cho phép các hệ thống WMS (Warehouse Management System) hoặc ERP bên ngoài đẩy lệnh xuất/nhập hàng thông qua các giao thức chuẩn JSON/HTTPS (POST /api/create_order, GET /api/robot_status).
4. Chi phí bảo trì định kỳ của robot gồm những hạng mục nào?
Các chi phí chính bao gồm: thay thế chổi than động cơ DC sau 2000 giờ vận hành (hoặc nâng cấp lên động cơ BLDC không chổi than), bôi trơn định kỳ trục vít me T8 và kiểm tra độ căng dây đai GT2 sau mỗi 6 tháng vận hành.
5. Tại sao không sử dụng bánh xe Omni hoặc Mecanum để di chuyển đa hướng?
Bánh xe Mecanum có cấu tạo con lăn nghiêng $45^\circ$, gây ra hiện tượng trượt vi mô liên tục khi di chuyển, làm giảm độ chính xác khi định vị bằng Encoder. Cơ cấu trục vít me nâng hạ cụm bánh xe trực giao $90^\circ$ giữ nguyên bánh xe cao su tiêu chuẩn với hệ số bám đường cao, chịu tải tốt và độ ổn định cơ học vượt trội.
Kết luận
Đồ án tốt nghiệp "Thiết kế và chế tạo mô hình robot lấy hàng tự động" đã giải quyết trọn vẹn chuỗi vấn đề kỹ thuật từ tính toán thiết kế cơ khí, tối ưu hóa mạch điện tử công suất đến lập trình điều khiển tự động và quản trị cơ sở dữ liệu. Với việc làm chủ thuật toán tìm đường $A^*$, bộ điều khiển PID vận tốc vòng kín và cơ cấu chuyển hướng trực giao độc đáo, đề tài khẳng định tính khả thi cao trong việc ứng dụng công nghệ AMR giá thành thấp vào thực tiễn logistics tại Việt Nam, mở ra hướng đi bền vững cho các giải pháp kho thông minh trong kỷ nguyên Công nghiệp 4.0.