Nghiên Cứu Hệ Thống Điều Khiển Bồn Nước Đơn Dùng Board Arduino Uno R3: Tối Ưu Hóa PID Bằng Giải Thuật Di Truyền (GA)


Tóm tắt nghiên cứu (200-250 từ)

Nghiên cứu này tập trung giải quyết bài toán cốt lõi: Làm thế nào để điều khiển ổn định và chính xác mực chất lỏng trong hệ thống bồn nước đơn phi tuyến SISO bằng cách kết hợp bộ điều khiển PID số với giải thuật di truyền (Genetic Algorithm - GA) trên nền tảng phần cứng nhúng giá thành thấp?

Phương pháp nghiên cứu được triển khai theo quy trình khép kín: xây dựng mô hình toán học phi tuyến của hệ thống thủy lực, thiết kế bộ điều khiển PID rời rạc, tối ưu hóa các thông số $K_p, K_i, K_d$ thông qua giải thuật di truyền GA với kỹ thuật mã hóa thập phân trên MATLAB/Simulink, và cuối cùng là hiện thực hóa trên mô hình thực nghiệm phần cứng tích hợp vi điều khiển Arduino Uno R3 (ATmega328P), cảm biến khoảng cách siêu âm HC-SR04, mạch công suất cầu H BTS7960 và máy bơm DC 12V.

Kết quả nghiên cứu chứng minh rằng việc áp dụng giải thuật GA giúp bộ điều khiển PID triệt tiêu độ vọt lố, rút ngắn thời gian xác lập và duy trì sai số xác lập xấp xỉ bằng 0 tại các điểm đặt (10 cm, 15 cm) ngay cả khi có tác động của nhiễu xả tải. Nghiên cứu mang lại giá trị ứng dụng cao, cung cấp một giải pháp phần cứng mở, chi phí thấp phục vụ công tác giảng dạy, nghiên cứu thực nghiệm lý thuyết điều khiển tự động và kỹ thuật điều khiển thông minh tại các trường đại học kỹ thuật.


Bối cảnh và tầm quan trọng (300-350 từ)

Thực trạng kiến thức và thách thức kỹ thuật

Trong ngành kỹ thuật điều khiển và tự động hóa, bài toán kiểm soát mức chất lỏng trong bồn chứa là một bài toán công nghiệp kinh điển xuất hiện rộng rãi trong các hệ thống lọc hóa dầu, chế biến thực phẩm, xử lý nước thải và điều khiển bao hơi nhà máy nhiệt điện. Về mặt động lực học, hệ thống bồn nước đơn (Single-Tank System) là một đối tượng SISO (Single Input Single Output) mang đặc tính phi tuyến bậc 1 rõ rệt do lưu lượng xả qua van đáy tỷ lệ với căn bậc hai của chiều cao cột nước theo định luật Torricelli ($q_{out} = a C_D \sqrt{2gh}$).

Khoảng trống nghiên cứu (Research Gap)

Mặc dù thuật toán PID truyền thống được ứng dụng phổ biến nhất trong công nghiệp, việc chỉnh định các hệ số $K_p, K_i, K_d$ bằng các phương pháp kinh điển (như Ziegler-Nichols hay phương pháp thử - sai) thường tốn nhiều thời gian và khó đạt được tính tối ưu toàn cục khi hệ thống vận hành tại nhiều điểm làm việc khác nhau hoặc xuất hiện nhiễu phi tuyến. Bên cạnh đó, các mô hình thực nghiệm chuyên dụng nhập khẩu (như các trạm thực hành của Festo hay GUNT) có giá thành rất cao, gây hạn chế lớn cho việc trang bị quy mô lớn trong các phòng thí nghiệm đại học.

Tính cấp thiết và tiềm năng ứng dụng

Sự bùng nổ của phần cứng mã nguồn mở như Arduino Uno R3 kết hợp cùng các gói công cụ giao tiếp thời gian thực của MATLAB/Simulink đã mở ra cơ hội xây dựng các hệ thống điều khiển số với chi phí tối ưu. Đề tài "Điều khiển hệ thống bồn nước đơn dùng board Arduino Uno R3" do sinh viên Võ Minh Tài thực hiện dưới sự hướng dẫn của GVC. Nguyễn Ngô Lâm tại Trường Đại học Sư phạm Kỹ thuật TP.HCM (HCMUTE) mang tính thời sự cao. Nghiên cứu không chỉ lấp đầy khoảng trống giữa lý thuyết điều khiển hiện đại và thực tiễn triển khai mà còn tạo ra một mô hình chuẩn mực, thẩm mỹ và hiệu quả phục vụ công tác đào tạo kỹ sư điều khiển và tự động hóa.


Methodology và approach (350-400 từ)

Thiết kế nghiên cứu và mô hình hóa toán học

