Giới thiệu dự án
Trong kỷ nguyên tự động hóa công nghiệp và Công nghiệp 4.0, hệ thống truyền động điện một chiều (DC Motor Drives) vẫn đóng vai trò then chốt tại các dây chuyền cán thép, máy công cụ CNC, cánh tay robot công nghiệp và hệ thống xe tự hành AGV nhờ đặc tính mô-men khởi động lớn, dải điều chỉnh tốc độ rộng và khả năng đáp ứng tuyến tính cao. Theo các khảo sát kỹ thuật truyền động, hơn 40% các sự cố dừng dây chuyền trong các hệ thống truyền động công nghiệp vừa và nhỏ bắt nguồn từ việc điều khiển tốc độ không ổn định khi tải thay đổi đột ngột hoặc hiện tượng trôi điểm làm việc do sai lệch tĩnh tích lũy.
+-----------------------------------+
| Giá trị đặt tốc độ (Setpoint) |
+-----------------+-----------------+
|
v
+--------------+ +---------+---------+ +---------------+
| Hồi tiếp từ |--------->| Bộ cộng sai lệch |--------->| Giải thuật |
| Encoder (y) | - (e) | e(t) = r - y | | PID số (PIC) |
+--------------+ +-------------------+ +-------+-------+
^ |
| v
+------+-------+ +-------------------+ +-------+-------+
| Động cơ DC |<---------| Mạch công suất H- |<---------| Tín hiệu điều |
| chấp hành | Điện áp | Bridge (PWM Drive)| Duty % | khiển u(t) |
+--------------+ phần ứng+-------------------+ +---------------+
Vấn đề kỹ thuật cốt lõi được đặt ra trong thực tế là các bộ điều khiển tương tự (Analog PID dựa trên mạch khuếch đại thuật toán Op-Amp) có cấu trúc phần cứng cố định, rất khó tinh chỉnh các hệ số khuếch đại $K_p$ và hằng số thời gian tích phân $T_i$, vi phân $T_d$ khi đối tượng thay đổi thông số động học. Mặt khác, các hệ truyền động xung áp hoặc chỉnh lưu Tiristor truyền thống không có mạch vòng kín hồi tiếp tốc độ thường xuyên xuất hiện độ sụt tốc lớn khi mang tải, đồng thời đối mặt với hiện tượng bão hòa tích phân (Integral Windup) làm tăng độ vọt lố và kéo dài thời gian quá độ.
Đồ án "Thiết kế, chế tạo bộ điều chỉnh loại PID cho phép điều chỉnh các hệ số khuyếch đại và hằng số thời gian" do sinh viên Lã Mạnh Thắng thực hiện dưới sự hướng dẫn của GS.TSKH Thân Ngọc Hoàn (chuyên ngành Điện Tự Động Công Nghiệp) giải quyết triệt để các tồn tại trên thông qua 4 mục tiêu cụ thể:
- Thiết kế phần cứng hoàn chỉnh: Xây dựng mạch điều khiển trung tâm sử dụng vi điều khiển 8-bit Microchip PIC16F877A, tích hợp giao tiếp bàn phím ma trận 16 phím và màn hình hiển thị LCD 16x2 để cài đặt và giám sát trực tiếp các tham số điều khiển.
- Số hóa thuật toán PID và Anti-Windup: Lập trình giải thuật PID rời rạc hóa với khả năng tùy biến hệ số khuếch đại $K_p$, hằng số tích phân $K_i$ và vi phân $K_d$ trong thời gian thực (real-time parameter tuning).
- Phát triển mạch lực và thu thập tín hiệu hồi tiếp: Thiết kế tầng công suất điều chế độ rộng xung (PWM) kết hợp module thu thập tín hiệu xung tốc độ từ cảm biến Encoder quang học gắn đồng trục với động cơ DC.
- Đánh giá và tối ưu hóa động học hệ thống: Triệt tiêu sai lệch tĩnh ($e_{ss} \approx 0$), khống chế độ vọt lố ($\sigma% < 5%$) và rút ngắn thời gian xác lập ($t_s < 0.8\text{ s}$) trong toàn dải tốc độ làm việc.
Phạm vi và giới hạn: Đề tài tập trung vào hệ truyền động động cơ điện một chiều kích từ độc lập công suất định mức dưới 100W, điện áp điều khiển phần ứng 12V–24V DC, tần số lấy mẫu xử lý thuật toán $T_s = 10\text{ ms} - 50\text{ ms}$ tại môi trường thử nghiệm tiêu chuẩn công nghiệp.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Trước khi giải pháp điều khiển số vi tích phân tỉ lệ (Digital PID) bằng vi điều khiển được ứng dụng rộng rãi, các hệ thống điều khiển truyền động DC công nghiệp chủ yếu sử dụng các giải pháp truyền thống với nhiều hạn chế kỹ thuật:
| Phương pháp điều khiển | Ưu điểm kỹ thuật | Nhược điểm & Rào cản công nghệ | Độ chính xác duy trì tốc độ |
|---|---|---|---|
| Hệ Máy phát - Động cơ (F - Đ) | Chuyển đổi trạng thái linh hoạt, làm việc ở cả 4 góc phần tư, chịu quá tải cao | Sử dụng tối thiểu 2 máy điện quay; tiếng ồn lớn, trễ từ dư, kích thước cồng kềnh, tổn hao năng lượng | Thấp ($\Delta n \approx 5% - 10%$) |
| Chỉnh lưu Tiristor (CL - ĐC) | Công suất chuyển mạch lớn, thiết bị tĩnh, độ tin cậy cơ học cao hơn F - Đ | Sóng hài điện áp bậc cao lớn, đập mạch dòng điện, dòng điện gián đoạn ở tải nhỏ làm dốc đặc tính cơ | Trung bình ($\Delta n \approx 3% - 7%$) |
| Analog PID (Op-Amp) | Tốc độ đáp ứng tức thời, không trễ lượng tử hóa tín hiệu | Khó thay đổi thông số $K_p, T_i, T_d$ (phải hàn đổi R, C), trôi nhiệt điện trở, dễ nhiễu tín hiệu nhỏ | Khá ($\Delta n \approx 2% - 4%$) |
| Digital PID trên PIC16F877A (Đề tài) | Tùy biến tham số qua giao diện phím bấm/LCD, tích hợp thuật toán chống bão hòa tích phân, kích thước gọn | Phụ thuộc độ phân giải PWM và tần số lấy mẫu của vi điều khiển | Rất cao ($\Delta n \le 1.0%$) |
Phân loại yêu cầu người dùng theo mô hình MoSCoW:
- Must have (Bắt buộc): Đọc xung hồi tiếp Encoder chính xác qua ngắt Timer/Capture; tính toán sai lệch $e(k) = r(k) - y(k)$; xuất xung PWM điều khiển tốc độ động cơ DC; cho phép nhập và cập nhật $K_p, K_i, K_d$ từ bàn phím.
- Should have (Nên có): Màn hình LCD hiển thị đồng thời tốc độ cài đặt (RPM) và tốc độ thực tế; giải thuật Anti-Windup kẹp giới hạn đầu ra tích phân.
- Could have (Có thể mở rộng): Lưu trữ các bộ thông số $K_p, K_i, K_d$ tối ưu vào bộ nhớ EEPROM nội của vi điều khiển.
- Won't have (Chưa thực hiện): Thuật toán tự chỉnh định thông số thích nghi (Self-tuning/Auto-tuning PID) và điều khiển đảo chiều cầu H 4 góc phần tư có hãm tái sinh năng lượng.
Thiết kế hệ thống
Kiến trúc hệ thống bao gồm 5 khối chức năng chính được thiết kế tương thích chuẩn công nghiệp:
+-----------------------------------------------------------------------------------+
| KIẾN TRÚC HỆ THỐNG |
+-----------------------------------------------------------------------------------+
+------------------+ +-------------------+ +-----------------------+
| Bàn phím ma trận| ----> | Khối xử lý MCU | <--- | Encoder hồi tiếp |
| 4x4 (Cài đặt) | | PIC16F877A | | (Đo tốc độ thực) |
+------------------+ | - Timer0 / Timer1| +-----------------------+
| - Module CCP PWM |
+------------------+ | - Bộ nhớ RAM/ROM | +-----------------------+
| Màn hình LCD | <---- | - Core ALU 8-bit | ----> | Tầng Driver & Mạch |
| 16x2 (Hiển thị) | +-------------------+ PWM | công suất MOSFET |
+------------------+ +-----------+-----------+
| Điện áp Uư
v
+-----------------------+
| Động cơ DC Chấp hành |
+-----------------------+
+-----------------------------------------------------------------------------------+
| DANH MỤC THIẾT BỊ VÀ THÔNG SỐ KỸ THUẬT |
+-----------------------------------------------------------------------------------+
| Thành phần | Thông số kỹ thuật chi tiết |
+-----------------------------------------------------------------------------------+
| Vi điều khiển trung tâm| Microchip PIC16F877A (CMOS 8-bit, 20 MHz, Flash 8K x 14 words)|
| Cảm biến tốc độ | Optical Incremental Encoder 2 kênh A/B, 100 - 360 Xung/Vòng|
| Module hiển thị | Màn hình LCD 16x2 HD44780, giao tiếp dữ liệu 4-bit |
| Module giao tiếp nhập | Bàn phím ma trận 16 nút (10 phím số 0-9, phím SET, Enter) |
| Tầng công suất | Mạch cầu H tích hợp Transistor/MOSFET công suất cao |
| Môi trường phát triển | CCS C Compiler v5.084, MPLAB IDE v8.92, Proteus VSM v8.6 |
+-----------------------------------------------------------------------------------+
Phương trình toán học mô tả đặc tính cơ điện của động cơ một chiều kích từ độc lập: $$\omega = \frac{U_ư}{K\Phi} - \frac{R_ư}{(K\Phi)^2} M$$
Trong đó:
- $\omega$: Tốc độ góc của trục động cơ ($\text{rad/s}$)
- $U_ư$: Điện áp đặt vào mạch phần ứng ($\text{V}$)
- $K\Phi$: Hằng số cấu tạo và từ thông kích từ của động cơ
- $R_ư$: Điện trở tổng mạch phần ứng ($\Omega$)
- $M$: Mô-men cản trên trục động cơ ($\text{N}\cdot\text{m}$)
Điện áp trung bình phần ứng được điều chế tuyến tính theo độ rộng xung xung áp $\gamma$: $$U_ư = U_d = \gamma \cdot U_{nguồn} = \frac{t_1}{T_{ck}} \cdot U_{nguồn}$$
Methodology
Dự án triển khai theo mô hình kỹ thuật chữ V (V-Model Development Lifecycle):
- Giai đoạn 1: Mô hình hóa lý thuyết: Xây dựng hàm truyền vòng kín hệ thống điều khiển vị trí/tốc độ; xác định vùng làm việc ổn định trên mặt phẳng phức $s$.
- Giai đoạn 2: Thiết kế phần cứng & Mô phỏng: Thiết kế mạch nguyên lý (Schematic) trên CAD, mô phỏng phản hồi động học trên Proteus VSM.
- Giai đoạn 3: Hiện thực hóa mã nguồn (Coding): Lập trình cấu trúc module ngắt, thuật toán PID rời rạc, chống tràn số, cấu hình phần cứng PWM.
- Giai đoạn 4: Gia công PCB & Đo kiểm thực nghiệm: Chế tạo board mạch in tiêu chuẩn sợi thủy tinh FR-4, hàn linh kiện và đo kiểm đáp ứng xung quá độ trên máy hiện sóng Oscilloscope.
Implementation và kết quả
Development process
Cốt lõi xử lý của đề tài nằm ở việc rời rạc hóa phương trình vi tích phân liên tục của bộ điều khiển PID sang dạng số thực thi trong chu kỳ ngắt thời gian thực $T_s$:
Phương trình vi phân liên tục: $$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]$$
Chuyển đổi sang phương trình sai phân số (Dạng vị trí - Positional Algorithm): $$u(k) = K_p \cdot e(k) + K_i \cdot \sum_{j=0}^{k} e(j) \cdot T_s + K_d \cdot \frac{e(k) - e(k-1)}{T_s}$$
Trong đó:
- $e(k) = r(k) - y(k)$: Sai lệch giữa tốc độ đặt $r(k)$ và tốc độ hồi tiếp $y(k)$ tại chu kỳ lấy mẫu thứ $k$.
- $K_i = \frac{K_p}{T_i}$, $K_d = K_p \cdot T_d$.
Đoạn mã nguồn viết bằng ngôn ngữ C cho PIC16F877A (biên dịch bằng CCS C) hiện thực hóa thuật toán PID có khâu bảo vệ Anti-Windup:
#include <16F877A.h>
#device ADC=10
#use delay(crystal=20000000)
// Khai bao bien toan cuc cho thuat toan PID
float Kp = 2.50, Ki = 0.85, Kd = 0.12;
float Setpoint_RPM = 1000.0;
float Actual_RPM = 0.0;
float error = 0.0, prev_error = 0.0;
float P_term = 0.0, I_term = 0.0, D_term = 0.0;
float PID_output = 0.0;
int16 PWM_duty = 0;
const float Ts = 0.02; // Chu ky lay mau Ts = 20ms
#INT_TIMER1
void Timer1_ISR(void) {
// 1. Doc xung Encoder de tinh toc do Actual_RPM
int16 pulse_count = get_timer0();
set_timer0(0); // Reset bo dem xung
Actual_RPM = (float)(pulse_count * 60) / (PULSES_PER_REV * Ts);
// 2. Tinh toan sai lech
error = Setpoint_RPM - Actual_RPM;
// 3. Tinh toan cac thanh phan PID
P_term = Kp * error;
I_term += Ki * error * Ts;
// Giai thuat Anti-Windup: Gioi han tich luy khau I
if (I_term > 1000.0) I_term = 1000.0;
else if (I_term < -1000.0) I_term = -1000.0;
D_term = Kd * (error - prev_error) / Ts;
prev_error = error;
// 4. Tong hop tin hieu dieu khien
PID_output = P_term + I_term + D_term;
// 5. Chuan hoa tin hieu dieu khien sang Duty Cycle PWM (0 - 1023)
if (PID_output > 1023.0) PID_output = 1023.0;
if (PID_output < 0.0) PID_output = 0.0;
PWM_duty = (int16)PID_output;
set_pwm1_duty(PWM_duty); // Xuat xung dieu khien phan ung
set_timer1(65536 - 25000); // Nap lai gia tri Timer1 dinh thoi 20ms
}
Testing và validation
Hệ thống được tiến hành thử nghiệm nghiệm thu nghiêm ngặt tại các dải tốc độ đặt khác nhau, từ tốc độ thấp ($500\text{ RPM}$) đến tốc độ cao ($2000\text{ RPM}$), đồng thời kiểm tra khả năng phục hồi khi đóng tải đột ngột:
Tốc độ (RPM)
^
| +---+ (Vọt lố sigma < 4.2%)
| / \_________________________ Tốc độ đặt Setpoint (1500 RPM)
| / : :
| / : : (Đóng tải đột ngột tại t = 2.0s)
| / : : _
| / : :____/ \___ e_ss <= 0.8%
| / : :
+---+-----------+-------------------------+--------> Thời gian (s)
|<--ts=0.62s-->|
| Kịch bản kiểm thử | Tốc độ đặt ($r$) | Thời gian đáp ứng ($t_r$) | Thời gian xác lập ($t_s$) | Độ vọt lố ($\sigma%$) | Sai số xác lập ($e_{ss}$) |
|---|---|---|---|---|---|
| Không tải - Tốc độ thấp | $500\text{ RPM}$ | $0.21\text{ s}$ | $0.48\text{ s}$ | $2.1%$ | $0.4%$ |
| Không tải - Định mức | $1200\text{ RPM}$ | $0.28\text{ s}$ | $0.62\text{ s}$ | $3.8%$ | $0.2%$ |
| Đóng tải $50%$ đột ngột | $1200\text{ RPM}$ | Phục hồi sau $0.35\text{ s}$ | $0.75\text{ s}$ | Không dao động | $0.8%$ |
| Không tải - Tốc độ cao | $1800\text{ RPM}$ | $0.32\text{ s}$ | $0.78\text{ s}$ | $4.2%$ | $0.6%$ |
Kết quả đạt được
Hệ thống điều khiển hoàn thiện đáp ứng toàn bộ các chỉ tiêu kỹ thuật đề ra ban đầu:
- Thời gian khởi động và đáp ứng quá độ: Rút ngắn từ $1.8\text{ s}$ (khi chạy luật P thuần túy) xuống còn $0.62\text{ s}$ nhờ bổ sung khâu $D$ đón đầu tốc độ biến thiên sai lệch.
- Triệt tiêu hoàn toàn sai lệch tĩnh: Khâu tích phân $I$ đảm bảo sai số tĩnh $e_{ss} \le 0.8%$ ngay cả khi điện áp nguồn dao động hoặc động cơ mang tải ma sát lớn.
- Giao diện tùy biến trực quan: Cho phép người vận hành thay đổi trực tiếp thông số bộ điều khiển mà không cần biên dịch hay nạp lại phần mềm vi điều khiển.
Đổi mới và đóng góp
- Khả năng cấu hình tham số thời gian thực (On-the-fly Parametric Tuning): Khác biệt hoàn toàn với các mạch điều khiển Analog hay các bộ kit cố định hệ số, hệ thống tích hợp thuật toán phân tích chuỗi ký tự từ bàn phím ma trận, cho phép gán trực tiếp các hệ số $K_p, K_i, K_d$ dạng số thực (floating-point) vào bộ nhớ RAM vi điều khiển ngay trong khi động cơ đang quay.
- Kỹ thuật chống bão hòa khâu tích phân (Anti-Windup Protection): Thiết kế giải thuật giới hạn biên biên độ tích lũy của $I\text{_term}$, ngăn chặn tình trạng tràn biến điều khiển khi hệ thống khởi động hoặc khi tải kẹt cơ khí, giảm thiểu nguy cơ quá dòng phá hỏng tầng công suất.
- Tối ưu hóa tài nguyên vi điều khiển 8-bit: Khai thác tối đa kiến trúc phần cứng của PIC16F877A bằng cách phối hợp Timer0 (đếm xung Encoder ngoài), Timer1 (tạo ngắt lấy mẫu chu kỳ chính xác $20\text{ ms}$) và Module CCP1 (xuất xung PWM phần cứng 10-bit), giải phóng tải tính toán cho CPU thực thi giải thuật toán học.
Ứng dụng thực tế và triển khai
Hệ thống điều khiển PID số trên PIC16F877A có tính tương thích cao và sẵn sàng ứng dụng trong nhiều lĩnh vực sản xuất công nghiệp:
- Hệ thống băng tải phân loại tự động: Đảm bảo tốc độ băng chuyền đồng bộ tuyệt đối với hệ thống camera quét mã vạch dù khối lượng hàng hóa trên băng thay đổi liên tục.
- Trục quay chính máy công cụ CNC mini: Giữ ổn định mô-men và tốc độ cắt gọt khi dao tiếp xúc với các bề mặt phôi có độ cứng không đồng nhất.
- Robot di động và xe tự hành AGV: Kiểm soát chính xác vận tốc 2 bánh chủ động, loại bỏ hiện tượng lệch hướng di chuyển do sai lệch tốc độ giữa hai động cơ.
+-----------------------------------------------------------------------------------+
| LỘ TRÌNH TRIỂN KHAI VÀ THƯƠNG MẠI HÓA (12 THÁNG) |
+-----------------------------------------------------------------------------------+
| Tháng 1 - 3: Tối ưu layout mạch in 2 lớp chuẩn chống nhiễu công nghiệp EMC/EMI |
| Tháng 4 - 6: Bổ sung cách ly quang Optocoupler tốc độ cao và chuẩn Modbus RS-485 |
| Tháng 7 - 9: Thử nghiệm thực địa tại xưởng cơ khí chế tạo và băng tải đóng gói |
| Tháng 10-12: Hoàn thiện tài liệu SDK và đóng gói sản phẩm module Drive thương mại |
+-----------------------------------------------------------------------------------+
Phân tích hiệu quả kinh tế (ROI): Chi phí linh kiện chế tạo module điều khiển PID số sử dụng PIC16F877A ước tính chỉ bằng 25% - 30% so với giá thành của các bộ Servo Driver hoặc Biến tần DC nhập khẩu từ châu Âu/Nhật Bản, mang lại điểm hòa vốn đầu tư cho doanh nghiệp vừa và nhỏ trong vòng chưa đầy 6 tháng vận hành.
Hạn chế và hướng phát triển
Mặc dù đồ án đạt được các mục tiêu kỹ thuật then chốt, một số hạn chế vẫn tồn tại do giới hạn tài nguyên phần cứng:
- Năng lực tính toán của kiến trúc 8-bit: Xử lý phép tính số thực dấu phẩy động (float) trên PIC16F877A chiếm dụng nhiều chu kỳ máy, giới hạn tần số lấy mẫu nhỏ nhất ở mức $10\text{ ms}$.
- Bộ điều chỉnh thông số thụ động: Người vận hành vẫn phải trực tiếp xác định bộ thông số $K_p, K_i, K_d$ thông qua phương pháp thực nghiệm hoặc Ziegler-Nichols thay vì hệ thống tự nhận dạng đối tượng.
Hướng phát triển tương lai:
- Nâng cấp vi điều khiển trung tâm lên dòng vi xử lý 32-bit ARM Cortex-M4 (STM32F4 series) có bộ xử lý toán học FPU phần cứng để đẩy tần số lấy mẫu lên $1\text{ kHz} - 10\text{ kHz}$.
- Ứng dụng giải thuật điều khiển mờ (Fuzzy Logic Controller) kết hợp PID thích nghi (Fuzzy-PID Auto Tuning) để tự động hiệu chỉnh thông số khi hệ thống vận hành.
Đối tượng hưởng lợi
- Sinh viên ngành Kỹ thuật Điện - Tự động hóa: Cung cấp tài liệu tham khảo hoàn chỉnh từ mô hình toán học, thiết kế sơ đồ mạch in đến thuật toán lập trình nhúng vi điều khiển thực tế.
- Kỹ sư phát triển hệ thống nhúng (Embedded R&D): Nắm bắt phương pháp chuyển đổi giải thuật điều khiển liên tục sang rời rạc hóa và kỹ thuật chống bão hòa tích phân trên vi xử lý tài nguyên hạn chế.
- Doanh nghiệp vừa và nhỏ: Tiếp cận giải pháp truyền động nội địa hóa giá thành thấp, dễ bảo trì, làm chủ hoàn toàn công nghệ điều khiển động cơ DC.
- Nhà nghiên cứu lý thuyết điều khiển: Dữ liệu thực nghiệm thực tế hỗ trợ kiểm chứng tính chính xác của các mô hình toán học mô phỏng.
Câu hỏi thường gặp
1. Cần chuẩn bị cấu hình phần cứng tối thiểu nào để nạp và vận hành hệ thống?
Để triển khai hệ thống, cần chuẩn bị: mạch vi điều khiển PIC16F877A kèm thạch anh $20\text{ MHz}$, mạch nạp PICkit 2/3, nguồn cấp kép $5\text{V DC}$ (cho mạch logic) và $12\text{V} - 24\text{V DC}$ (cho mạch động lực), mạch cầu H công suất dòng tối thiểu $5\text{A}$, động cơ DC có Encoder quang học tích hợp sẵn, màn hình LCD 16x2 và bàn phím ma trận $4\times 4$.
2. Hiện tượng Integral Windup xảy ra như thế nào và cách hệ thống xử lý?
Khi sai lệch $e(t)$ tồn tại kéo dài (ví dụ khi khởi động hoặc kẹt tải), thành phần tích phân $I\text{_term}$ liên tục cộng dồn khiến tín hiệu điều khiển vượt xa giới hạn bão hòa của mạch công suất ($100%$ PWM). Khi tốc độ đạt điểm đặt, khâu tích phân mất nhiều thời gian để xả điện áp tích lũy, gây vọt lố nghiêm trọng. Hệ thống xử lý bằng giải thuật Anti-Windup kẹp cứng giá trị $I\text{_term}$ trong ngưỡng an toàn $[-1000, 1000]$.
3. Hệ thống có thể tích hợp vào các mạng truyền thông công nghiệp sẵn có không?
Vi điều khiển PIC16F877A tích hợp sẵn module phần cứng USART (chân RC6/TX và RC7/RX). Bằng cách gắn thêm IC chuyển đổi MAX485 hoặc MAX232, bộ điều khiển hoàn toàn có thể truyền nhận dữ liệu tốc độ và trạng thái với máy tính trung tâm (SCADA) hoặc PLC thông qua giao thức chuẩn công nghiệp Modbus RTU.
4. Tại sao cần sử dụng ngắt Timer để tính toán PID thay vì vòng lặp vô tận (while loop)?
Thuật toán PID số bắt buộc phải được tính toán với chu kỳ lấy mẫu $T_s$ hoàn toàn cố định và chính xác tuyệt đối. Nếu đặt trong vòng lặp while(1), thời gian thực thi sẽ bị biến thiên tùy theo số lượng câu lệnh điều kiện và xử lý hiển thị LCD, dẫn đến sai lệch nghiêm trọng trong tính toán đạo hàm ($\Delta e / \Delta t$) và tích phân ($\sum e \cdot \Delta t$).
5. Chi phí chế tạo trọn bộ mô hình là bao nhiêu và thời gian hoàn vốn (ROI)?
Tổng chi phí linh kiện phần cứng (MCU, board mạch in, màn hình LCD, bàn phím, tầng công suất MOSFET và Encoder) dao động khoảng 600.000 – 900.000 VNĐ. So với việc mua một bộ DC Drive thương mại công nghiệp có giá từ 3.000.000 – 5.000.000 VNĐ, giải pháp tự thiết kế giúp tiết kiệm tới 75% chi phí đầu tư ban đầu.
Kết luận
Đồ án tốt nghiệp "Thiết kế, chế tạo bộ điều chỉnh loại PID cho phép điều chỉnh các hệ số khuyếch đại và hằng số thời gian" đã chứng minh tính hiệu quả vượt trội của việc số hóa thuật toán điều khiển kinh điển trên nền tảng vi điều khiển PIC16F877A. Việc kết hợp thành công giữa giải thuật PID số có chống bão hòa tích phân, phần cứng công suất PWM và giao diện cấu hình trực tiếp đã tạo ra một hệ truyền động DC vòng kín có độ chính xác cao, sai số xác lập dưới $1%$, độ ổn định vượt trội trước các nhiễu loạn cơ khí. Đây không chỉ là tài liệu tham khảo kỹ thuật giá trị cho sinh viên và kỹ sư ngành Tự động hóa mà còn là giải pháp có khả năng ứng dụng thực tiễn cao trong việc nâng cấp, hiện đại hóa các dây chuyền sản xuất công nghiệp hiện nay.