Bối cảnh và vấn đề nghiên cứu
Hệ thống quả bóng và thanh đỡ (Ball and Beam) là một mô hình thực nghiệm kinh điển trong lĩnh vực lý thuyết điều khiển tự động và kỹ thuật robot. Đặc tính phi tuyến, kém ổn định và cấu trúc vòng hở không tự cân bằng của hệ thống này mô phỏng tương đương bài toán ổn định máy bay theo phương ngang khi hạ cánh dưới tác động hỗn loạn của các luồng khí quyển. Vấn đề cốt lõi đặt ra là điều khiển vị trí của quả bóng trên một thanh đỡ tự do sao cho quả bóng di chuyển và dừng chính xác tại vị trí đặt trước (setpoint), đồng thời triệt tiêu dao động dưới tác động của các yếu tố nhiễu ngoại cảnh.
Đề tài khóa luận tốt nghiệp "Thiết kế bộ điều khiển PID cho hệ cân bằng Ball and Beam" do sinh viên Vũ Quang Ngọc thực hiện dưới sự hướng dẫn của thầy Dương Văn Khải tại Khoa Công nghệ Điện – Điện tử, Trường Đại học Công nghiệp Thực phẩm TP. Hồ Chí Minh (năm 2021), nhằm giải quyết bài toán điều khiển vị trí thông qua các nhiệm vụ nghiên cứu cụ thể:
- Tìm hiểu tổng quan về cấu tạo, động học và mô hình hóa toán học của hệ thống Ball and Beam.
- Thiết kế và tính toán các tham số cho thuật toán điều khiển tỉ lệ - tích phân - vi phân (PID).
- Xây dựng mô hình mô phỏng hệ thống trên môi trường phần mềm MATLAB/Simulink để khảo sát đáp ứng động học.
- Chế tạo mô hình phần cứng thực nghiệm, lập trình điều khiển nhúng và đánh giá chất lượng điều khiển thực tế so với kết quả mô phỏng.
Đối tượng nghiên cứu của khóa luận là mô hình hệ Ball and Beam cơ cấu trục lệch (off-center axis), trong đó thanh đỡ được nâng hạ thông qua một cánh tay đòn gắn vào đĩa quay của động cơ servo. Phạm vi nghiên cứu giới hạn ở việc mô hình hóa toán học hệ thống trục lệch, mô phỏng thuật toán PID trên phần mềm MATLAB (phiên bản 2020b) và triển khai thực nghiệm trên phần cứng sử dụng vi điều khiển Arduino UNO R3, động cơ RC Servo MG996R và cảm biến khoảng cách hồng ngoại Sharp GP2Y0A21YK0F. Các chỉ tiêu chất lượng đặt ra trong mô phỏng bao gồm: thời gian xác lập dưới 15 giây, độ vọt lố dưới 5% và triệt tiêu hoàn toàn sai số xác lập.
Cơ sở lý thuyết và phương pháp
Khóa luận sử dụng hệ phương pháp luận kết hợp giữa mô hình hóa giải tích, mô phỏng số và kiểm nghiệm thực nghiệm trên mô hình vật lý:
- Mô hình hóa toán học bằng phương pháp Euler-Lagrange: Hệ thống được mô tả thông qua hàm Lagrange $L = T - U$, trong đó $T$ là tổng động năng và $U$ là tổng thế năng của hệ thống. Động năng hệ thống gồm động năng tịnh tiến và động năng quay của quả bóng cùng động năng quay của thanh beam. Thế năng hệ thống bao gồm thế năng vị trí của quả bóng và trọng tâm thanh beam. Phương trình vi phân mô tả chuyển động của quả bóng dọc theo thanh beam có dạng:
$$\left(\frac{J_B}{R^2} + m_B\right)\ddot{r} - m_B r \dot{\alpha}^2 + m_B g \sin\alpha = 0$$
Trong đó, biến trạng thái $r(t)$ là vị trí quả bóng so với gốc tọa độ, $\alpha(t)$ là góc nghiêng của thanh beam so với phương ngang, $m_B$ và $R$ lần lượt là khối lượng và bán kính quả bóng, $J_B$ là mô-men quán tính của quả bóng, và $g$ là gia tốc trọng trường. Trong quá trình tuyến tính hóa mô phỏng, tác giả giả thiết bỏ qua ma sát trượt và ảnh hưởng của đạo hàm bậc hai góc vào đối với gia tốc dịch chuyển.
- Lý thuyết điều khiển PID và phương pháp chỉnh định: Tín hiệu điều khiển $u(t)$ tác động lên góc quay động cơ được tính theo công thức sai lệch $e(t)$:
$$u(t) = K_p e(t) + K_I \int e(t)dt + K_D \frac{de(t)}{dt}$$
Tác giả khảo sát các phương pháp xác định tham số bộ điều khiển gồm:
- Phương pháp Ziegler – Nichols thứ nhất: Dựa trên đáp ứng quá độ dạng chữ S của hệ hở để xác định độ trễ và hằng số thời gian.
- Phương pháp Ziegler – Nichols thứ hai: Dựa trên việc tìm độ khuếch đại tới hạn $K_{th}$ và chu kỳ dao động tới hạn $T_{th}$ khi đưa hệ kín về biên giới ổn định.
- Phương pháp Chien – Hrones – Reswick (CHR): Cung cấp các công thức tính toán $K_p, T_I, T_D$ theo 4 tiêu chuẩn tối ưu (tối ưu theo nhiễu hoặc theo tín hiệu đặt, với độ quá điều chỉnh 0% hoặc không vượt quá 20%).
- Phương pháp thử và sai (Trial and Error): Chỉnh định trực tiếp trên mô hình thực nghiệm bằng cách tăng dần $K_p$, bổ sung $K_D$ để dập tắt dao động và hiệu chỉnh $K_I$ để bù sai số xác lập.
-
Phương pháp lọc nhiễu tín hiệu: Thuật toán bộ lọc Kalman (Kalman filter) được cài đặt trên vi điều khiển nhằm loại bỏ thành phần nhiễu ngẫu nhiên trong tín hiệu điện áp analog trả về từ cảm biến quang học.
-
Nguồn dữ liệu: Số liệu thông số vật lý của mô hình thực nghiệm (kích thước, khối lượng linh kiện), dữ liệu kỹ thuật từ datasheet của nhà sản xuất (Arduino, Sharp, Tower Pro) và dữ liệu đáp ứng thời gian thu thập từ phần mềm MATLAB/Simulink và cổng truyền thông nối tiếp Serial của Arduino.
Thiết kế và triển khai
Hệ thống phần cứng và phần mềm được xây dựng hoàn chỉnh phục vụ việc thực nghiệm điều khiển vị trí quả bóng trên thanh đỡ trục lệch:
| Thành phần hệ thống |
Thông số kỹ thuật / Đặc tính phần cứng |
Chức năng trong hệ thống |
| Vi điều khiển |
Arduino UNO R3 (Vi điều khiển ATmega328P, xung nhịp 16 MHz, 14 chân Digital I/O, 6 kênh PWM, 6 kênh Analog Input) |
Thu thập tín hiệu cảm biến, thực thi thuật toán lọc Kalman và thuật toán PID, xuất xung PWM điều khiển góc quay servo |
| Cơ cấu chấp hành |
Động cơ RC Servo MG996R (Bánh răng kim loại, mô-men xoắn 11 kg/cm tại nguồn 6V, tốc độ xoay 0.14 s/60°, góc quay 0° – 180°) |
Kéo đẩy cánh tay đòn làm thay đổi góc nghiêng của thanh beam |
| Cảm biến vị trí |
Cảm biến khoảng cách quang hồng ngoại Sharp GP2Y0A21YK0F (Dải đo 10 – 80 cm, ngõ ra điện áp Analog, tốc độ hồi mẫu 38 ± 10 ms) |
Đo khoảng cách từ đầu thanh beam đến quả bóng dựa trên nguyên lý tam giác quang học và mảng cảm biến PSD |
| Nguồn năng lượng |
2 cell pin Lithium-ion 18650 Samsung ICR18650 mắc nối tiếp (Dung lượng 2600 mAh, điện áp danh định 7.4V, xả tối đa 10A) |
Cung cấp nguồn độc lập cho mạch điều khiển và động cơ servo công suất |
| Cơ cấu cơ khí |
Thanh beam dài 1.0 m, cánh tay đòn lệch tâm bán kính đĩa quay $d = 0.03$ m, quả bóng kim loại |
Bộ khung cơ khí chuyển động tịnh tiến và quay của hệ thống |
Quy trình xử lý tín hiệu và điều khiển vòng kín diễn ra liên tục: Cảm biến GP2Y0A21YK0F phát chùm tia hồng ngoại về phía quả bóng, tín hiệu phản xạ hội tụ lên mảng cảm biến PSD tạo ra mức điện áp tương ứng với vị trí. Vi điều khiển đọc giá trị qua bộ chuyển đổi ADC, áp dụng thuật toán lọc Kalman để khử nhiễu dao động. Sai lệch giữa vị trí đo được và vị trí đặt được đưa vào bộ thuật toán PID để tính toán góc quay cần thiết, sau đó xuất chu kỳ xung PWM đến động cơ Servo MG996R để nâng hoặc hạ thanh beam, đưa quả bóng về vị trí cân bằng.
Nội dung chính theo từng chương
Chương 1. Tổng quan về đề tài
Chương 1 trình bày tính cấp thiết của các nghiên cứu về hệ thống điều khiển tự động và robot trong bối cảnh công nghiệp hiện đại. Tác giả giới thiệu mô hình Ball and Beam như một bài toán kinh điển mô phỏng hệ thống phi tuyến có tính liên hệ thực tiễn cao (như cân bằng phương ngang máy bay). Chương này xác định rõ mục đích nghiên cứu, đối tượng nghiên cứu là mô hình Ball and Beam trục lệch, phạm vi nghiên cứu trên MATLAB và phần cứng nhúng, cùng phương pháp tiếp cận từ lý thuyết, mô phỏng đến chế tạo thực nghiệm.
Chương 2. Cơ sở lý thuyết
Chương 2 tập trung xây dựng nền tảng toán học và mô tả các thành phần linh kiện:
- Thiết lập phương trình động học và động lực học cho hai dạng kết cấu: hệ Ball and Beam trục giữa và hệ Ball and Beam trục lệch bằng giải tích Euler-Lagrange.
- Phân tích chi tiết cấu trúc bộ điều khiển vi tích phân tỉ lệ (PID), vai trò của từng thành phần hệ số ($K_p$ tăng tốc độ đáp ứng, $K_I$ triệt tiêu sai số xác lập, $K_D$ dập tắt dao động và giảm vọt lố).
- Trình bày công thức tính toán tham số PID theo các phương pháp Ziegler – Nichols dạng 1, Ziegler – Nichols dạng 2, và 4 trường hợp tối ưu của phương pháp Chien – Hrones – Reswick.
- Giới thiệu thông số kỹ thuật, cấu tạo và nguyên lý hoạt động của board Arduino UNO R3, pin sạc Lithium-ion 18650, động cơ Servo MG996R, cảm biến khoảng cách Sharp GP2Y0A21YK0F và môi trường lập trình C/C++ trên Arduino IDE.
Chương 3. Cơ sở thực hiện
Chương 3 trình bày các bước triển khai mô phỏng và thực nghiệm:
- Thiết lập các tham số vật lý cho mô hình mô phỏng Simulink:
| Tham số mô hình |
Ký hiệu |
Giá trị mô phỏng |
Đơn vị |
| Khối lượng quả bóng |
$m$ |
0.11 |
kg |
| Bán kính quả bóng |
$R$ |
0.015 |
m |
| Độ lệch cánh tay đòn |
$d$ |
0.03 |
m |
| Chiều dài thanh beam |
$L$ |
1.0 |
m |
| Gia tốc trọng trường |
$g$ |
9.8 |
$\text{m/s}^2$ |
| Mô-men quán tính quả bóng |
$J$ |
$9.9 \times 10^{-6}$ |
$\text{kg}\cdot\text{m}^2$ |
- Mô phỏng động học hệ hở khi chưa có bộ điều khiển, chứng minh hệ mất ổn định hoàn toàn và bóng bị rơi khỏi thanh beam.
- Khảo sát đáp ứng hệ thống khi lần lượt áp dụng bộ điều khiển tỉ lệ P ($K_p = 1, 3, 6$) và nhận thấy hệ thống liên tục dao động điều hòa quanh vị trí đặt 0.5 m mà không thể tự dừng lại.
- Bổ sung khâu vi phân D ($K_p = 6$ kết hợp $K_D = 1, 4, 9$), cho thấy thành phần vi phân dập tắt dao động hiệu quả và rút ngắn thời gian quá độ.
- Thu thập tín hiệu thực tế từ cảm biến hồng ngoại, phân tích hiện tượng nhiễu điện áp và cài đặt bộ lọc Kalman để làm mịn dữ liệu đo.
- Thiết kế sơ đồ kết nối dây phần cứng giữa Arduino, cảm biến GP2Y0A21YK0F, nguồn pin 18650 và động cơ Servo MG996R.
Chương 4. Kết quả và thảo luận
Chương 4 tổng hợp các kết quả thực nghiệm và đối sánh với mô phỏng:
- Phân tích đáp ứng thời gian trên mô hình thực nghiệm khi điều khiển vị trí quả bóng ở các điểm đặt khác nhau (15 cm, 19 cm, 25 cm).
- Đánh giá chất lượng của bộ tham số điều khiển thực nghiệm so với lý thuyết, chỉ ra hiện tượng đáp ứng thực tế bị ảnh hưởng bởi quán tính cơ khí, độ trễ servo và sai số đo quang học.
Chương 5. Kết luận và hướng phát triển
Chương 5 tổng kết lại toàn bộ khối lượng công việc đã hoàn thành so với nhiệm vụ ban đầu được giao. Tác giả khẳng định đã chế tạo thành công mô hình phần cứng hoạt động được, ứng dụng giải thuật lọc nhiễu Kalman và điều khiển đưa bóng về vị trí đặt trước. Đồng thời, chương này chỉ ra các hạn chế cố hữu của phần cứng giá rẻ và đề xuất các giải pháp nâng cấp mô hình trong tương lai.
Kết quả và đóng góp
Khóa luận đã thu được các kết quả định lượng và kỹ thuật cụ thể:
| Hạng mục đánh giá |
Kết quả mô phỏng (MATLAB/Simulink) |
Kết quả thực nghiệm (Mô hình vật lý) |
| Cấu hình bộ điều khiển |
Bộ điều khiển PD ($K_p = 6, K_I = 0, K_D = 9$) |
Bộ điều khiển PID chỉnh định bằng thực nghiệm |
| Tính ổn định hệ thống |
Ổn định tại điểm đặt 0.5 m, dao động biên độ rất nhỏ |
Ổn định được quả bóng tại các vị trí đặt 15 cm, 19 cm, 25 cm |
| Thời gian xác lập ($t_{xl}$) |
Đạt xấp xỉ 5.0 giây (thỏa mãn chỉ tiêu $< 15\text{ s}$) |
Kéo dài hơn mô phỏng do quán tính cơ cấu và độ trễ cơ khí |
| Độ vọt lố ($%OS$) |
Rút giảm đáng kể khi có khâu $K_D$ |
Thực tế ghi nhận độ vọt lố lớn ($> 89%$ ở cả 3 điểm đặt) |
| Xử lý tín hiệu cảm biến |
Tín hiệu lý tưởng không nhiễu |
Triệt tiêu được nhiễu analog thông qua bộ lọc Kalman |
Đóng góp kỹ thuật của đề tài bao gồm việc xây dựng thành công phương trình toán học chuyển động của hệ Ball and Beam trục lệch, chứng minh vai trò triệt tiêu dao động của khâu vi phân (D) đối với đối tượng tích phân bậc hai, và hiện thực hóa mô hình phần cứng hoàn chỉnh kết hợp giải thuật lọc số Kalman trên vi điều khiển chi phí thấp.
Hạn chế và hướng nghiên cứu tiếp
Theo nhận xét của giảng viên hướng dẫn (thầy Dương Văn Khải) và giảng viên phản biện (thầy Trần Hoàn), cùng các hạn chế được nêu trong văn bản khóa luận:
-
Hạn chế:
- Cơ cấu cơ khí chưa đạt độ cứng vững cao, liên kết truyền động còn tồn tại độ rơ và ma sát phi tuyến chưa được tính đến trong mô hình toán.
- Cảm biến khoảng cách Sharp GP2Y0A21YK0F xác định vị trí dựa trên sự phản xạ chùm tia quang học, nhưng do quả bóng có dạng hình cầu nên điểm phản xạ không trùng cố định với tâm quả bóng, gây sai số đọc khoảng cách.
- Báo cáo chưa xác định cụ thể tần số lấy mẫu ($f_s$) và giới hạn không gian hoạt động tối đa của hệ thống.
- Chất lượng điều khiển thực tế còn hạn chế, độ vọt lố trên mô hình thực nghiệm còn rất cao (vượt quá 89% tại các vị trí đặt).
- Trong mô phỏng, cấu hình đạt chất lượng tốt nhất là bộ PD (không có khâu $K_I$), chưa khai thác triệt để cấu trúc PID đầy đủ.
-
Hướng nghiên cứu tiếp:
- Gia cố kết cấu cơ khí chính xác, sử dụng vật liệu có độ bền cao để giảm thiểu rung lắc khi thanh beam chuyển động nhanh.
- Thay thế cảm biến khoảng cách quang học bằng cảm biến điện trở tuyến tính dạng dải (resistive touch strip) hoặc cảm biến siêu âm/camera xử lý ảnh để xác định vị trí tâm bóng chính xác hơn.
- Nghiên cứu áp dụng các giải thuật điều khiển phi tuyến và hiện đại như điều khiển trượt (Sliding Mode Control), điều khiển mờ (Fuzzy Logic) hoặc LQR để nâng cao độ bền vững của hệ thống trước nhiễu lớn.
Giá trị tham khảo
Khóa luận là tài liệu tham khảo thực nghiệm trực quan cho sinh viên và học viên chuyên ngành Công nghệ Kỹ thuật Điều khiển và Tự động hóa, Cơ điện tử và Kỹ thuật Robot:
- Phần mô hình hóa toán học (Chương 2): Cung cấp các bước thiết lập phương trình Euler-Lagrange hoàn chỉnh cho cơ cấu đòn bẩy trục lệch.
- Phần mô phỏng Simulink (Chương 3): Minh họa rõ ràng tác động của từng khâu $P, I, D$ lên đối tượng tích phân không ổn định, đóng vai trò tài liệu tham khảo cho các môn học Lý thuyết điều khiển tự động.
- Phần nhúng và xử lý tín hiệu: Cung cấp mã nguồn thực thi bộ lọc Kalman xử lý tín hiệu cảm biến analog và thuật toán PID trên vi điều khiển Arduino.
Câu hỏi thường gặp
1. Tại sao tác giả lựa chọn cấu trúc Ball and Beam trục lệch thay vì trục giữa truyền thống?
Trong báo cáo (trang 24), tác giả chỉ ra rằng cơ cấu trục lệch có đặc tính động học phức tạp và khó điều khiển hơn so với cơ cấu trục giữa do thanh beam chuyển động bất đối xứng thông qua cánh tay đòn nối với đĩa quay động cơ. Tác giả lựa chọn mô hình này nhằm tìm hiểu sâu hơn về động học cơ cấu và thử thách năng lực thiết kế bộ điều khiển cho đối tượng có tính phi tuyến cao.
2. Bộ thông số vật lý sử dụng trong mô hình mô phỏng MATLAB/Simulink được thiết lập như thế nào?
Hệ thống mô phỏng sử dụng các tham số: khối lượng quả bóng $m = 0.11\text{ kg}$, bán kính quả bóng $R = 0.015\text{ m}$, độ lệch cánh tay đòn $d = 0.03\text{ m}$, chiều dài thanh beam $L = 1.0\text{ m}$, gia tốc trọng trường $g = 9.8\text{ m/s}^2$, và mô-men quán tính quả bóng $J = 9.9 \times 10^{-6}\text{ kg}\cdot\text{m}^2$.
3. Khâu vi phân (D) đóng vai trò gì trong việc ổn định hệ thống ở phần mô phỏng?
Khi chỉ sử dụng khâu tỉ lệ ($K_p = 1, 3, 6$), hệ kín luôn rơi vào trạng thái dao động tuần hoàn quanh điểm đặt (0.5 m) và bóng liên tục lăn qua lại mà không thể dừng. Khi bổ sung thành phần vi phân $K_D = 9$ (với $K_p = 6, K_I = 0$), biên độ dao động được dập tắt nhanh chóng, độ vọt lố giảm mạnh và hệ thống đạt trạng thái xác lập sau khoảng 5 giây.
4. Nguyên nhân nào gây ra sai số đo khoảng cách của cảm biến Sharp GP2Y0A21YK0F và giải pháp khắc phục là gì?
Sai số xuất hiện do cấu tạo hình cầu của quả bóng khiến chùm tia hồng ngoại không phản xạ chính xác tại tâm mà thay đổi góc tới tùy theo bề mặt tiếp xúc, kết hợp với nhiễu môi trường quang học và giới hạn đo tuyến tính (10 – 80 cm). Tác giả đã lập trình thuật toán bộ lọc Kalman trên Arduino để lọc nhiễu ngẫu nhiên và ổn định tín hiệu điện áp analog đưa về bộ điều khiển.
5. Điểm hạn chế lớn nhất được giảng viên phản biện chỉ ra về chất lượng điều khiển trên mô hình thực tế là gì?
Giảng viên phản biện (thầy Trần Hoàn) nhận xét kết quả điều khiển thực tế chưa tốt khi độ vọt lố đo được tại cả ba vị trí đặt thử nghiệm đều vượt quá 89%, đồng thời khóa luận chưa nêu rõ tần số lấy mẫu của hệ thống và giải thích chưa thỏa đáng lý do tại sao cấu hình mô phỏng tốt nhất lại là bộ PD thay vì PID hoàn chỉnh.
Kết luận
Khóa luận tốt nghiệp của sinh viên Vũ Quang Ngọc đã hoàn thành việc mô hình hóa toán học, mô phỏng trên MATLAB/Simulink và chế tạo mô hình thực nghiệm hệ cân bằng Ball and Beam cơ cấu trục lệch sử dụng vi điều khiển Arduino UNO R3 và servo MG996R. Nghiên cứu đã chứng minh hiệu quả dập tắt dao động của khâu vi phân trong bộ điều khiển PD/PID và tính ứng dụng của bộ lọc Kalman trong việc xử lý nhiễu cảm biến khoảng cách quang học. Mặc dù kết quả thực nghiệm còn tồn tại độ vọt lố cao do quán tính cơ khí và giới hạn của cảm biến analog, đề tài đã đáp ứng các yêu cầu cơ bản của một đồ án tốt nghiệp kỹ thuật điều khiển và tạo cơ sở cho các nghiên cứu phát triển thuật toán phi tuyến tiếp theo.