Bối cảnh và vấn đề nghiên cứu

Trong lĩnh vực điều khiển tự động và robot học, mô hình xe hai bánh tự cân bằng là một hệ thống phi tuyến điển hình, có tính bất ổn định nội tại cao nhưng mang lại khả năng di chuyển linh hoạt trong không gian hẹp và thân thiện với môi trường. Đồ án tốt nghiệp ngành Công nghệ Kỹ thuật Điện tử, Viễn thông của nhóm tác giả Huỳnh Thanh Duy và Phan Tấn Lợi (Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh, thực hiện dưới sự hướng dẫn của GVC. ThS. Nguyễn Đình Phú) giải quyết bài toán thiết kế, thi công và điều khiển một mô hình xe hai bánh tự cân bằng có khả năng giám sát, tương tác từ xa thông qua giao diện Web.

Về mặt kế thừa nghiên cứu, tác giả đối chiếu với công trình nghiên cứu khoa học sinh viên năm 2018 của Phạm Ngọc Thái (sử dụng vi điều khiển 8-bit Arduino Mega 2560 kết hợp giải thuật điều khiển LQR). Nhóm tác giả chỉ ra rằng nền tảng vi điều khiển cũ gặp hạn chế khi cần xử lý đồng thời nhiều thuật toán phức tạp với chu kỳ lấy mẫu ngắn. Từ đó, nghiên cứu này đề xuất giải pháp sử dụng vi điều khiển 32-bit ARM Cortex-M4 (STM32F407VET6) kết hợp với thuật toán điều khiển PID và bộ lọc Kalman nhằm nâng cao tốc độ tính toán, triệt tiêu nhiễu góc nghiêng và tăng cường độ ổn định thời gian thực cho hệ thống.

Mục tiêu chính của đề tài là thiết kế, chế tạo hoàn chỉnh mô hình xe hai bánh tự cân bằng, ứng dụng bộ vi điều khiển STM32F407VET6 chạy giải thuật PID để duy trì góc đứng thẳng của thân xe; đồng thời tích hợp module ESP32-CAM nhằm truyền hình ảnh trực tiếp và nhận dữ liệu điều khiển thông qua mạng không dây Wi-Fi trên nền tảng giao diện Web thích ứng với nhiều loại thiết bị điều khiển (điện thoại thông minh, máy tính bảng, máy tính xách tay).

Nhiệm vụ nghiên cứu được văn bản cụ thể hóa thành 5 nội dung chính:

  1. Nghiên cứu vi điều khiển STM32F407VET6 và phương thức phối ghép với các module phần cứng: cảm biến gia tốc MPU6050, mạch công suất L298N DC Motor Driver, mạch cách ly quang 4 kênh TLP281, động cơ DC Servo và module ESP32-CAM.
  2. Nghiên cứu và lập trình các giao thức giao tiếp giữa vi điều khiển với các module ngoại vi, đồng thời xây dựng thuật toán điều khiển tự cân bằng cho hệ thống.
  3. Phát triển ứng dụng điều khiển xe trên nền tảng Web thông qua kết nối Wi-Fi cục bộ.
  4. Thiết kế và thi công kết cấu phần cứng của mô hình cơ khí, bảo đảm bố trí các linh kiện đối xứng và đồng tâm trên một trục phẳng để tối ưu trọng tâm khi vận hành.
  5. Tiến hành chạy thực nghiệm, đo đạc và hiệu chỉnh các thông số kỹ thuật của bộ điều khiển nhằm bảo đảm tính ổn định của hệ thống.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Mô hình vật lý của xe hai bánh tự cân bằng động dựa trên nguyên lý con lắc ngược; các thuật toán ước lượng trạng thái (Kalman Filter) và giải thuật điều khiển phản hồi vòng kín (PID số).
  • Phạm vi không gian: Xe thử nghiệm hoạt động trên bề mặt phẳng, nhẵn, trong phạm vi phủ sóng của mạng Wi-Fi cục bộ do module ESP32-CAM phát ra.
  • Phạm vi thời gian: Đề tài được giao thực hiện từ ngày 26/02/2025 và hoàn thành nghiệm thu vào ngày 10/06/2025.