Nghiên cứu áp dụng phương pháp tiếp cận tích hợp giữa mô hình hóa giải tích, mô phỏng sốthực nghiệm thời gian thực (Hardware-in-the-loop). Mô hình động học phi tuyến của hệ bồn nước đơn được thiết lập dựa trên phương trình cân bằng lưu lượng:

$$A(h)\frac{dh(t)}{dt} = q_{in}(t) - q_{out}(t) = ku(t) - a C_D \sqrt{2gh(t)}$$

Trong đó:

  • $h(t)$: Độ cao mực nước trong bồn (cm).
  • $A(h)$: Tiết diện ngang bồn chứa ($100 - 200 \text{ cm}^2$).
  • $u(t)$: Điện áp điều khiển máy bơm ($0 - 12\text{V}$).
  • $k$: Hệ số lưu lượng bơm ($300 \text{ cm}^3/\text{sec}$).
  • $a$: Tiết diện van xả ($1 \text{ cm}^2$), $C_D$: Hệ số xả ($0.6$), $g$: Gia tốc trọng trường ($981 \text{ cm/s}^2$).

Hệ thống được rời rạc hóa với chu kỳ lấy mẫu $T = 0.1\text{s} - 0.2\text{s}$, xây dựng hàm truyền kín cho bộ điều khiển PID số dạng:

$$G_{PID}(z) = K_P + K_I \frac{T}{2}\frac{z+1}{z-1} + K_D \frac{z-1}{Tz}$$

+---------------+     e(t)     +---------------+  u(t)   +------------------+  h(t)  +---------------+
| Điểm đặt (Set)| --->(+)----> |  PID số + GA  | ------> | Driver + Động cơ | -----> | Bồn nước mica |
+---------------+      ^ -     +---------------+         +------------------+        +-------+-------+
                       |                                                                     |
                       +---------------- Cảm biến siêu âm HC-SR04 <--------------------------+

Ứng dụng giải thuật di truyền (GA) để tối ưu hóa

Nhóm nghiên cứu xây dựng giải thuật di truyền GA với các cải tiến kỹ thuật cụ thể:

  1. Mã hóa thập phân (Decimal Encoding): Mỗi nhiễm sắc thể (NST) biểu diễn bộ thông số $(K_p, K_i, K_d)$ dưới dạng chuỗi chữ số thập phân ${0, 1, ..., 9}$, giúp rút ngắn độ dài NST và tăng tốc độ tính toán so với mã hóa nhị phân truyền thống.
  2. Hàm thích nghi (Fitness Function): Thiết lập hàm mục tiêu đánh giá chất lượng điều khiển nghịch đảo với sai số xác lập và thời gian quá độ: $$\text{Fitness} = \frac{1}{J(\theta) + C}$$ (với $C$ là hằng số dương đảm bảo mẫu số luôn dương).
  3. Toán tử di truyền: Áp dụng chọn lọc sắp hạng tuyến tính (Linear Ranking Selection), lai ghép nhiều điểm (Multipoint Crossover), lai ghép đều (Uniform Crossover) và đột biến đa điểm với xác suất đột biến $P_m$ thấp nhằm tránh hội tụ sớm vào cực trị cục bộ.

Cấu trúc phần cứng và giao tiếp hệ thống

  • Bộ xử lý trung tâm: Board Arduino Uno R3 (vi điều khiển ATmega328P, 16 MHz, 32KB Flash).
  • Mạch công suất: Driver cầu H BTS7960 chịu dòng lên đến 43A, hỗ trợ điều chế PWM 25kHz giúp bảo vệ quá dòng, quá nhiệt và điều khiển tuyến tính điện áp động cơ.
  • Cảm biến hồi tiếp: Cảm biến siêu âm HC-SR04 (tần số quét 40kHz, dải đo 2 – 300 cm, độ chính xác 0.5 cm) đặt tại đỉnh bồn đo khoảng cách mặt nước không tiếp xúc.
  • Môi trường điều khiển: Nhúng trực tiếp qua bộ công cụ MATLAB/Simulink Support Package for Arduino Hardware.

Phát hiện chính (400-450 từ)

Quá trình mô phỏng và thử nghiệm thực tế đã mang lại 4 phát hiện kỹ thuật quan trọng:

    Mực nước (cm)
     ^
  15 |               +-----------------------------  (Đáp ứng PID + GA: Không vọt lố, ổn định nhanh)
     |              /
  10 |  - - - - - -/ - - - - - - - - - - - - - - - -  (Đáp ứng PID thông thường: Có dao động, xác lập chậm)
     |    /\      /
   5 |   /  \    /
     |  /    \--/
   0 +---------------------------------------------> Thời gian (s)

