I. Giới thiệu về Xe Tự Cân Bằng STM32
Xe tự cân bằng STM32 là một dự án điện tử hiện đại kết hợp các công nghệ tiên tiến trong lĩnh vực điều khiển tự động và xử lý tín hiệu. Đây là một đồ án toàn diện được thực hiện tại Trường Đại học Sư Phạm Kỹ Thuật TP. Hồ Chí Minh, nhằm phát triển kỹ năng thiết kế và thi công của sinh viên. Hệ thống này sử dụng vi xử lý STM32F407VET6 làm trung tâm điều khiển, cho phép xe duy trì sự cân bằng một cách tự động và ổn định. Dự án này không chỉ là bài tập lý thuyết mà còn là ứng dụng thực tiễn của các kiến thức về lập trình nhúng, cảm biến, và điều khiển PID. Qua đó, sinh viên có cơ hội làm quen với quy trình thiết kế, lập trình và thi công một hệ thống điều khiển thực tế.
1.1. Khái niệm và ứng dụng của Xe Tự Cân Bằng
Xe tự cân bằng là một hệ thống sử dụng công nghệ cảm biến và thuật toán điều khiển để duy trì trạng thái cân bằng trên hai bánh. Ứng dụng của công nghệ này rất đa dạng, từ phương tiện giao thông cá nhân đến robot tự hành trong công nghiệp. Nguyên lý hoạt động dựa trên việc đo lường gia tốc và góc nghiêng thông qua cảm biến IMU 6DOF MPU6050, sau đó xử lý dữ liệu và điều khiển động cơ để giữ xe ở vị trí thẳng đứng.
1.2. Lợi ích của Dự án Thiết kế STM32
Dự án này mang lại nhiều lợi ích giáo dục cho sinh viên, bao gồm kiến thức thực tiễn về lập trình nhúng, thiết kế mạch điện tử, và điều khiển tự động. Sinh viên có cơ hội làm quen với vi xử lý STM32, cảm biến IoT, và kết nối dữ liệu đám mây thông qua Firebase. Ngoài ra, dự án còn phát triển kỹ năng giải quyết vấn đề, làm việc nhóm, và báo cáo kỹ thuật chuyên nghiệp.
II. Cấu Trúc Phần Cứng và Các Thành Phần Chính
Hệ thống xe tự cân bằng STM32 được xây dựng trên nền tảng phần cứng mạnh mẽ gồm các thành phần chất lượng cao và tương thích tốt. Vi xử lí STM32F407VET6 đóng vai trò là bộ não của hệ thống, xử lý dữ liệu cảm biến và điều khiển động cơ với tốc độ cao. Cảm biến MPU6050 cung cấp thông tin gia tốc 3 trục và góc quay 3 trục, cho phép hệ thống phát hiện những thay đổi trong trạng thái cân bằng. Động cơ DC Servo JGB37-520 được sử dụng để điều khiển các bánh xe, tạo mô-men xoắn cần thiết duy trì sự ổn định. Module ESP-32 CAM AI-Thinker cung cấp khả năng thu nhận hình ảnh và truyền dữ liệu lên nền tảng đám mây.
2.1. Vi Xử Lí STM32F407VET6 Trái Tim Của Hệ Thống
STM32F407VET6 là một vi xử lí ARM Cortex-M4 mạnh mẽ với tần số 168 MHz và 512KB bộ nhớ RAM. Chip này cung cấp nhiều giao diện giao tiếp như I2C, SPI, UART, cho phép kết nối dễ dàng với các cảm biến và module khác nhau. Lập trình STM32 sử dụng ngôn ngữ C/C++ thông qua IDE STM32CubeIDE, giúp phát triển ứng dụng nhanh chóng và hiệu quả.
2.2. Cảm Biến IMU MPU6050 và Module Camera ESP 32
Cảm biến MPU6050 6DOF kết hợp gia tốc kế 3 trục và con quay hồi chuyển 3 trục, cung cấp dữ liệu chính xác về chuyển động. Module ESP-32 CAM cho phép hệ thống chụp ảnh và truyền dữ liệu lên Firebase, hỗ trợ điều khiển từ xa thông qua ứng dụng Android. Hai thành phần này tích hợp hoàn hảo để tạo nên một hệ thống IoT hoàn chỉnh.
III. Nguyên Lý Hoạt Động và Thuật Toán Điều Khiển
Nguyên lý hoạt động của xe tự cân bằng dựa trên vòng phản hồi liên tục giữa cảm biến, bộ xử lí và bộ điều khiển. Cảm biến IMU liên tục đo góc nghiêng và tốc độ quay của xe, gửi dữ liệu tới STM32 với tần số cao. Bộ xử lí tính toán sai số cân bằng và áp dụng thuật toán PID (Proportional-Integral-Derivative) để điều chỉnh tốc độ động cơ. Thuật toán PID là phương pháp điều khiển cổ điển nhưng cực kỳ hiệu quả, cho phép hệ thống ổn định nhanh chóng khi có nhiễu loạn. Quá trình này lặp đi lặp lại hàng trăm lần mỗi giây, đảm bảo xe luôn giữ trạng thái cân bằng trên hai bánh.
3.1. Thuật Toán Điều Khiển PID trong Hệ Thống
Điều khiển PID bao gồm ba thành phần: proportional (P) phản ứng với sai số hiện tại, integral (I) khắc phục sai số tích lũy, và derivative (D) dự đoán sai số tương lai. Hiệu chỉnh các hệ số PID (Kp, Ki, Kd) là bước quan trọng để đạt hiệu suất tối ưu. Lập trình STM32 cần tính toán nhanh và độ chính xác cao để đảm bảo phản ứng kịp thời.
3.2. Vòng Phản Hồi và Điều Khiển Động Cơ
Vòng phản hồi kín liên tục kiểm soát trạng thái xe thông qua cảm biến, xử lí dữ liệu và điều khiển độc lập từng động cơ DC. PWM (Pulse Width Modulation) được sử dụng để điều khiển tốc độ động cơ một cách mịn và hiệu quả. Hệ thống này tự điều chỉnh liên tục, tạo nên sự ổn định tự động mà không cần can thiệp thủ công.
IV. Kết Nối Đám Mây Ứng Dụng Điều Khiển và Đánh Giá Hệ Thống
Dự án xe tự cân bằng STM32 không chỉ dừng lại ở hệ thống cơ bản mà còn tích hợp công nghệ IoT tiên tiến. Module ESP-32 CAM kết nối với nền tảng Firebase để lưu trữ hình ảnh và dữ liệu thời gian thực. Ứng dụng Android được lập trình riêng cho phép người dùng điều khiển xe từ xa, xem video trực tiếp từ camera, và giám sát trạng thái hệ thống. Kiểm thử hệ thống bao gồm chạy thử trên mặt phẳng, đánh giá khả năng cân bằng, kiểm tra kết nối mạng, và tối ưu hiệu suất PID. Qua đó, dự án chứng minh rằng công nghệ STM32 có thể xây dựng các ứng dụng phức tạp và thực tế trong lĩnh vực robotics và IoT.
4.1. Kết Nối Firebase và Truyền Dữ liệu Lên Đám Mây
Firebase là nền tảng cơ sở dữ liệu đám mây được sử dụng để lưu trữ hình ảnh và dữ liệu cảm biến từ xe. Lập trình kết nối Firebase trên ESP-32 cho phép truyền tải an toàn thông qua Wi-Fi. Ứng dụng web/mobile có thể truy cập dữ liệu một cách thời gian thực, tạo nên hệ thống IoT hoàn chỉnh và hiện đại.
4.2. Ứng Dụng Android Điều Khiển và Kiểm Thử Hệ Thống
Ứng dụng Android được phát triển cho phép điều khiển xe tự cân bằng thông qua giao diện trực quan. Giao tiếp tín hiệu giữa app và xe diễn ra qua Firebase Realtime Database hoặc MQTT protocol. Kiểm thử hệ thống bao gồm đo lường độ ổn định, đánh giá tốc độ phản ứng, và tối ưu các tham số điều khiển để đạt hiệu suất tối đa.