Cơ sở lý thuyết và phương pháp

Hệ thống xe hai bánh tự cân bằng được mô hình hóa dựa trên nguyên lý con lắc ngược (Inverted Pendulum). Khác với con lắc đơn có vị trí cân bằng bền ở điểm treo dưới, con lắc ngược có điểm cân bằng không bền ở vị trí thẳng đứng hướng lên trên ($\theta = 0^\circ$). Khi xuất hiện độ lệch góc do tác động của trọng lực hoặc ngoại lực, thân xe sẽ phát sinh mô-men làm lật đổ nếu bánh xe ở chân đế không chủ động di chuyển theo hướng nghiêng để tạo ra phản lực cân bằng lại trọng tâm.

Để xác định vị trí và chuyển động quay của vật thể rắn trong không gian ba chiều, tác giả áp dụng lý thuyết hệ toạ độ Euler với ba góc quay độc lập quanh ba trục trực giao:

  • Góc Roll ($\varphi$): chuyển động quay quanh trục dọc X (nghiêng trái/phải).
  • Góc Pitch ($\theta$): chuyển động quay quanh trục ngang Y (chúi về phía trước hoặc ngửa ra phía sau).
  • Góc Yaw ($\gamma$): chuyển động xoay quanh trục đứng Z (chuyển hướng phương ngang).

Trong mô hình xe tự cân bằng hai bánh, góc Pitch ($\theta$) là biến trạng thái điều chỉnh trung tâm. Khi $\theta > 0$, thân xe chúi về phía trước, hệ thống điều khiển động cơ quay tiến để đưa xe về trạng thái thăng bằng; ngược lại khi $\theta < 0$, thân xe ngửa ra sau, động cơ phải đổi chiều quay lùi để chống ngã. Mối quan hệ giữa các thành phần gia tốc đo được dọc theo các trục $a_x, a_y, a_z$ và góc Pitch được tính theo công thức lượng giác:

$$\theta = \arctan\left(\frac{a_x}{\sqrt{a_y^2 + a_z^2}}\right)$$

Bộ điều khiển phản hồi PID liên tục xác định sai số giữa giá trị đặt (Setpoint - vị trí cân bằng thẳng đứng) và giá trị thực tế đo được (Process Variable): $e(t) = SP - PV$. Tín hiệu điều khiển liên tục theo thời gian được mô tả qua phương trình:

$$u(t) = K_p \left( e(t) + \frac{1}{T_i} \int_0^t e(\tau)d\tau + T_d \frac{de(t)}{dt} \right)$$

Khi triển khai trên hệ thống nhúng số, giải thuật PID liên tục được xấp xỉ thành phương trình PID số rời rạc:

  • Thành phần tỉ lệ (P): phản ứng trực tiếp với độ lớn sai số tức thời qua hệ số $K_p$.
  • Thành phần tích phân (I): triệt tiêu sai số tĩnh bằng phép xấp xỉ diện tích hình chữ nhật cộng dồn theo thời gian lấy mẫu $h$: $I(k) = I(k-1) + e(k) \times h$.
  • Thành phần vi phân (D): dự đoán xu hướng biến thiên và chống hiện tượng vọt lố thông qua tốc độ biến thiên sai số giữa hai lần lấy mẫu liên tiếp: $(e(k) - e(k-1))/h$.

Về mặt xử lý tín hiệu đo lường, việc sử dụng đơn lẻ một loại cảm biến đều bộc lộ hạn chế vật lý: gia tốc kế (Accelerometer) cung cấp góc đo tuyệt đối theo trọng trường nhưng rất nhạy với rung động cơ học; trong khi con quay hồi chuyển (Gyroscope) đo vận tốc góc ổn định tức thời nhưng gặp hiện tượng trôi dạt tích phân (drift) theo thời gian. Nhóm nghiên cứu áp dụng bộ lọc Kalman tuyến tính tối ưu theo chu trình hai giai đoạn lặp thời gian thực:

  • Giai đoạn dự đoán (Prediction): ước lượng góc nghiêng tiếp theo dựa trên tích phân vận tốc góc $\omega$ và bù độ lệch trôi (bias):