1. Sự vượt trội của bộ thông số PID tối ưu bởi GA so với thử - sai

Trong giai đoạn mô phỏng ban đầu, bộ thông số chọn ngẫu nhiên bằng thực nghiệm ($K_p = 1, K_i = 1, K_d = 0$) cho đáp ứng quá độ xuất hiện độ vọt lố đáng kể và thời gian xác lập kéo dài. Khi kích hoạt giải thuật di truyền GA với không gian tìm kiếm đa chiều, GA đã hội tụ chính xác về bộ thông số tối ưu. Đồ thị đáp ứng ngõ ra cho thấy:

  • Độ vọt lố (Overshoot): Giảm từ mức $>15%$ xuống xấp xỉ $0%$.
  • Thời gian tăng (Rise time): Đáp ứng nhanh chóng bám sát giá trị đặt mà không gây sốc dòng cho động cơ.
  • Sai số xác lập ($e_{ss}$): Bị triệt tiêu hoàn toàn về mức 0 nhờ khâu tích phân được tính toán chuẩn xác.

2. Độ tương thích cao giữa mô hình toán học và phần cứng thực tế

Khi so sánh kết quả mô phỏng trên Simulink với số liệu thu thập thời gian thực từ cảm biến HC-SR04, mức độ tương đồng động học đạt trên 85%. Phương trình vi phân phi tuyến bậc 1 được thiết lập đã phản ánh trung thực quy luật nạp - xả và hiện tượng trễ của dòng chảy thủy lực trong bồn mica.

3. Hiệu năng điều khiển ổn định tại nhiều điểm đặt (Multi-setpoints)

Trên mô hình thực nghiệm, hệ thống được thử nghiệm điều khiển qua hai trường hợp điểm đặt khác nhau:

  • Trường hợp 1 (Điểm đặt 10 cm): Mực nước dâng nhanh từ 0 cm lên 10 cm, hệ thống chuyển sang trạng thái cân bằng động chỉ sau thời gian ngắn, điện áp cấp cho động cơ tự động hạ về mức duy trì lưu lượng bù xả.
  • Trường hợp 2 (Điểm đặt 15 cm): Hệ thống tiếp tục đáp ứng chính xác, giữ vững mức nước 15 cm với độ lệch dao động thực tế $< \pm 0.3\text{ cm}$.

4. Khả năng kháng nhiễu và bù áp của mạch cầu H BTS7960

Một phát hiện thực nghiệm quan trọng là khi van xả đáy được mở tối đa để tạo nhiễu ngẫu nhiên, cảm biến siêu âm phát hiện sự sụt giảm mực nước ngay lập tức. Tín hiệu sai số kích hoạt bộ điều khiển PID tăng độ rộng xung PWM (thông qua driver BTS7960 cấp điện áp từ 0V vọt lên 12V), thúc đẩy lưu lượng bơm tức thời để bù đắp lượng nước thất thoát và kéo mực nước trở lại vạch quy định một cách mượt mà.


Đóng góp khoa học (250-300 từ)

Đóng góp về mặt lý thuyết và học thuật

Nghiên cứu đã hệ thống hóa và chứng minh tính hiệu quả của phương pháp thiết kế bộ điều khiển PID rời rạc kết hợp giải thuật tiến hóa (GA) cho các hệ thống phi tuyến bậc 1 SISO. Việc ứng dụng mã hóa thập phân trong GA làm phong phú thêm các giải pháp tối ưu hóa tham số điều khiển trong miền thời gian thực.

Đổi mới về phương pháp luận (Methodological Innovations)

Đề tài xây dựng một quy trình kỹ thuật liền mạch: từ mô hình hóa toán học $\rightarrow$ mô phỏng động học trên MATLAB/Simulink $\rightarrow$ tối ưu hóa giải thuật $\rightarrow$ nạp nhúng điều khiển trực tiếp trên phần cứng thông qua thư viện hỗ trợ phần cứng của MATLAB. Quy trình này giúp loại bỏ sự phức tạp khi viết code C nhúng thủ công trên vi điều khiển, đồng thời tăng tính trực quan trong giám sát và thu thập dữ liệu.

Đóng góp thực tiễn và giáo dục

  • Thiết bị phục vụ đào tạo: Đề tài cung cấp một mô hình thực hành bồn nước đơn hoàn chỉnh về cả cơ khí (bồn mica trong suốt, van xả), điện tử (Arduino, BTS7960, HC-SR04) và chương trình điều khiển. Đây là công cụ giảng dạy trực quan lý tưởng cho các môn: Lý thuyết điều khiển tự động, Hệ thống điều khiển rời rạc, Điều khiển thông minh.
  • Tiết kiệm ngân sách: Chi phí chế tạo hệ thống sử dụng linh kiện phổ thông chỉ bằng một phần nhỏ so với các module thí nghiệm công nghiệp chuyên dụng nhưng vẫn đảm bảo đầy đủ các tính năng kiểm chứng giải thuật.

