Giới thiệu dự án
Trong kỷ nguyên Công nghiệp 4.0 và tự động hóa thông minh, robot di động (Mobile Robots) đóng vai trò then chốt trong các lĩnh vực từ kho vận logistics, công nghiệp sản xuất, quốc phòng đến cứu hộ y tế. Theo các báo cáo thị trường tự động hóa toàn cầu, nhu cầu triển khai robot tự hành trong nhà xưởng (AGV/AMR) đạt tốc độ tăng trưởng kép (CAGR) trên 18.5%/năm. Tuy nhiên, các dòng robot truyền thống bộc lộ rõ những điểm nghẽn kỹ thuật:
- Robot di động bánh xe (Wheeled Robots): Đạt hiệu suất năng lượng cao và chuyển hướng mượt mà trên mặt phẳng, nhưng mất khả năng vận hành khi đối mặt với bậc thềm hoặc vật cản có kích thước lớn hơn bán kính bánh xe $R$.
- Robot chân (Legged Robots): Linh hoạt vượt địa hình phức tạp nhưng cấu trúc cơ khí cực kỳ phức tạp, chi phí sản xuất đắt đỏ và tiêu hao năng lượng lớn.
Hệ thống Robot hai bánh cân bằng thay đổi chiều cao (Wheeled-Bipedal / Leg-Wheel Hybrid Robot) là giải pháp dung hòa tối ưu, kết hợp tính cơ động cao của bánh xe với khả năng biến đổi hình học của cơ cấu chân.
+---------------------------------------------+
| Thân Robot (Chassis) |
| [Pin 3S 12.6V] [ATmega2560] [MPU-9250 IMU] |
+----------------------+----------------------+
|
[Khớp hông - Servo 80kg]
|
+--------------+--------------+
| |
[Cơ cấu chân 4 khâu] [Cơ cấu chân 4 khâu]
| |
[Động cơ DC JGB37] [Động cơ DC JGB37]
[Bánh xe Nhôm D=100mm] [Bánh xe Nhôm D=100mm]
Vấn đề kỹ thuật cốt lõi (Problem Statement)
Khi robot thay đổi độ cao từ $230\text{ mm}$ đến $260\text{ mm}$, trọng tâm (Center of Gravity - CG) và mô-men quán tính ($I_{xx}, I_{yy}, I_{zz}$) của hệ thống liên tục biến thiên phi tuyến. Các thuật toán điều khiển tuyến tính truyền thống (PID đơn vòng) không thể duy trì độ ổn định động học, dẫn đến hiện tượng dao động mất kiểm soát hoặc lật đổ hệ thống.
Mục tiêu đề tài
- Tính toán động học & động lực học: Xây dựng mô hình toán học giải tích cho hệ robot hai bánh con lắc ngược kết hợp khớp chân biến thiên chiều cao có ràng buộc phi holonomic (nonholonomic constraint).
- Thiết kế & chế tạo cơ khí - điện tử: Thiết kế 3D hoàn chỉnh trên Solidworks 2022, gia công khung nhôm/mica/in 3D PLA; thiết kế phần cứng điều khiển nhúng phân tán (Dual MCU).
- Phát triển thuật toán điều khiển tối ưu LQR: Tổng hợp bộ điều khiển toàn phương tuyến tính (Linear Quadratic Regulator - LQR) đa chế độ tương ứng với từng điểm làm việc theo chiều cao.
- Thiết kế giao diện giám sát & thu thập dữ liệu: Xây dựng phần mềm điều khiển và vẽ đồ thị thời gian thực (Real-time Telemetry GUI) trên nền tảng C# .NET qua giao thức không dây Zigbee RF.
Phạm vi và Giới hạn
- Kích thước mô hình: $330 \times 220 \times 260\text{ mm}$ (Dài $\times$ Rộng $\times$ Cao).
- Khối lượng toàn tải: $4.23\text{ kg}$.
- Khoảng thay đổi chiều cao hoạt động: $230\text{ mm} \rightarrow 260\text{ mm}$.
- Phạm vi kiểm chứng: Robot giữ cân bằng tĩnh và cân bằng động tự thích nghi tại chỗ trong quá trình nâng/hạ chiều cao.
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 |
Robot 2 bánh truyền thống (Segway/MIP) |
Robot 4 chân (Quadruped) |
Robot 2 bánh chân khớp (Đề tài đề xuất) |
| Khả năng vượt vật cản |
Thấp ($< R_{\text{bánh}}$) |
Cực cao (đa địa hình) |
Cao (nâng hạ gầm linh hoạt) |
| Tiêu hao năng lượng |
Rất thấp (tối ưu khi lăn) |
Cực cao (duy trì lực khớp liên tục) |
Thấp đến trung bình |
| Độ phức tạp cơ cấu |
Đơn giản (1 bậc tự do thân) |
Rất phức tạp (12+ bậc tự do) |
Vừa phải (2 DOF di chuyển + 2 DOF chân) |
| Chi phí chế tạo |
Rất thấp ($<$100$) |
Rất đắt ($>$5000$) |
Tối ưu học thuật / nghiên cứu ($<$300$) |
| Tải trọng / Trọng lượng |
Thấp |
Cao |
Trung bình ($4.23\text{ kg}$ body weight) |
Phân loại yêu cầu hệ thống theo mô hình MoSCoW
- Must have: Giữ cân bằng thân xe quanh điểm làm việc đứng thẳng ($\theta \approx 0^\circ$); thay đổi chiều cao từ $230\text{ mm}$ đến $260\text{ mm}$; ngắt khẩn cấp khi góc nghiêng vượt ngưỡng $|\theta| > 45^\circ$.
- Should have: Truyền dữ liệu trạng thái qua Zigbee CC2530 về máy tính với chu kỳ $20\text{ ms}$; hiệu chỉnh thông số điều khiển qua GUI.
- Could have: Tích hợp bộ lọc bù Kalman lọc nhiễu cảm biến góc 9-DOF MPU-9250; bù trừ sai lệch cơ khí tự động.
- Won't have (lần này): Tích hợp camera SLAM định vị hoặc di chuyển tự hành ngoài trời.
Thiết kế hệ thống
Kiến trúc phần cứng phân tán (Dual-MCU Architecture)
Hệ thống nhúng được chia tách thành hai khối vi xử lý độc lập giao tiếp qua chuẩn UART tốc độ cao:
- MCU Xử lý trung tâm (ATmega2560 - 16MHz): Chịu trách nhiệm thực thi giải thuật LQR với chu kỳ ngắt thời gian thực (Sampling Period $T_s = 5\text{ ms}$), đọc phản hồi Encoder bánh xe, xuất tín hiệu PWM điều khiển mạch cầu H L298N và xuất tín hiệu góc cho Servo hông DS5180.
- MCU Phụ trợ & Cảm biến (ATmega328P - 16MHz): Giao tiếp I2C tốc độ cao ($400\text{ kHz}$) với cảm biến quán tính 9-DOF MPU-9250, xử lý thuật toán ước lượng góc nghiêng và giải mã gói tin truyền thông Zigbee.
+-------------------------------------------------------------+
| PC GUI (C# .NET Form) |
| - Giám sát góc Roll/Pitch/Yaw - Tinh chỉnh ma trận Q, R|
+------------------------------+------------------------------+
| [RF 2.4GHz Zigbee]
v
+-------------------------------------------------------------+
| Mạch Thu Phát Zigbee CC2530 (UART) |
+------------------------------+------------------------------+
|
v
+-------------------+ +-------------------+
| ATmega328P | <---[UART 115200]--- | ATmega2560 |
| (Sensor Read) | | (Master Control) |
+---------+---------+ +----+---------+----+
| [I2C] | |
v v [PWM] v [PWM]
+-------------------+ +--------+ +--------+
| MPU-9250 (9-DOF) | | L298N | | DS5180 |
+-------------------+ +----+---+ +----+---+
| |
v v
[DC Motors] [RC Servos]
Ngăn xếp công nghệ & Thiết bị (Tech Stack with Versions)
- CAD/CAE: Solidworks 2022 SP2.0 (Mô hình hóa 3D, phân tích động học liên kết 4 khâu).
- Firmware Engine: Arduino IDE v2.3.2, C/C++ Bare-Metal AVR-GCC Toolchain, FreeRTOS Timer Interrupts.
- Desktop Telemetry Software: Visual Studio 2022, C# .NET 6.0 Desktop Windows Forms.
- Toán học & Mô phỏng: MATLAB R2022b (Control System Toolbox, symbolic dynamics solver).
- Phần cứng công suất:
- Vi điều khiển: Microchip ATmega2560 (256KB Flash, 8KB SRAM) & ATmega328P (32KB Flash).
- Cảm biến IMU: TDK InvenSense MPU-9250 (Gia tốc kế $\pm 2g$, Con quay hồi chuyển $\pm 250^\circ/\text{s}$).
- Động cơ bánh: 2x DC Geared Motor JGB37-520 (37 RPM, tỷ số truyền $1:150$, gắn encoder Hall 334 xung/vòng).
- Động cơ thay đổi chiều cao: 2x Digital RC Servo DS5180 (Moment xoắn cực đại $80\text{ kg}\cdot\text{cm}$ tại $12\text{V}$, bánh răng kim loại chịu lực).
- Mạch công suất: Dual Full-Bridge L298N (Dòng đỉnh $2\text{A}$ mỗi kênh).
- Nguồn cấp: 2 bộ Pin LiPo 3S 12.6VDC 3000mAh (Dòng xả định mức 30C).
Implementation và kết quả
Xây dựng mô hình toán học và giải thuật LQR
Mô hình trạng thái phi tuyến của hệ thống con lắc ngược hai bánh xe được tuyến tính hóa quanh điểm cân bằng đứng thẳng ($\theta_0 = 0, \dot{\theta}_0 = 0$):
$$\dot{\mathbf{x}}(t) = \mathbf{A}\mathbf{x}(t) + \mathbf{B}\mathbf{u}(t)$$
Vector trạng thái $\mathbf{x}(t) \in \mathbb{R}^{6 \times 1}$ được định nghĩa:
$$\mathbf{x}(t) = \begin{bmatrix} \phi & \dot{\phi} & \theta & \dot{\theta} & \psi & \dot{\psi} \end{bmatrix}^T$$
Trong đó:
- $\phi, \dot{\phi}$: Góc quay và vận tốc góc trung bình của bánh xe (biểu diễn vị trí tịnh tiến).
- $\theta, \dot{\theta}$: Góc nghiêng (Pitch) và vận tốc góc nghiêng của thân xe.
- $\psi, \dot{\psi}$: Góc xoay hướng (Yaw) và vận tốc góc lệch hướng.
- $\mathbf{u}(t) = \begin{bmatrix} V_L & V_R \end{bmatrix}^T$: Vector điện áp điều khiển cấp cho động cơ trái và phải.
Hàm mục tiêu toàn phương (Quadratic Cost Function):
$$J = \frac{1}{2} \int_0^\infty \left( \mathbf{x}^T(t)\mathbf{Q}\mathbf{x}(t) + \mathbf{u}^T(t)\mathbf{R}\mathbf{u}(t) \right) dt$$
Luật điều khiển phản hồi trạng thái tối ưu:
$$\mathbf{u}(t) = -\mathbf{K}\mathbf{x}(t) = -\mathbf{R}^{-1}\mathbf{B}^T\mathbf{P}\mathbf{x}(t)$$
Trong đó $\mathbf{P}$ là nghiệm duy nhất xác định dương của phương trình vi phân Algebraic Riccati Equation (ARE):
$$\mathbf{P}\mathbf{A} + \mathbf{A}^T\mathbf{P} + \mathbf{Q} - \mathbf{P}\mathbf{B}\mathbf{R}^{-1}\mathbf{B}^T\mathbf{P} = 0$$
Khi robot nâng hạ chiều cao $h \in [230\text{ mm}, 260\text{ mm}]$, ma trận $\mathbf{A}(h), \mathbf{B}(h)$ thay đổi theo khoảng cách từ tâm quay bánh xe tới khối tâm $l(h)$. Hệ thống áp dụng cấu trúc LQR Gain-Scheduling kết hợp:
$$\mathbf{K}(h) = (1 - \alpha)\mathbf{K}{\text{low}} + \alpha \mathbf{K}{\text{high}}, \quad \text{với } \alpha = \frac{h - h_{\min}}{h_{\max} - h_{\min}}$$
+------------------------+
| Tín hiệu đặt x_ref |
+-----------+------------+
| +
v
+------------------+ - +---+----+ u = -K*e +------------------+
| Robot States x |-------->| e |------------>| Driver L298N |
| [Phi, Theta...] | +--------+ | + DC Motors |
+--------+---------+ +--------+---------+
| |
+---------------------[ Cơ hệ 2 bánh ]<-------------+
^
| Alpha (h)
+---------------+---------------+
| Gain Scheduler: K(h) = f(h) |
+-------------------------------+
Mã nguồn thuật toán điều khiển trên vi điều khiển (C++ Embedded)
#include <avr/io.h>
#include <avr/interrupt.h>
// Vector trạng thái và ma trận khuếch đại LQR K = [k_phi, k_dphi, k_theta, k_dtheta, k_psi, k_dpsi]
volatile float state_x[6] = {0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f};
const float K_LQR_LOW[6] = {-4.25f, -3.12f, 85.60f, 12.45f, 5.10f, 1.20f};
const float K_LQR_HIGH[6] = {-5.80f, -3.95f, 112.30f, 16.80f, 6.20f, 1.55f};
float K_gain[6];
volatile int16_t enc_left_count = 0, enc_right_count = 0;
float current_height = 230.0f; // mm
// Trình phục vụ ngắt Timer 1: Chu kỳ lấy mẫu cố định Ts = 5ms (200Hz)
ISR(TIMER1_COMPA_vect) {
// 1. Tính hệ số nội suy Gain-Scheduling Alpha
float alpha = (current_height - 230.0f) / (260.0f - 230.0f);
alpha = (alpha < 0.0f) ? 0.0f : ((alpha > 1.0f) ? 1.0f : alpha);
for (int i = 0; i < 6; i++) {
K_gain[i] = (1.0f - alpha) * K_LQR_LOW[i] + alpha * K_LQR_HIGH[i];
}
// 2. Tính toán tín hiệu điều khiển tối ưu u(t) = -K * x(t)
float u_balance = -(K_gain[2] * state_x[2] + K_gain[3] * state_x[3]);
float u_position = -(K_gain[0] * state_x[0] + K_gain[1] * state_x[1]);
float u_yaw = -(K_gain[4] * state_x[4] + K_gain[5] * state_x[5]);
float v_left = u_balance + u_position - u_yaw;
float v_right = u_balance + u_position + u_yaw;
// 3. Chống bão hòa điện áp đầu ra (Voltage Saturation Protection: +/- 12.0V)
v_left = constrain(v_left, -12.0f, 12.0f);
v_right = constrain(v_right, -12.0f, 12.0f);
// 4. Chuyển đổi điện áp sang giá trị PWM 8-bit cho L298N
set_motor_pwm(MOTOR_LEFT, (int16_t)(v_left * (255.0f / 12.0f)));
set_motor_pwm(MOTOR_RIGHT, (int16_t)(v_right * (255.0f / 12.0f)));
}
Xử lý giao thức truyền thông không dây (C# .NET Parsing)
// Giải mã gói tin nhị phân từ Zigbee CC2530 trên C# GUI
private void SerialPort_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
while (serialPort.BytesToRead >= 11)
{
if (serialPort.ReadByte() == 0xAA) // Start Header
{
byte[] buffer = new byte[10];
serialPort.Read(buffer, 0, 10);
byte checksum = 0;
for(int i = 0; i < 9; i++) checksum ^= buffer[i];
if (checksum == buffer[9] && buffer[8] == 0x55) // Valid packet
{
short rawPitch = (short)((buffer[0] << 8) | buffer[1]);
short rawYaw = (short)((buffer[2] << 8) | buffer[3]);
short rawHeight = (short)((buffer[4] << 8) | buffer[5]);
float pitchAngle = rawPitch / 100.0f; // Scale factor 0.01 deg
float yawAngle = rawYaw / 100.0f;
float heightMm = rawHeight / 10.0f;
UpdateDashboardUI(pitchAngle, yawAngle, heightMm);
}
}
}
}
Kiểm chứng thực nghiệm và Đánh giá kết quả
Các bài đo thực nghiệm được ghi nhận trực tiếp trên mô hình vật lý ở cả 3 kịch bản: Tư thế thấp nhất ($h=230\text{ mm}$), Tư thế cao nhất ($h=260\text{ mm}$) và Quá trình thay đổi chiều cao động ($230\text{ mm} \leftrightarrow 260\text{ mm}$).
[Biểu đồ đáp ứng góc nghiêng Theta (deg) theo thời gian trong quá trình nâng hạ]
Góc Pitch (deg)
+4.0 | Nâng chiều cao (230 -> 260 mm)
| /\
+2.0 | +--+ / \ +------+
0.0 +------+----+-----------+----+---+------+---+--> Thời gian (s)
-2.0 | \ / \-/
| +-------+
-4.0 +-------------------------------------------------
0s 2s 4s 6s 8s 10s
Số liệu thực nghiệm đạt được
| Đại lượng đo kiểm |
Giá trị mục tiêu |
Kết quả thực nghiệm ($h=230\text{ mm}$) |
Kết quả thực nghiệm ($h=260\text{ mm}$) |
Quá trình chuyển trạng thái |
| Sai số góc Pitch ($\theta$) |
$<\pm 2.0^\circ$ |
$\pm 0.85^\circ$ |
$\pm 1.25^\circ$ |
Vọt lố cực đại $2.40^\circ$ |
| Sai số góc Yaw ($\psi$) |
$<\pm 3.0^\circ$ |
$\pm 1.10^\circ$ |
$\pm 1.45^\circ$ |
$\pm 1.90^\circ$ |
| Thời gian xác lập ($t_s$) |
$< 1.0\text{ s}$ |
$0.42\text{ s}$ |
$0.58\text{ s}$ |
$0.85\text{ s}$ |
| Điện áp tiêu thụ trung bình |
$< 9.0\text{ V}$ |
$4.2\text{ V}$ |
$5.8\text{ V}$ |
$7.6\text{ V}$ (đỉnh khi nâng) |
| Thời lượng pin liên tục |
$> 20\text{ phút}$ |
$35\text{ phút}$ |
$28\text{ phút}$ |
$25\text{ phút}$ |
Đổi mới và đóng góp
- Cơ chế chân 4 khâu đối xứng giữ thân xe luôn song song mặt đất:
Khác với các cấu trúc chân quay đơn thuần làm thay đổi góc đặt cảm biến và trọng tâm bất đối xứng, cơ cấu liên kết hình học 4 thanh (bằng mica và nhôm gia công chính xác) giúp cụm thân chính chứa pin và bo mạch luôn duy trì phương song song mặt phẳng sàn, loại bỏ hoàn toàn sai số offset của trục IMU khi co duỗi chân.
- Chiến lược Gain-Scheduling LQR tự thích nghi chiều cao:
Thay vì sử dụng một bộ hệ số $\mathbf{K}$ cố định dễ gây mất ổn định khi cánh tay đòn trọng tâm thay đổi từ $230\text{ mm}$ lên $260\text{ mm}$, thuật toán nội suy tham số thời gian thực giúp hệ thống đạt độ suy giảm biên độ dao động nhanh hơn $38.5%$ so với LQR thông thường.
- Thiết kế phần cứng nhúng chi phí thấp với hiệu năng cao:
Tối ưu hóa kiến trúc Dual-MCU ATmega giúp giảm tải tính toán giao tiếp trên chip điều khiển chính, đạt chu kỳ điều khiển ổn định $5\text{ ms}$ ($200\text{ Hz}$) mà không cần dùng đến các chip DSP hay vi điều khiển ARM Cortex-M đắt tiền.
Ứng dụng thực tế và triển khai
Tình huống ứng dụng thực tế (Use-Cases)
- Logistics trong kho thông minh: Robot có khả năng hạ thấp chiều cao ($230\text{ mm}$) để luồn sâu vào dưới các kệ hàng thấp, sau đó nâng cao gầm ($260\text{ mm}$) để vượt qua gờ giảm tốc hoặc chuyển hàng lên băng tải tiếp nhận.
- Thanh tra đường ống và không gian hẹp: Điều chỉnh độ cao thân và tư thế linh hoạt để vượt qua các chướng ngại vật ngổn ngang trong môi trường đổ nát hoặc công trường xây dựng.
+-------------------------------------------------------------+
| BƯỚC 1: Nạp pin LiPo 3S đạt điện áp 12.6V |
+------------------------------+------------------------------+
|
v
+-------------------------------------------------------------+
| BƯỚC 2: Đặt robot trên mặt phẳng, bật công tắc nguồn |
| Giữ tĩnh 3 giây để cảm biến IMU cân chỉnh Offset |
+------------------------------+------------------------------+
|
v
+-------------------------------------------------------------+
| BƯỚC 3: Mở phần mềm C# GUI, chọn cổng COM & Baudrate 115200 |
| Nhấn "Connect" để bắt đầu nhận dữ liệu Telemetry |
+------------------------------+------------------------------+
|
v
+-------------------------------------------------------------+
| BƯỚC 4: Kích hoạt chế độ "Balance Mode" và thiết lập |
| chiều cao mong muốn (230 - 260 mm) qua thanh Slider |
+-------------------------------------------------------------+
Phân tích hiệu quả kinh tế (Cost-Benefit Analysis)
- Tổng chi phí chế tạo mẫu thử (BOM): Khoảng $2.800.000\text{ VNĐ}$ (gồm động cơ, servo, linh kiện điện tử, gia công cắt laser mica và in 3D).
- So với sản phẩm thương mại: Thấp hơn $85%$ so với các module nghiên cứu ngoại nhập cùng tính năng (như Unitree, Zhiyuan). Khả năng nội địa hóa và thay thế linh kiện sẵn có tại Việt Nam đạt $100%$.
Hạn chế và hướng phát triển
Hạn chế kỹ thuật hiện tại
- Động cơ RC Servo DS5180 truyền động dạng bước kín, sinh nhiệt khi phải giữ mô-men ở tư thế cao liên tục.
- Robot hiện chỉ hoạt động theo chế độ cân bằng tại chỗ, chưa giải quyết trọn vẹn bài toán bám quỹ đạo chuyển động phức tạp (Trajectory Tracking) khi có tải trọng thay đổi đột ngột.
- Khung mica gia công thủ công còn hiện tượng rơ lắc nhẹ ở các khớp quay sau thời gian dài vận hành.
Hướng phát triển nâng cao
- Thay thế cơ cấu chấp hành: Sử dụng động cơ truyền động trực tiếp bán phần (Quasi-Direct Drive - QDD BLDC Motor) có tích hợp cảm biến lực / mô-men (Torque Control) để thực hiện các thao tác nhảy (Jumping) và hấp thụ chấn động (Active Suspension).
- Nâng cấp thuật toán: Ứng dụng điều khiển dự báo mô hình phi tuyến (Nonlinear Model Predictive Control - NMPC) hoặc học tăng cường (Deep Reinforcement Learning) trên bo mạch nhúng NVIDIA Jetson Orin Nano.
- Tích hợp cảm biến định vị: Bổ sung cảm biến LiDAR 2D và Camera RealSense D435 để xây dựng bản đồ 3D SLAM và tự động tránh vật cản.
Đối tượng hưởng lợi
- Sinh viên & Học viên chuyên ngành Tự động hóa/Cơ điện tử: Nguồn tài liệu thực tế về mô hình hóa Lagrange, thiết kế bộ điều khiển con lắc ngược LQR và lập trình nhúng truyền thông thời gian thực.
- Kỹ sư R&D Robot: Tham khảo cơ cấu 4 thanh song song và giải pháp phân tách vi xử lý Dual-MCU để tối ưu hóa chi phí cho các mẫu robot thử nghiệm.
- Doanh nghiệp vừa và nhỏ (SMEs): Tiền đề kỹ thuật để phát triển các dòng AGV 2 bánh thế hệ mới tiết kiệm năng lượng cho kho bãi thông minh.
Câu hỏi thường gặp
1. Yêu cầu nguồn cấp tối thiểu để hệ thống vận hành ổn định là gì?
Hệ thống yêu cầu nguồn điện áp từ $11.1\text{V}$ đến $12.6\text{V}$ (khuyên dùng Pin LiPo 3S dung lượng $\ge 2200\text{mAh}$, dòng xả tối thiểu 20C). Dòng đỉnh khi cả 2 động cơ DC và 2 Servo hông hoạt động đồng thời có thể lên tới $4.5\text{A}$.
2. Tại sao lại dùng bộ điều khiển LQR thay vì PID kinh điển?
Hệ robot 2 bánh là hệ thống đa biến liên kết chéo (MIMO), phi tuyến và mất cân bằng tự nhiên. PID đơn vòng chỉ điều khiển độc lập từng biến mà không tính đến sự ràng buộc giữa góc nghiêng và vị trí xe, dễ gây dao động cộng hưởng. LQR giải quyết bài toán tối ưu toàn cục đa trạng thái $\mathbf{x} = [\phi, \dot{\phi}, \theta, \dot{\theta}, \psi, \dot{\psi}]^T$ với chi phí năng lượng $\mathbf{u}^T\mathbf{R}\mathbf{u}$ tối thiểu.
3. Tần số lấy mẫu $200\text{ Hz}$ ($5\text{ ms}$) có đủ nhanh cho robot tự cân bằng?
Với quán tính toàn phần của robot nặng $4.23\text{ kg}$, chu kỳ động học tự nhiên của con lắc ngược nằm trong khoảng $0.3\text{ s} - 0.6\text{ s}$. Tần số lấy mẫu $200\text{ Hz}$ nhanh hơn 50 lần tần số động học của cơ hệ, hoàn toàn đảm bảo chất lượng điều khiển rời rạc hóa mà không làm trễ pha hệ thống.
4. Giao tiếp Zigbee CC2530 có bị nhiễu bởi sóng Wifi 2.4GHz không?
Mô-đun CC2530 được cấu hình hoạt động ở kênh tần số số 26 (tần số $2.480\text{ GHz}$), nằm ngoài băng thông chính của các kênh Wifi 1, 6, 11 phổ thông, giúp giảm thiểu tối đa hiện tượng rớt gói tin telemetry.
5. Chi phí bảo trì và độ bền của cơ cấu chân 4 khâu như thế nào?
Cơ cấu sử dụng bạc đạn chà 51200 ở các ngỗng trục chính giúp giảm ma sát xoay và triệt tiêu lực dọc trục. Tuổi thọ hoạt động liên tục ước tính $> 500$ giờ, chi phí thay thế vòng bi và khớp nối mica nếu hư hỏng dưới $100.000\text{ VNĐ}$.
Kết luận
Đề tài "Thiết kế mô hình và bộ điều khiển cân bằng cho robot hai bánh thay đổi chiều cao" đã giải quyết thành công bài toán tích hợp giữa động lực học con lắc ngược phi tuyến và cơ cấu chân biến đổi hình học linh hoạt. Những đóng góp chính của công trình bao gồm:
- Xây dựng hoàn chỉnh mô hình động học, động lực học và mô phỏng 3D chi tiết trên Solidworks 2022.
- Chế tạo thành công mô hình vật lý hoạt động ổn định với tải trọng $4.23\text{ kg}$, chiều cao biến thiên linh hoạt từ $230\text{ mm}$ đến $260\text{ mm}$.
- Ứng dụng thành công thuật toán điều khiển tối ưu LQR Gain-Scheduling đa trạng thái trên kiến trúc vi điều khiển Dual-MCU, đạt độ chính xác góc nghiêng $<\pm 1.25^\circ$ và thời gian xác lập dưới $0.58\text{ s}$.
- Hoàn thiện phần mềm giao diện giám sát C# .NET trực quan, thu thập dữ liệu thời gian thực qua giao thức mạng không dây Zigbee RF.
Mô hình là nền tảng vững chắc cho các nghiên cứu chuyên sâu tiếp theo về robot lai bánh - chân tại Việt Nam, mở ra triển vọng ứng dụng to lớn trong công nghiệp vận chuyển tự động và cứu hộ chuyên dụng.