$$\theta_{\text{dự đoán}} = \theta_{\text{trước}} + (\omega - \text{bias})\Delta t$$

  • Giai đoạn cập nhật (Update): tính toán sai số đo lường $y = \theta_{\text{accel}} - \theta_{\text{dự đoán}}$, tính toán ma trận độ lợi Kalman $K$ dựa trên ma trận hiệp phương sai sai số kích thước $2 \times 2$ đại diện cho góc nghiêng và độ trôi gyroscope, từ đó hiệu chỉnh góc nghiêng tối ưu:

$$\theta = \theta_{\text{dự đoán}} + K[0] \times y$$

Phương pháp nghiên cứu thực nghiệm được tiến hành thông qua việc kết hợp giữa tính toán lý thuyết giải thuật điều khiển trên nền tảng phần cứng nhúng, thiết kế sơ đồ nguyên lý trên máy tính, thi công lắp ráp mô hình vật lý phân tầng bằng vật liệu mica và thực hiện các phép đo kiểm tra góc nghiêng thực tế khi vận hành.

Thiết kế và triển khai hệ thống

Hệ thống được tính toán và thiết kế nhằm đáp ứng các chỉ tiêu kỹ thuật ban đầu do nhóm tác giả đặt ra cho một mô hình xe hai bánh tự cân bằng cỡ nhỏ.

Thông số kỹ thuật Yêu cầu thiết kế
Kích thước tổng thể (Dài × Rộng × Cao) 10 × 15 × 17.5 cm
Khối lượng xe tối đa Dưới 1 kg
Đường kính bánh xe 65 mm
Hệ thống động cơ 02 động cơ DC Servo 12V
Nguồn cấp toàn hệ thống Tối đa 13 VDC (khối pin 3 cell 18650)
Thời gian giữ thăng bằng liên tục Trên 2 giờ
Phương thức điều khiển và giám sát Giao diện Web qua mạng không dây Wi-Fi

Cấu trúc phần cứng của hệ thống được phân chia thành các khối chức năng cụ thể và liên kết chặt chẽ với nhau:

Khối chức năng Linh kiện / Thiết bị chính Nhiệm vụ kỹ thuật
Khối xử lý trung tâm Kit STM32F407VET6 (ARM Cortex-M4, 168 MHz) Thu nhận dữ liệu cảm biến, tính toán bộ lọc Kalman, thực thi PID số, phát xung PWM điều khiển động cơ
Khối cảm biến Module GY-521 6DOF IMU (MPU6050) Đo gia tốc 3 trục và vận tốc góc 3 trục, chuyển đổi ADC 16-bit nội
Khối điều khiển động cơ Driver L298N kết hợp mạch Opto cách ly TLP281 Cầu H điều khiển hướng và tốc độ động cơ DC, cách ly xung điện áp ngược bảo vệ MCU
Khối chấp hành 02 Động cơ DC Servo JGB37-520 (110 RPM) Tỉ số truyền 90:1, tích hợp đĩa quang encoder 990 xung/vòng, tạo lực kéo giữ cân bằng
Khối xử lý dữ liệu & Camera Module ESP32-CAM AI-Thinker Khởi tạo trạm phát Wi-Fi (AP), lập trình Web Server điều khiển, truyền luồng video camera
Khối nguồn Pin Lithium-Ion 3S, sạc XR-121, hạ áp LM2596 Cung cấp nguồn 12V cho động cơ, hạ áp 5V/3.3V cấp cho các mạch điều khiển và cảm biến