Đối tượng quan tâm (200-250 từ)

Báo cáo nghiên cứu này mang lại giá trị thiết thực cho nhiều nhóm đối tượng:

  • Giảng viên và Nghiên cứu sinh: Sử dụng tài liệu làm bài giảng mẫu, giáo án thí nghiệm thực hành hoặc làm nền tảng mở rộng để nghiên cứu các thuật toán điều khiển nâng cao (Fuzzy PID, Neural Network, Điều khiển thích nghi mờ, MPC).
  • Sinh viên ngành Kỹ thuật Điều khiển & Tự động hóa, Cơ điện tử, Điện tử viễn thông: Nắm bắt phương pháp chuyển đổi từ lý thuyết toán học sang mô hình mô phỏng Simulink, kỹ năng thiết kế phần cứng điều khiển công suất động cơ DC và kỹ thuật đo khoảng cách bằng sóng siêu âm.
  • Kỹ sư R&D và Tự động hóa công nghiệp: Tham khảo kiến trúc điều khiển mức nước tự động giá rẻ ứng dụng trong các hệ thống cấp thoát nước, bồn lắng xử lý nước quy mô vừa và nhỏ, hoặc hệ thống giám sát bồn nhiên liệu.

FAQ (250-300 từ)

1. Phát hiện quan trọng nhất của nghiên cứu này là gì?

Trả lời: Phát hiện quan trọng nhất là việc chứng minh giải thuật di truyền (GA) mã hóa thập phân có khả năng tìm kiếm chính xác bộ thông số PID tối ưu toàn cục, giúp hệ thống bồn nước đơn thực tế triệt tiêu độ vọt lố và giữ mực nước ổn định tuyệt đối tại các điểm đặt mong muốn.

2. Phương pháp nghiên cứu trong đề tài có điểm gì đặc biệt?

Trả lời: Điểm đặc biệt là việc tích hợp trực tiếp môi trường MATLAB/Simulink với board phần cứng Arduino Uno R3 thông qua bộ thư viện nhúng chuyên dụng, cho phép vừa mô phỏng thuật toán tối ưu vừa xuất tín hiệu điều khiển PWM thời gian thực tới mạch cầu H BTS7960.

3. Kết quả nghiên cứu có thể tổng quát hóa (generalize) cho hệ thống khác không?

Trả lời: Hoàn toàn có thể. Cấu trúc điều khiển và thuật toán GA trong đề tài có thể áp dụng trực tiếp cho các đối tượng phi tuyến phức tạp hơn như hệ bồn nước đôi, hệ 4 bồn nước (Quadruple Tank), hệ con lắc ngược tự cân bằng, hoặc các hệ thống kiểm soát nhiệt độ lò nhiệt.

4. Hướng phát triển tiếp theo của đề tài là gì?

Trả lời: Hướng phát triển tiếp theo bao gồm việc nâng cấp hệ thống lên cấu trúc bồn nước đôi nối tầng (hệ MIMO), tích hợp giao diện giám sát SCADA/IoT trên nền Web, và thử nghiệm các giải thuật điều khiển phi tuyến hiện đại như trượt (Sliding Mode Control) hoặc nơ-ron thích nghi.

5. Ứng dụng thực tế của mô hình này trong đời sống là gì?

Trả lời: Ứng dụng làm bộ thí nghiệm chuẩn tại các trường đại học, ứng dụng trong các trạm bơm cấp nước sinh hoạt tự động, trạm trộn hóa chất tự động và hệ thống kiểm soát dung dịch trong nông nghiệp công nghệ cao.


Kết luận (150 từ)

Đề tài nghiên cứu khoa học "Điều khiển hệ thống bồn nước đơn dùng board Arduino Uno R3" của sinh viên Võ Minh Tài (Đại học Sư phạm Kỹ thuật TP.HCM) đã hoàn thành xuất sắc các mục tiêu đề ra: xây dựng thành công mô hình phần cứng cơ - điện tử thẩm mỹ, mô hình hóa toán học chính xác và chứng minh tính ưu việt của giải thuật di truyền GA trong việc tối ưu hóa bộ điều khiển PID số. Nghiên cứu đã tạo ra một giải pháp học tập - nghiên cứu thực nghiệm trực quan, chi phí thấp nhưng đạt chuẩn mực khoa học cao. Trong tương lai, việc phát triển mở rộng mô hình lên các cấu trúc phi tuyến đa biến (MIMO) và tích hợp công nghệ điều khiển qua mạng IoT sẽ tiếp tục nâng cao giá trị ứng dụng của hệ thống trong thực tiễn công nghiệp 4.0.