I. Hướng dẫn tổng quan đồ án xe hai bánh tự cân bằng 2024
Đồ án điều khiển xe hai bánh tự cân bằng là một chủ đề nghiên cứu hấp dẫn, kết hợp kiến thức cơ điện tử, lý thuyết điều khiển tự động và lập trình nhúng. Mô hình này, về bản chất, là một ứng dụng của mô hình con lắc ngược (inverted pendulum), một đối tượng phi tuyến và bất định, đòi hỏi một hệ thống điều khiển chính xác để duy trì trạng thái thăng bằng. Đặc điểm nổi bật nhất của xe hai bánh tự cân bằng là khả năng đứng vững trên hai bánh xe song song trên một trục duy nhất, một thách thức kỹ thuật lớn. Các ứng dụng của công nghệ này rất đa dạng, từ phương tiện di chuyển cá nhân, robot phục vụ trong giải trí, các cuộc thi tự hành cho đến tiềm năng trong lĩnh vực quân sự. Tuy nhiên, việc triển khai vẫn còn một số hạn chế như chi phí sản xuất cao và giới hạn về địa hình di chuyển. Hiện nay, nhiều công trình nghiên cứu trên thế giới đã khám phá các giải thuật điều khiển khác nhau như điều khiển cuốn chiếu (backstepping), điều khiển trượt (sliding mode), LQR, hay các phương pháp thông minh như Fuzzy Logic và mạng nơ-ron. Dù vậy, thuật toán PID (Proportional-Integral-Derivative) vẫn là lựa chọn phổ biến nhất nhờ sự đơn giản, dễ triển khai và hiệu quả cao trong việc ổn định hệ thống. Đồ án này tập trung vào việc thiết kế, thi công và lập trình một mô hình xe hoàn chỉnh, sử dụng vi điều khiển Arduino Nano kết hợp với cảm biến MPU6050 để thu thập dữ liệu góc nghiêng và áp dụng thuật toán PID để điều khiển động cơ, từ đó giữ cho xe luôn ở trạng thái cân bằng.
1.1. Nguyên lý hoạt động dựa trên mô hình con lắc ngược
Nguyên lý cốt lõi của xe hai bánh tự cân bằng dựa trên mô hình con lắc ngược. Trong mô hình này, thân xe được xem như một con lắc, và điểm tiếp xúc của hai bánh xe với mặt đất là điểm tựa. Để giữ thăng bằng, hệ thống phải liên tục điều chỉnh vị trí của điểm tựa. Cụ thể, khi thân xe nghiêng về phía trước, bộ điều khiển sẽ ra lệnh cho hai động cơ DC quay tới để 'đuổi theo' trọng tâm, đưa xe trở lại vị trí thẳng đứng. Ngược lại, khi xe ngả về phía sau, động cơ sẽ quay lùi. Tốc độ của động cơ tỷ lệ thuận với góc nghiêng và tốc độ thay đổi góc nghiêng. Quá trình này đòi hỏi một vòng lặp phản hồi kín, nơi cảm biến gia tốc và con quay hồi chuyển (như MPU6050) liên tục đo góc nghiêng và gửi dữ liệu về vi điều khiển. Vi điều khiển sau đó tính toán sai số và xuất tín hiệu điều khiển phù hợp, tạo ra một hệ thống tự ổn định linh hoạt.
1.2. Mục tiêu và yêu cầu chính của đề tài nghiên cứu
Mục tiêu chính của đồ án là tự thiết kế và thi công một mô hình xe hai bánh tự cân bằng hoàn chỉnh, có khả năng tự đứng vững. Các yêu cầu cụ thể bao gồm: tìm hiểu sâu về nguyên lý hoạt động của cảm biến gia tốc MPU6050; nắm vững cách điều khiển động cơ DC thông qua module L298N; thành thạo lập trình vi điều khiển Arduino Nano bằng Arduino IDE. Đề tài cũng yêu cầu sinh viên phải hiểu và triển khai thành công thuật toán điều khiển PID để xử lý tín hiệu từ cảm biến và tạo ra tín hiệu PWM điều khiển động cơ một cách chính xác. Sản phẩm cuối cùng phải được thử nghiệm trong môi trường phòng thí nghiệm để đánh giá hiệu quả và độ ổn định, từ đó rút ra các nhận xét và hướng phát triển trong tương lai. Qua đó, đồ án không chỉ là một sản phẩm kỹ thuật mà còn là cơ hội để sinh viên củng cố kiến thức đã học và áp dụng vào giải quyết một bài toán thực tế.
II. Phân tích thách thức trong việc điều khiển xe tự cân bằng
Việc điều khiển xe hai bánh tự cân bằng đặt ra nhiều thách thức kỹ thuật phức tạp, đòi hỏi sự kết hợp nhuần nhuyễn giữa phần cứng và phần mềm. Thách thức lớn nhất đến từ bản chất phi tuyến và không ổn định của mô hình con lắc ngược. Hệ thống luôn có xu hướng ngã đổ nếu không có sự can thiệp liên tục từ bộ điều khiển. Bất kỳ một sai số nhỏ trong việc đo đạc góc nghiêng, một sự chậm trễ trong vòng lặp xử lý, hay một phản ứng không chính xác từ động cơ đều có thể dẫn đến mất cân bằng ngay lập tức. Thêm vào đó, các tham số của hệ thống như trọng lượng, vị trí trọng tâm, ma sát của bánh xe là các yếu tố bất định và có thể thay đổi, gây khó khăn cho việc xây dựng một mô hình toán học chính xác tuyệt đối. Một thách thức khác là việc xử lý nhiễu từ cảm biến. Cảm biến MPU6050 mặc dù phổ biến nhưng vẫn bị ảnh hưởng bởi rung động (nhiễu từ gia tốc kế) và hiện tượng trôi điểm gốc (drift từ con quay hồi chuyển). Việc kết hợp dữ liệu từ hai cảm biến này bằng các bộ lọc (ví dụ: bộ lọc bù Kalman hoặc bộ lọc bổ sung) là cần thiết nhưng cũng làm tăng độ phức tạp của thuật toán. Lựa chọn và hiệu chỉnh bộ điều khiển cũng là một bài toán khó. Mặc dù thuật toán PID được chọn vì tính đơn giản, việc tìm ra bộ ba thông số Kp, Ki, Kd tối ưu để hệ thống đáp ứng nhanh, ổn định và không bị vọt lố là một quá trình đòi hỏi nhiều thực nghiệm và tinh chỉnh tỉ mỉ.
2.1. Vấn đề ổn định của hệ thống phi tuyến và bất định
Một xe hai bánh tự cân bằng về cơ bản là một hệ thống không ổn định. Đặc tính phi tuyến của nó thể hiện qua mối quan hệ phức tạp giữa góc nghiêng, vận tốc góc và lực đẩy của động cơ. Các phương trình động lực học mô tả hệ thống rất phức tạp và khó giải quyết chính xác. Hơn nữa, các tham số vật lý như khối lượng, momen quán tính, ma sát lốp xe với mặt đường thường không được xác định chính xác và có thể thay đổi trong quá trình hoạt động. Điều này làm cho việc thiết kế một bộ điều khiển mạnh mẽ, có khả năng hoạt động tốt dưới các điều kiện không chắc chắn, trở nên cực kỳ quan trọng. Bộ điều khiển phải đủ nhanh để phản ứng với những thay đổi tức thời và đủ thông minh để bù trừ cho những sai lệch do tính bất định của hệ thống gây ra.
2.2. Lựa chọn giải thuật điều khiển PID và các phương pháp khác
Việc lựa chọn giải thuật điều khiển là yếu tố quyết định sự thành công của đồ án. Ngoài thuật toán PID, các tài liệu nghiên cứu đã đề cập đến nhiều phương pháp tiên tiến khác như điều khiển trượt (Sliding Mode Control), điều khiển LQR (Linear-Quadratic Regulator), hay điều khiển mờ (Fuzzy Logic). Mỗi phương pháp có ưu nhược điểm riêng. Ví dụ, LQR có thể cho kết quả tối ưu nếu mô hình toán học của hệ thống chính xác, trong khi điều khiển trượt lại rất mạnh mẽ với các yếu tố bất định. Tuy nhiên, các phương pháp này thường đòi hỏi kiến thức toán học sâu và phức tạp hơn trong việc triển khai. Trong bối cảnh một đồ án tốt nghiệp, thuật toán PID được ưu tiên lựa chọn vì tính trực quan, dễ hiểu, dễ cài đặt trên các vi điều khiển như Arduino Nano, và quan trọng nhất là vẫn mang lại hiệu quả cao nếu được hiệu chỉnh đúng cách. Sự đơn giản này cho phép tập trung nhiều hơn vào việc thiết kế phần cứng và thực nghiệm.
III. Bí quyết thiết kế phần cứng cho xe hai bánh tự cân bằng
Thiết kế phần cứng là nền tảng vững chắc quyết định đến độ ổn định và hiệu suất của xe hai bánh tự cân bằng. Một hệ thống phần cứng được lựa chọn và lắp ráp tối ưu sẽ giúp thuật toán điều khiển hoạt động hiệu quả hơn. Sơ đồ khối của hệ thống bao gồm bốn thành phần chính: Khối Nguồn, Khối Cảm biến, Khối Điều khiển và Khối Động cơ. Khối nguồn, sử dụng pin Li-Ion NCR18650A 3.7V nối tiếp, cung cấp năng lượng cho toàn bộ hệ thống. Nguồn pin này được ổn áp xuống 5V thông qua IC LM7805 để cấp cho vi điều khiển và cảm biến. Khối điều khiển là bộ não của hệ thống, sử dụng vi điều khiển Arduino Nano với chip ATmega328P. Arduino Nano được chọn vì kích thước nhỏ gọn, giá thành hợp lý và cộng đồng hỗ trợ lớn. Khối cảm biến sử dụng module MPU6050, một cảm biến 6 bậc tự do (6-DoF) tích hợp gia tốc kế 3 trục và con quay hồi chuyển 3 trục. MPU6050 có nhiệm vụ đo góc nghiêng (pitch) của xe và gửi dữ liệu về cho Arduino thông qua giao thức I2C. Khối động cơ là cơ cấu chấp hành, bao gồm hai động cơ DC giảm tốc GA25-371 và module điều khiển L298N. Module L298N là một mạch cầu H kép, cho phép Arduino điều khiển chiều quay và tốc độ của hai động cơ một cách độc lập thông qua tín hiệu PWM (Pulse Width Modulation). Việc kết nối các khối này đòi hỏi sự chính xác để đảm bảo tín hiệu được truyền nhận đúng và không gây nhiễu.
3.1. Sơ đồ khối hệ thống Arduino Nano MPU6050 và L298N
Sơ đồ khối tổng quát mô tả sự tương tác giữa các thành phần chính. Khối cảm biến (MPU6050) thu thập dữ liệu góc nghiêng và gửi về khối điều khiển trung tâm (Arduino Nano). Tại đây, vi điều khiển thực thi thuật toán PID, tính toán tín hiệu điều khiển cần thiết dựa trên sai số giữa góc nghiêng hiện tại và góc cân bằng (điểm đặt). Tín hiệu đầu ra từ Arduino, thường là các xung PWM, được gửi đến khối động cơ (module L298N). L298N khuếch đại tín hiệu này để cấp dòng đủ lớn cho hai động cơ DC, làm cho chúng quay tới hoặc lùi với tốc độ phù hợp để đưa xe về trạng thái cân bằng. Toàn bộ hệ thống được cấp nguồn từ khối nguồn (Pin Li-Ion). Cấu trúc này tạo thành một vòng lặp điều khiển phản hồi kín, giúp hệ thống liên tục tự điều chỉnh.
3.2. Chức năng chi tiết của các linh kiện điện tử chủ chốt
Arduino Nano: Là trung tâm xử lý, nhận dữ liệu từ MPU6050, thực hiện các phép toán của thuật toán PID, và xuất tín hiệu PWM để điều khiển tốc độ và chiều quay của động cơ. MPU6050: Cảm biến quán tính 6 bậc tự do, cung cấp thông tin về góc nghiêng và vận tốc góc của xe, là 'giác quan' chính giúp xe nhận biết trạng thái của mình. L298N: Module điều khiển động cơ, hoạt động như một mạch cầu H. Nó nhận tín hiệu logic mức thấp từ Arduino và chuyển đổi thành dòng điện đủ lớn đểขับ động cơ, cho phép đảo chiều quay dễ dàng. Động cơ DC giảm tốc GA25-371: Cung cấp momen xoắn cần thiết để di chuyển xe và giữ thăng bằng. Hộp số giảm tốc giúp tăng momen và giảm tốc độ, phù hợp với yêu cầu điều khiển chính xác. LM7805: IC ổn áp, đảm bảo cung cấp điện áp 5V ổn định cho các linh kiện điện tử nhạy cảm như vi điều khiển và cảm biến, bảo vệ chúng khỏi sự biến động điện áp của pin.
3.3. Thiết kế cơ khí và khung xe đảm bảo độ vững chắc
Khung xe đóng vai trò vô cùng quan trọng đối với sự ổn định của robot. Một khung xe tốt cần đảm bảo độ cứng vững, trọng lượng được phân bố hợp lý và vị trí trọng tâm thấp. Trong đồ án này, khung xe được làm từ mica, một vật liệu nhẹ, dễ gia công và cách điện tốt. Thiết kế khung xe gồm hai mặt phẳng song song: một mặt phẳng dưới để gắn động cơ, bánh xe và pin; một mặt phẳng trên để đặt mạch điều khiển (Arduino Nano, L298N) và cảm biến (MPU6050). Việc đặt các linh kiện nặng như pin ở phía dưới giúp hạ thấp trọng tâm của xe, làm tăng tính ổn định tự nhiên, tương tự như nguyên lý của robot WobblyBot. Kích thước và kết cấu của khung xe được tính toán để đảm bảo sự cân đối và đủ không gian cho việc lắp đặt, đi dây gọn gàng, tránh gây nhiễu và va chạm cơ khí.
IV. Phương pháp lập trình điều khiển xe tự cân bằng với PID
Phần mềm là linh hồn của hệ thống điều khiển xe hai bánh tự cân bằng, biến các linh kiện phần cứng rời rạc thành một cỗ máy thông minh. Trọng tâm của phần mềm là việc triển khai thuật toán điều khiển PID trên nền tảng Arduino IDE. Ngôn ngữ lập trình chính được sử dụng là C/C++. Cấu trúc chương trình trên Arduino thường được chia làm ba phần chính: khai báo biến và thư viện, hàm setup() và hàm loop(). Trong hàm setup(), các tác vụ khởi tạo được thực hiện một lần duy nhất, bao gồm: thiết lập giao tiếp nối tiếp (Serial) để gỡ lỗi, khởi tạo cảm biến MPU6050, và cấu hình các chân I/O của Arduino làm đầu ra để điều khiển module L298N. Hàm loop() là vòng lặp chính thực hiện liên tục các công việc điều khiển. Mỗi vòng lặp, chương trình sẽ đọc dữ liệu thô từ gia tốc kế và con quay hồi chuyển của MPU6050, sau đó sử dụng một bộ lọc (ví dụ: bộ lọc bổ sung) để tính toán ra góc nghiêng chính xác. Góc này sau đó được so sánh với điểm đặt (setpoint, thường là 0 độ) để tính toán sai số (error). Dựa trên sai số này, ba thành phần của bộ điều khiển PID được tính toán: thành phần Tỷ lệ (P), Tích phân (I), và Vi phân (D). Cuối cùng, tổng của ba thành phần này sẽ tạo ra một tín hiệu điều khiển, được chuyển đổi thành giá trị PWM để điều khiển tốc độ và hướng quay của động cơ DC, nhằm mục đích đưa sai số về 0 và giữ cho xe cân bằng.
4.1. Giới thiệu về thuật toán điều khiển PID và vai trò Kp Ki Kd
Thuật toán PID là một cơ chế điều khiển phản hồi vòng kín kinh điển. Đầu ra của nó là tổng của ba thành phần:
- Thành phần Tỷ lệ (P - Proportional): Tỷ lệ thuận với sai số hiện tại.
P_out = Kp * error. Nó tạo ra một lực điều khiển tức thời để chống lại sai số. Kp lớn giúp xe phản ứng nhanh nhưng nếu quá lớn sẽ gây ra dao động. - Thành phần Tích phân (I - Integral): Tỷ lệ thuận với tổng tích lũy của các sai số theo thời gian.
I_out = Ki * integral(error). Thành phần này giúp loại bỏ sai số xác lập, tức là giúp xe đứng yên tại vị trí cân bằng thay vì có một độ nghiêng nhỏ. Tuy nhiên, Ki quá lớn có thể gây ra hiện tượng vọt lố (overshoot). - Thành phần Vi phân (D - Derivative): Tỷ lệ thuận với tốc độ thay đổi của sai số.
D_out = Kd * derivative(error). Nó có tác dụng 'phanh hãm', làm giảm dao động và ngăn chặn vọt lố bằng cách dự đoán xu hướng của sai số. Kd giúp hệ thống ổn định hơn nhưng nhạy cảm với nhiễu.
4.2. Cấu trúc chương trình trên Arduino IDE và lưu đồ thuật toán
Chương trình được viết trên Arduino IDE, một môi trường phát triển tích hợp (IDE) thân thiện. Lưu đồ thuật toán điều khiển bắt đầu bằng việc khởi tạo hệ thống. Sau đó, trong vòng lặp vô tận, chương trình thực hiện các bước sau:
- Đọc giá trị từ cảm biến MPU6050.
- Áp dụng bộ lọc để tính toán góc nghiêng hiện tại.
- Tính toán sai số (error) bằng cách lấy góc đặt trước (setpoint) trừ đi góc hiện tại.
- Tính toán các thành phần P, I, D.
- Cộng ba thành phần để có tín hiệu điều khiển cuối cùng.
- Giới hạn tín hiệu điều khiển trong dải giá trị PWM (ví dụ: -255 đến 255).
- Xuất tín hiệu PWM tới module L298N để điều khiển động cơ.
- Lặp lại từ bước 1. Vòng lặp này phải thực thi đủ nhanh để hệ thống có thể phản ứng kịp thời với các thay đổi, đảm bảo việc điều khiển xe tự cân bằng được liên tục và mượt mà.
V. Kết quả thực nghiệm đồ án điều khiển xe hai bánh tự cân bằng
Quá trình thực nghiệm và hiệu chỉnh đóng vai trò quyết định để biến mô hình lý thuyết thành một sản phẩm hoạt động được. Sau khi hoàn tất việc lắp ráp phần cứng và nạp chương trình điều khiển, giai đoạn quan trọng nhất là tìm ra bộ thông số PID tối ưu cho mô hình xe hai bánh tự cân bằng. Do việc xây dựng một mô hình toán học chính xác cho hệ thống là rất phức tạp, phương pháp được lựa chọn là hiệu chỉnh bằng tay (manual tuning) kết hợp với quan sát thực tế. Môi trường thử nghiệm ban đầu là trong phòng, trên nền gạch hoa phẳng, không có gió và vật cản. Dữ liệu từ cảm biến MPU6050 và tín hiệu điều khiển được theo dõi trực tiếp trên máy tính thông qua công cụ Serial Monitor và Serial Plotter của Arduino IDE. Quá trình này giúp trực quan hóa đáp ứng của hệ thống với các bộ thông số khác nhau. Kịch bản thử nghiệm bắt đầu bằng việc đặt tất cả các giá trị Kp, Ki, Kd về 0, sau đó tăng dần từng thông số theo một quy trình có hệ thống để quan sát ảnh hưởng của chúng. Sau nhiều lần thử và sai, bộ thông số tối ưu cho mô hình đã được xác định là Kp=21, Ki=14, và Kd=0.8. Với bộ thông số này, robot đã có thể tự đứng cân bằng, mặc dù vẫn còn một chút dao động nhẹ. Hiệu quả của hệ thống được kiểm chứng qua các bài thử nghiệm ở các điều kiện khác nhau.
5.1. Quy trình hiệu chỉnh thông số PID bằng phương pháp thủ công
Phương pháp hiệu chỉnh bằng tay được thực hiện theo các bước kinh điển:
- Hiệu chỉnh Kp: Đặt Ki và Kd bằng 0. Tăng dần giá trị Kp cho đến khi xe bắt đầu dao động qua lại mạnh quanh điểm cân bằng. Giá trị Kp cuối cùng được chọn bằng khoảng một nửa giá trị gây dao động này.
- Hiệu chỉnh Kd: Giữ nguyên Kp, tăng dần Kd từ 0. Kd có tác dụng làm giảm dao động. Tăng Kd cho đến khi xe ngừng dao động và trở nên 'đằm' hơn, phản ứng ổn định khi bị tác động nhẹ.
- Hiệu chỉnh Ki: Cuối cùng, tăng dần Ki từ 0. Ki giúp xe loại bỏ sai số xác lập, tức là quay về đúng vị trí 0 độ thay vì dừng lại ở một góc nghiêng nhỏ. Tăng Ki một cách từ từ cho đến khi xe hoạt động ổn định và mượt mà nhất. Nếu Ki quá lớn, xe sẽ có xu hướng đáp ứng chậm và vọt lố. Quá trình này đòi hỏi sự kiên nhẫn và quan sát tỉ mỉ để tìm ra sự cân bằng tốt nhất giữa các thông số.
5.2. Đánh giá độ ổn định của xe trong các môi trường khác nhau
Sau khi có bộ thông số PID tối ưu, xe được thử nghiệm trong ba kịch bản:
- Trong phòng: Trên bề mặt phẳng và không có gió, xe hoạt động rất tốt. Hầu hết các lần thử nghiệm đều thành công, xe có thể tự cân bằng trong khoảng góc nghiêng từ 150 đến 200 độ.
- Ngoài trời: Môi trường này có nhiều thách thức hơn do gió và bề mặt không hoàn toàn bằng phẳng. Kết quả cho thấy xe vẫn có thể cân bằng nhưng đôi khi bị ngã do các yếu tố ngoại cảnh tác động.
- Khi có tác động nhẹ: Dùng tay đẩy nhẹ vào thân xe, hệ thống phản ứng tốt. Thuật toán PID đã xử lý và điều khiển động cơ để xe nhanh chóng lấy lại thăng bằng. Các kết quả này cho thấy hệ thống sử dụng thuật toán PID hoạt động khá ổn định. Tuy nhiên, thuật toán vẫn chưa thực sự tối ưu hoàn toàn do các yếu tố như gia tốc, độ bám của bánh xe và ma sát chưa được tính đến một cách đầy đủ.
VI. Tương lai của xe hai bánh tự cân bằng và hướng phát triển
Đồ án điều khiển xe hai bánh tự cân bằng đã đạt được những mục tiêu cơ bản đề ra: thiết kế, thi công thành công mô hình và áp dụng thuật toán PID để xe có thể tự đứng thăng bằng. Kết quả thực nghiệm cho thấy xe hoạt động ổn định trong điều kiện lý tưởng và có khả năng chống lại các nhiễu loạn nhỏ. Thông qua quá trình thực hiện, sinh viên đã nắm vững phương pháp điều khiển cho mô hình con lắc ngược, cũng như có kinh nghiệm thực tế về lập trình vi điều khiển, xử lý tín hiệu cảm biến và hiệu chỉnh bộ điều khiển. Tuy nhiên, mô hình vẫn còn một số hạn chế cần được cải thiện. Hạn chế lớn nhất là xe vẫn chưa thể đứng yên hoàn toàn tại một chỗ mà có xu hướng dao động nhẹ hoặc dịch chuyển một chút. Ngoài ra, quá trình tìm kiếm thông số PID tối ưu tốn rất nhiều thời gian và mang tính thử-sai. Về hướng phát triển trong tương lai, có rất nhiều tiềm năng để nâng cấp và hoàn thiện mô hình. Các cải tiến có thể tập trung vào cả phần cứng, phần mềm và các tính năng mở rộng. Việc áp dụng các công nghệ mới và các thuật toán điều khiển tiên tiến hơn hứa hẹn sẽ đưa mô hình xe hai bánh tự cân bằng lên một tầm cao mới về hiệu suất và tính ứng dụng, mở ra nhiều khả năng ứng dụng trong cuộc sống thực.
6.1. Tổng kết những kết quả đạt được và hạn chế của đồ án
Kết quả đạt được:
- Mạch điện được thiết kế và thi công đúng theo yêu cầu, hoạt động ổn định.
- Hiểu rõ và triển khai thành công phương pháp điều khiển xe hai bánh tự cân bằng bằng thuật toán PID.
- Xe có khả năng tự cân bằng trong dải góc nghiêng từ 150 đến 200 độ. Hạn chế:
- Quá trình hiệu chỉnh thông số PID tốn nhiều thời gian và phụ thuộc vào kinh nghiệm.
- Xe cân bằng được nhưng chưa đứng yên tuyệt đối tại một vị trí, vẫn còn dao động nhỏ.
- Hiệu suất của xe có thể bị ảnh hưởng bởi các yếu tố như ma sát, độ bám của bánh xe và các nhiễu động từ môi trường bên ngoài.
6.2. Các đề xuất cải tiến Sử dụng encoder và cảm biến mới
Để nâng cao hiệu suất và độ ổn định, một số hướng phát triển có thể được xem xét:
- Nâng cấp phần cứng: Thay thế động cơ hiện tại bằng động cơ DC có gắn encoder. Encoder sẽ cung cấp thông tin phản hồi về vị trí và vận tốc của bánh xe, cho phép xây dựng một vòng lặp điều khiển kép (một vòng cho cân bằng và một vòng cho vị trí), giúp xe đứng yên tại chỗ và di chuyển chính xác hơn.
- Cải tiến thuật toán: Ngoài việc tối ưu hóa thuật toán PID, có thể nghiên cứu áp dụng các thuật toán điều khiển cao cấp hơn như LQR hoặc Sliding Mode để tăng cường sự mạnh mẽ của hệ thống.
- Tích hợp thêm cảm biến: Bổ sung các cảm biến khác như cảm biến khoảng cách (siêu âm, hồng ngoại) hoặc module GPS để xe có thêm các chức năng tự hành, tránh vật cản, hoặc đi theo một lộ trình định trước. Những cải tiến này sẽ mở rộng phạm vi ứng dụng của mô hình.