Các chuẩn giao tiếp và liên kết phần cứng được triển khai chi tiết:

  • Giao diện giữa Khối cảm biến MPU6050 và STM32F407VET6: Sử dụng chuẩn giao tiếp nối tiếp hai dây I2C1 (chân dữ liệu SDA nối PA7, chân xung nhịp SCL nối PA6). Tín hiệu được truyền nhận theo khung bit với mức logic open-drain kéo áp.
  • Giao diện điều khiển động cơ: Vi điều khiển xuất 4 tín hiệu số từ các chân PD9, PD10, PD11, PD12 đến các kênh đầu vào của mạch Opto cách ly TLP281 nhằm ngắt trực tiếp kết nối điện giữa phần vi điều khiển và mạch công suất. Đầu ra của TLP281 nối tới các chân IN1, IN2, IN3, IN4 của module L298N để xác lập trạng thái chiều quay. Tốc độ động cơ được điều biến thông qua 2 kênh phát xung PWM từ Timer3 của vi điều khiển cấp vào chân ENA và ENB của driver L298N.
  • Giao diện truyền thông giữa ESP32-CAM và STM32F407VET6: Sử dụng chuẩn truyền thông nối tiếp không đồng bộ UART (2 dây truyền nhận chéo TX-RX), tốc độ truyền được đồng bộ hóa để gửi dữ liệu chuỗi lệnh điều khiển chuyển động từ giao diện Web về vi điều khiển xử lý trung tâm.

Kết cấu vật lý của xe được thi công theo kiến trúc tháp 3 tầng bằng các tấm nhựa mica cách điện:

  • Tầng thứ nhất (tầng đáy): Lắp đặt cụm giá đỡ hai động cơ DC JGB37-520, bộ đôi bánh xe cao su đường kính 65 mm, giắc cắm sạc DC và công tắc nguồn chính.
  • Tầng thứ hai (tầng giữa): Bố trí mạch giảm áp LM2596, khối pin 3 cell 18650 kèm mạch quản lý sạc XR-121, mạch công suất L298N và mạch cách ly quang TLP281.
  • Tầng thứ ba (tầng đỉnh): Gắn bo mạch vi điều khiển STM32F407VET6, cảm biến MPU6050 đặt tại vị trí trung tâm trục quay và module camera ESP32-CAM hướng về phía trước.

Môi trường phát triển phần mềm bao gồm: STM32CubeMX cấu hình xung nhịp 168 MHz và phân bổ chân ngoại vi (I2C, UART, Timer PWM); môi trường Keil uVision 5 biên dịch mã nguồn C cho ARM Cortex-M4; và Arduino IDE lập trình firmware cho chip ESP32-CAM xử lý giao thức mạng và giao diện Web.

Nội dung chính theo từng chương

CHƯƠNG 1. TỔNG QUAN

Chương 1 trình bày lý do chọn đề tài xuất phát từ nhu cầu thực tiễn về các phương tiện di chuyển thông minh, nhỏ gọn và tự động hóa. Tác giả đối chiếu các nghiên cứu đi trước (như đề tài của Phạm Ngọc Thái năm 2018 sử dụng Arduino Mega 2560 và LQR), từ đó xác lập tính cấp thiết của việc cải tiến phần cứng sang dòng chip ARM STM32F407VET6 nhằm đáp ứng giải thuật Kalman và PID số. Chương này xác định rõ mục tiêu chế tạo xe tự cân bằng điều khiển qua giao diện Web, vạch ra 5 nội dung nghiên cứu thực hiện, nêu rõ các giới hạn vận hành (chỉ di chuyển trên mặt phẳng, tầm điều khiển trong vùng phủ sóng Wi-Fi, là mô hình nghiên cứu thực nghiệm không chở người) và phác thảo cấu trúc 6 chương của toàn bộ báo cáo tốt nghiệp.

CHƯƠNG 2. CƠ SỞ LÝ THUYẾT

Chương 2 thiết lập nền tảng toán học và kỹ thuật cho đồ án. Nội dung chương tập trung phân tích mô hình con lắc ngược và động học quay vật thể trong không gian 3 chiều thông qua các góc Euler (Roll, Pitch, Yaw), làm rõ vai trò quyết định của góc Pitch ($\theta$) đối với sự thăng bằng dọc của xe. Tác giả trình bày chi tiết cấu trúc bộ điều khiển phản hồi PID liên tục và phương pháp số hóa rời rạc hóa các khâu tỷ lệ, tích phân (cộng dồn diện tích) và vi phân (sai phân bậc một) trên vi xử lý. Đồng thời, chương này giải thích chi tiết nguyên lý ước lượng của bộ lọc Kalman 2 trạng thái với ma trận hiệp phương sai sai số, giúp dung hợp dữ liệu cảm biến MPU6050 để loại bỏ nhiễu rung cơ học và bù trôi vận tốc góc. Cuối chương là phần giới thiệu thông số kỹ thuật chi tiết của các linh kiện: STM32F407VET6, driver L298N, Opto TLP281, động cơ DC JGB37-520, IC giảm áp LM2596, mạch sạc XR-121, module ESP32-CAM và các chuẩn giao tiếp công nghiệp I2C, UART.

CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ

Chương 3 xác định bảng yêu cầu thiết kế hệ thống (kích thước $10 \times 15 \times 17.5$ cm, khối lượng dưới 1 kg, bánh xe 65 mm, thời gian cân bằng trên 2 giờ). Tác giả xây dựng sơ đồ khối tổng thể gồm 8 khối chức năng và phân tích chi tiết sơ đồ nguyên lý kết nối giữa các khối: sơ đồ kết nối I2C1 giữa STM32 và MPU6050; sơ đồ ghép nối vi điều khiển với mạch công suất L298N qua mạch đệm cách ly quang TLP281; sơ đồ liên kết UART giữa khối xử lý trung tâm và khối dữ liệu ESP32-CAM; sơ đồ mạng điện hạ áp từ khối nguồn pin. Chương này cũng phân tích mô hình cơ khí cân đối trọng tâm và phương pháp hiệu chỉnh các tham số $K_p, K_i, K_d$ cho bộ điều khiển xe tự cân bằng.

CHƯƠNG 4. THI CÔNG HỆ THỐNG

Chương 4 mô tả toàn bộ quy trình hiện thực hóa mô hình từ bản vẽ thiết kế đến sản phẩm vật lý. Nội dung bao gồm việc chế tạo và gắn kết linh kiện trên 3 tầng khung mica, đấu nối dây tín hiệu và dây công suất; xây dựng lưu đồ thuật toán chương trình chính, lưu đồ hiệu chuẩn cảm biến MPU6050, thuật toán xử lý cân bằng PID, lưu đồ điều khiển động cơ qua PWM, và lưu đồ ngắt nhận dữ liệu UART. Tác giả hướng dẫn chi tiết quy trình cài đặt và cấu hình phần mềm công cụ gồm STM32CubeMX, Keil uVision 5 và Arduino IDE; đồng thời ghi nhận các bảng số liệu đo góc nghiêng thực nghiệm về phía trước và phía sau trong các lần thử nghiệm, biên soạn quy trình thao tác và hướng dẫn vận hành thiết bị an toàn.

CHƯƠNG 5. KẾT QUẢ NHẬN XÉT ĐÁNH GIÁ

Chương 5 tổng hợp toàn bộ các kết quả thực nghiệm sau khi hoàn thiện phần cứng và nạp chương trình điều khiển. Tác giả trình bày các hình ảnh thực tế ghi nhận trạng thái tự cân bằng của xe nhìn từ các hướng (mặt trước, mặt sau, mặt bên) và giao diện điều khiển thực tế hiển thị trên trình duyệt Web. Nội dung chương phân tích bảng kiểm nghiệm đánh giá hệ thống, nhận xét về thời gian đáp ứng, độ ổn định góc nghiêng khi đứng yên và khi nhận lệnh di chuyển tiến/lùi, rẽ trái/phải, đồng thời đánh giá chất lượng truyền hình ảnh không dây từ module ESP32-CAM trong điều kiện thử nghiệm thực tế.

CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Chương 6 tóm kết các thành tựu mà đề tài đã hoàn thành so với mục tiêu và nhiệm vụ đặt ra ban đầu; chỉ ra những hạn chế kỹ thuật còn tồn tại trong thiết kế phần cứng cũng như giải thuật điều khiển; và đề xuất các giải pháp nâng cấp, hoàn thiện mô hình trong các giai đoạn nghiên cứu tiếp theo.

Kết quả và đóng góp

Về mặt kết quả kỹ thuật, đồ án đã hoàn thành các mục tiêu đề ra với các số liệu cụ thể:

  • Chế tạo hoàn chỉnh mô hình phần cứng hoạt động ổn định với kích thước thực tế nằm trong giới hạn $10 \times 15 \times 17.5$ cm và khối lượng tổng thể không vượt quá 1 kg.
  • Tích hợp thành công bộ vi điều khiển 32-bit STM32F407VET6 chạy ở tần số xung nhịp 168 MHz, xử lý giải thuật lọc Kalman hai trạng thái kết hợp thuật toán PID số, tính toán tín hiệu điều khiển trong thời gian thực.
  • Thiết kế hệ thống truyền thông không dây kép: vi điều khiển trung tâm giao tiếp qua UART với module ESP32-CAM để nhận lệnh chuyển động; ESP32-CAM đóng vai trò Web Server nội bộ phát sóng Wi-Fi, hỗ trợ truyền hình ảnh trực tiếp và hiển thị giao diện điều khiển bao gồm 4 nút điều hướng và thanh trượt tinh chỉnh đèn.
  • Khối nguồn hoạt động ổn định với 3 cell pin 18650, bảo đảm hệ thống có khả năng tự giữ thăng bằng liên tục trong thời gian trên 2 giờ theo đúng chỉ tiêu thiết kế.

Các giải pháp kỹ thuật do nhóm tác giả đề xuất và áp dụng:

  • Bổ sung tầng đệm cách ly quang 4 kênh TLP281 giữa STM32 và mạch công suất L298N. Giải pháp này giúp triệt tiêu xung nhiễu điện áp ngược sinh ra từ cuộn dây động cơ DC, bảo vệ an toàn tuyệt đối cho các chân I/O của vi điều khiển xử lý trung tâm.
  • Thiết kế khung cơ khí 3 tầng mica phân bố đều khối lượng, đưa tâm của cảm biến quán tính MPU6050 về vị trí đồng trục với trọng tâm xe, giúp giá trị gia tốc đo được phản ánh chính xác góc nghiêng vật lý thực tế.
  • Xây dựng giao diện điều khiển trên nền tảng Web tiêu chuẩn, giúp loại bỏ yêu cầu cài đặt phần mềm chuyên dụng (app), cho phép bất kỳ thiết bị thông minh nào có trình duyệt và kết nối Wi-Fi đều có thể vận hành được xe.

Về mặt đóng góp học thuật và kỹ thuật so với các đề tài trước: So với đề tài sử dụng Arduino Mega 2560 của Phạm Ngọc Thái (2018), công trình này đã nâng cấp năng lực tính toán của hệ thống nhúng lên kiến trúc ARM Cortex-M4 tốc độ cao, xử lý mượt mà bộ lọc Kalman kết hợp PID số để giải quyết triệt để bài toán trôi dạt góc của gyroscope và độ nhạy nhiễu rung của accelerometer. Đồng thời, đề tài mở rộng thêm chức năng truyền video thời gian thực và tương tác đa nền tảng qua giao thức mạng, tạo ra một mô hình hoàn chỉnh về cả cơ khí, mạch điện tử, thuật toán điều khiển và truyền thông nhúng.

Hạn chế và hướng nghiên cứu tiếp

Căn cứ theo các giới hạn được nhóm tác giả xác định trong nội dung báo cáo:

  • Địa hình vận hành: Mô hình xe hiện tại chỉ có khả năng giữ cân bằng và di chuyển ổn định trên bề mặt phẳng, nhẵn; chưa được trang bị giải thuật thích nghi để di chuyển trên bề mặt nghiêng (dốc) hoặc các điều kiện địa hình gồ ghề, có mấp mô lớn.
  • Khả năng chịu tải: Thiết bị chỉ dừng lại ở quy mô mô hình thí nghiệm phục vụ nghiên cứu giải thuật và học tập, kết cấu cơ khí và công suất động cơ JGB37-520 chưa đáp ứng tải trọng để ứng dụng làm phương tiện vận chuyển người hay hàng hóa thực tế.
  • Bán kính điều khiển: Tầm điều khiển và khả năng giám sát hình ảnh bị giới hạn trong bán kính phát sóng cục bộ của module Wi-Fi ESP32-CAM (phụ thuộc vào công suất ăng-ten tích hợp của module trong môi trường có vật cản).

Các định hướng nghiên cứu tiếp theo:

  • Nâng cấp giải thuật điều khiển: Nghiên cứu áp dụng các thuật toán điều khiển phi tuyến hiện đại hơn như LQR kết hợp mạng nơ-ron hoặc điều khiển trượt (Sliding Mode Control) nhằm nâng cao khả năng giữ thăng bằng khi xe gặp ngoại lực tác động mạnh hoặc khi leo dốc.
  • Cải tiến phần cứng: Nâng cấp động cơ có công suất và mô-men xoắn lớn hơn, sử dụng cảm biến quán tính có độ chính xác cao hơn, tối ưu hóa vật liệu khung xe để tăng độ bền cơ học.
  • Mở rộng phạm vi truyền thông: Mở rộng khả năng điều khiển từ xa qua mạng diện rộng Internet (IoT) hoặc mạng dữ liệu di động viễn thông, bổ sung các thuật toán tự hành tránh vật cản dựa trên thị giác máy tính từ luồng hình ảnh của camera.

Giá trị tham khảo

Đồ án là tài liệu tham khảo thực tiễn và có hệ thống cho các nhóm đối tượng:

  • Sinh viên và học viên chuyên ngành Công nghệ Kỹ thuật Điện tử - Viễn thông, Kỹ thuật Điều khiển và Tự động hóa, Cơ điện tử và Robot học đang thực hiện các đồ án chuyên ngành hoặc đồ án tốt nghiệp về hệ thống nhúng và phương tiện tự cân bằng.
  • Những người nghiên cứu và phát triển các hệ thống cơ điện tử ứng dụng mô hình con lắc ngược, xử lý cảm biến quán tính IMU và điều khiển động cơ DC có phản hồi tốc độ.

Các phần nội dung có giá trị tham khảo kỹ thuật cao trong tài liệu:

  • Phương pháp rời rạc hóa thuật toán PID liên tục sang giải thuật PID số để lập trình trực tiếp trên vi điều khiển.
  • Các bước toán học và quy trình lập trình bộ lọc Kalman 2 trạng thái dung hợp dữ liệu giữa gia tốc kế và con quay hồi chuyển trên dòng chip ARM Cortex-M4.
  • Thiết kế mạch phần cứng thực tế kết hợp giải pháp cách ly quang (Opto TLP281) bảo vệ khối điều khiển số trước các xung nhiễu của khối động lực L298N.
  • Kiến trúc phần mềm phân tán: sử dụng kết hợp STM32F4 làm nhiệm vụ điều khiển thời gian thực (Real-time Control) và ESP32-CAM làm nhiệm vụ truyền thông mạng, phát video streaming và xử lý giao diện người dùng Web.

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

1. Vi điều khiển trung tâm STM32F407VET6 đóng vai trò gì và có các thông số kỹ thuật then chốt nào trong hệ thống? STM32F407VET6 là bộ xử lý trung tâm điều phối toàn bộ hoạt động của xe: thu nhận tín hiệu thô từ cảm biến MPU6050 qua I2C1, thực thi thuật toán Kalman để tính góc Pitch, chạy giải thuật PID số theo chu kỳ thời gian thực, xuất tín hiệu PWM qua Timer3 để điều khiển tốc độ động cơ và nhận lệnh chuyển động từ ESP32-CAM qua UART. Vi điều khiển này sở hữu lõi 32-bit RISC ARM Cortex-M4 hoạt động ở xung nhịp tối đa 168 MHz (hiệu năng 210 DMIPS), bộ nhớ Flash 512 kB, RAM 192 kB + 4 kB SRAM và sử dụng đóng gói chân LQFP100.

2. Tại sao hệ thống bắt buộc phải tích hợp bộ lọc Kalman khi đọc dữ liệu từ cảm biến quán tính MPU6050? Bản thân cảm biến MPU6050 gồm gia tốc kế 3 trục và con quay hồi chuyển 3 trục. Gia tốc kế đo góc nghiêng dựa trên véc-tơ trọng trường nên ổn định về lâu dài, nhưng giá trị đo tức thời lại chịu ảnh hưởng nặng bởi rung chấn cơ học của khung xe và quán tính chuyển động. Ngược lại, con quay hồi chuyển đo vận tốc góc có độ đáp ứng nhanh và không bị ảnh hưởng bởi rung chấn ngắn hạn, nhưng khi tích phân theo thời gian để tính góc nghiêng sẽ bị hiện tượng trôi dạt (drift) tích lũy sai số. Bộ lọc Kalman đóng vai trò dung hợp dữ liệu tối ưu: lấy tích phân con quay hồi chuyển làm bước dự đoán và dùng dữ liệu gia tốc kế ở bước cập nhật để bù trôi, tạo ra giá trị góc Pitch chính xác, mượt mà và tức thời cho bộ điều khiển PID.

3. Mạch Opto cách ly 4 kênh TLP281 được đưa vào sơ đồ nguyên lý nhằm mục đích kỹ thuật gì? Mạch Opto TLP281 được bố trí ở giữa các chân xuất tín hiệu điều khiển logic (PD9, PD10, PD11, PD12) của STM32 và các chân điều khiển chiều (IN1, IN2, IN3, IN4) của driver L298N. Mục đích chính là cách ly quang học hoàn toàn về mặt điện áp giữa khối xử lý logic nhạy cảm (3.3V) và khối công suất điều khiển động cơ DC (12V). Điều này giúp triệt tiêu triệt để các xung điện áp ngược, nhiễu cao tần và hiện tượng sụt áp tức thời do động cơ phát sinh khi đảo chiều quay, ngăn chặn nguy cơ gây treo vi điều khiển hoặc cháy hỏng cổng I/O của STM32.

4. Khối xử lý dữ liệu ESP32-CAM thiết lập liên kết điều khiển và truyền hình ảnh lên Web như thế nào? Module ESP32-CAM hoạt động độc lập bằng nguồn 5V, được lập trình khởi tạo một mạng Wi-Fi cục bộ (Access Point) và vận hành một Web Server. Người dùng kết nối vào Wi-Fi này thông qua điện thoại hoặc máy tính để truy cập trang Web điều khiển. Trên giao diện Web hiển thị hình ảnh luồng video trực tiếp từ cảm biến camera (OV2640), 4 nút bấm điều hướng (Tiến, Lùi, Trái, Phải) và thanh trượt điều chỉnh đèn flash. Khi người dùng nhấn nút trên Web, ESP32-CAM biên dịch tín hiệu và gửi chuỗi dữ liệu lệnh điều khiển tương ứng xuống cổng UART của vi điều khiển STM32F407VET6 để trực tiếp điều khiển hướng di chuyển của xe.

5. Những giới hạn kỹ thuật chính mà tác giả đã xác định đối với mô hình xe tự cân bằng này là gì? Tác giả đã công bố rõ 3 giới hạn vật lý của đề tài: thứ nhất, xe chỉ giữ được thăng bằng trên mặt đường phẳng, chưa có khả năng di chuyển trên đoạn đường dốc hay gồ ghề; thứ hai, hệ thống dừng lại ở mức mô hình thí nghiệm kỹ thuật kiểm chứng giải thuật điều khiển nên không có khả năng mang tải hoặc làm phương tiện chở người; thứ ba, tầm hoạt động của xe phụ thuộc hoàn toàn vào phạm vi phủ sóng không dây của mạng Wi-Fi phát ra từ module ESP32-CAM.

Kết luận

Đồ án tốt nghiệp "Thiết kế và thi công xe điều khiển tự cân bằng" của sinh viên Huỳnh Thanh Duy và Phan Tấn Lợi đã hoàn thành toàn diện việc xây dựng một hệ thống cơ điện tử tự cân bằng dựa trên nguyên lý con lắc ngược. Bằng việc kết hợp năng lực tính toán của vi điều khiển ARM Cortex-M4 STM32F407VET6 với bộ lọc Kalman và thuật toán PID số, hệ thống đã giải quyết hiệu quả bài toán ước lượng và ổn định góc nghiêng trong thời gian thực. Mô hình còn tích hợp thành công công nghệ truyền thông không dây và thị giác nhúng qua ESP32-CAM, cung cấp giao diện giám sát và điều khiển trực quan qua mạng Wi-Fi, tạo nền tảng vững chắc cho các nghiên cứu chuyên sâu về robot tự hành và phương tiện giao thông thông minh.