Giới thiệu dự án

Trong kỷ nguyên công nghiệp 4.0 và gia công cơ khí chính xác, máy công cụ điều khiển số (Computer Numerical Control - CNC) đóng vai trò nền tảng trong chuỗi sản xuất hiện đại. Theo các báo cáo công nghiệp sản xuất toàn cầu, việc tối ưu hóa độ chính xác động học và thời gian đáp ứng của hệ thống chạy dao CNC giúp tăng năng suất gia công từ 25% đến 40% và giảm tỷ lệ phế phẩm do sai số biên dạng xuống dưới 1.5%. Đồ án "Thiết kế hệ thống điều khiển bàn máy CNC theo trục X-Y" do sinh viên Nguyễn Xuân Thắng thực hiện dưới sự hướng dẫn của TS. Hoàng Sỹ Tuấn (Viện Cơ khí - Đại học Bách Khoa Hà Nội) tập trung giải quyết bài toán cốt lõi: mô hình hóa toán học, phân tích động lực học và thiết kế thuật toán điều khiển vị trí hồi tiếp vòng kín cho bàn máy phay CNC 2 trục.

+-----------------------------------------------------------------------------------+
|                              HỆ THỐNG ĐIỀU KHIỂN CNC                              |
|                                                                                   |
|  +--------------------+     +---------------------+     +----------------------+  |
|  |     Giao diện      | --> |    Lõi điều khiển   | --> |     Bộ điều khiển    |  |
|  |     người-máy      |     |       số NCK        |     |      logic PLC       |  |
|  |       (MMI)        |     |  (DDA Interpolator) |     |    (IEC 61131-3)     |  |
|  +--------------------+     +---------------------+     +----------------------+  |
|                                        |                                          |
|                                        v                                          |
|  +--------------------+     +---------------------+     +----------------------+  |
|  |     Bàn máy X-Y    | <-- |     Động cơ &       | <-- |       Bộ driver      |  |
|  |   (Vít me bi PMI,  |     |   Encoder quang     |     |       AC Servo       |  |
|  |    Bàn 440-680kg)  |     |  (Hồi tiếp vị trí)  |     |       (DA180)        |  |
|  +--------------------+     +---------------------+     +----------------------+  |
+-----------------------------------------------------------------------------------+

Vấn đề thực tiễn (Problem Statement)

Các hệ thống máy công cụ truyền thống hoặc hệ thống điều khiển vòng hở sử dụng động cơ bước thường xuyên gặp phải hiện tượng trượt bước, dao động cơ học khi đảo chiều, và sai số vị trí lớn khi tải trọng cắt thay đổi đột ngột (lực cắt cản phay mặt đầu đối với thép S45C/SUS440C lên tới hàng ngàn Newton). Bên cạnh đó, quán tính của cụm bàn máy và phôi rất lớn ($M_X = 440\text{ kg}$, $M_Y = 680\text{ kg}$), dẫn đến hiện tượng vọt lố (overshoot) vượt quá 30% nếu không có thuật toán điều khiển bù trừ sai số động học.

Mục tiêu dự án

  1. Xây dựng mô hình toán học động lực học cho hệ dẫn động 2 trục X-Y có xét đến độ cứng đàn hồi tổng hợp của trục vít me bi PMI, khớp nối mềm Sungil, ổ chặn SKF và đai ốc bi.
  2. Khảo sát tính ổn định của hệ thống điều khiển hở và kín thông qua tiêu chuẩn Routh-Hurwitz, biểu đồ Nyquist và đồ thị Bode trên nền tảng MATLAB & Simulink.
  3. Thiết kế bộ điều khiển phản hồi PID tối ưu hóa theo phương pháp thực nghiệm Ziegler-Nichols kết hợp tinh chỉnh tự động (Auto-tuning) nhằm triệt tiêu sai số xác lập và khống chế độ vọt lố $\alpha_{max} \le 2%$.
  4. Xây dựng thuật toán nội suy quỹ đạo DDA (Digital Differential Analyzer) cho chuyển động thẳng và chuyển động tròn đồng bộ 2 trục X-Y.

Giải pháp và Phạm vi

  • Giải pháp: Ứng dụng cấu trúc điều khiển vòng kín (Closed-loop control) sử dụng động cơ AC Servo kết hợp bộ truyền động Driver DA180, phản hồi trực tiếp bằng bộ mã hóa xung quang học (Optical Rotary Encoder/Linear Scale) độ phân giải cao sai số $\pm 5\mu\text{m/m}$.
  • Phạm vi: Nghiên cứu tập trung vào động học và điều khiển bàn máy 2 trục X-Y của máy phay CNC chuyên dụng, vận tốc chạy dao không cắt $V_1 = 18 - 25\text{ m/ph}$, vận tốc cắt $V_2 = 10 - 15\text{ m/ph}$, gia tốc cực đại $a_{max} = 0.4g - 0.5g\text{ m/s}^2$.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Trong kỹ thuật điều khiển chuyển động CNC, có 4 kiến trúc điều khiển chính:

Tiêu chí Điều khiển vòng hở (Open Loop) Điều khiển nửa kín (Semi-Closed Loop) Điều khiển vòng kín (Closed Loop) Điều khiển hỗn hợp (Hybrid Loop)
Cảm biến vị trí Không sử dụng Encoder gắn đuôi trục động cơ Thước quang (Linear Scale) gắn bàn máy Kết hợp Encoder động cơ & Thước quang
Độ chính xác Thấp ($> 0.05\text{ mm}$) Trung bình ($\approx 0.01 - 0.02\text{ mm}$) Cao ($< 0.005\text{ mm}$) Cực cao ($< 0.001\text{ mm}$)
Khả năng bù sai số cơ khí Không có Bù khe hở (Backlash) cố định Tự động khử sai số vít me, nhiệt, biến dạng Khử toàn diện sai số động & tĩnh
Độ ổn định điều khiển Rất cao (không phản hồi) Cao Trung bình (dễ rung do cộng hưởng cơ khí) Cần bộ lọc phức tạp
Chi phí triển khai Rất thấp Trung bình Khá cao Rất cao

Ma trận ưu tiên yêu cầu kỹ thuật (MoSCoW):

  • Must have: Hàm truyền đạt $G(s)$ chính xác cho trục X/Y; Bộ điều khiển PID triệt tiêu sai lệch tĩnh ($e_{ss} \to 0$); Khống chế độ vọt lố $\le 2%$.
  • Should have: Thuật toán nội suy DDA tuyến tính và cung tròn; Cơ chế bù sai số trễ vận tốc.
  • Could have: Khối mô phỏng 3D tích hợp quỹ đạo cắt phay thực tế.
  • Won't have: Bù phi tuyến ma sát Stribeck phức tạp ở dải vận tốc siêu chậm ($< 0.001\text{ m/ph}$).

Thiết kế hệ thống

Kiến trúc hệ thống điều khiển bàn máy CNC gồm 3 tầng chức năng:

  1. Giao diện người - máy (MMI - Man-Machine Interface): Quản lý chương trình gia công G-code (theo chuẩn EIA/ISO), thiết lập tham số máy, hiển thị tọa độ thực và cảnh báo trạng thái.
  2. Lõi điều khiển số (NCK - Numerical Control Kernel): Trình thông dịch mã lệnh (Interpreter), khối đệm FIFO, bộ phát quỹ đạo nội suy DDA, và khâu điều khiển tăng/giảm tốc (Acc/Dec profile) trước/sau nội suy.
  3. Tầng chấp hành và phản hồi: PLC (chuẩn IEC 61131-3) kết nối Dual-port RAM điều khiển logic phụ trợ, Servo Driver DA180 điều khiển động cơ AC Servo qua PWM và nhận tín hiệu hồi tiếp Quadrature từ Encoder quang học.
                      SƠ ĐỒ HỆ DẪN ĐỘNG TRỤC X/Y
                      
   +-------------+       +-------------+       +-------------+
   |   Động cơ   | ----> |  Khớp nối   | ----> | Vít me bi   |
   |  AC Servo   | <---  |   Sungil    |       |     PMI     |
   +-------------+       +-------------+       +-------------+
          ^                     |                     |
          | Encoder             v                     v
          +----------- [ Ổ đỡ chặn SKF ]      [ Bàn máy X/Y ]
                                              (Tải: 440-680kg)

Phương pháp nghiên cứu (Methodology)

  1. Mô hình hóa thông số tập trung (Lumped Parameter Modeling): Thiết lập phương trình vi phân vi mô mô tả dao động dọc trục: $$M\ddot{x}(t) + b\dot{x}(t) + kx(t) = F_{dc}(t)$$ Trong đó lực kéo do động cơ sinh ra qua trục vít me bi có bước $l$ là: $$F_{dc}(t) = k \cdot \frac{\theta(t) \cdot l}{2\pi}$$ Độ cứng tổng hợp $k$ của hệ thống được tính bằng công thức ghép nối tiếp: $$\frac{1}{k} = \frac{1}{k_c} + \frac{1}{k_b} + \frac{1}{k_s} + \frac{1}{k_n}$$ (Với $k_c$: khớp nối Sungil, $k_b$: ổ chặn SKF, $k_s$: trục vít me $A \cdot E / L \cdot 10^{-3}$, $k_n$: đai ốc bi PMI).
  2. Hệ số cản nhớt: $b = 2\varepsilon\sqrt{kM}$ với hệ số suy giảm quy ước $\varepsilon = 0.35$.
  3. Hàm truyền đạt vị trí của hệ thống hở: $$G(s) = \frac{X(s)}{\theta(s)} = \frac{\frac{k \cdot l}{2\pi}}{Ms^2 + bs + k}$$

Implementation và kết quả

Quá trình phát triển và Tính toán hàm truyền

Thay thế các thông số hình học và cơ tính từ catalog (khối lượng bàn $M_X = 440\text{ kg}, M_Y = 680\text{ kg}$, bước vít $l = 10\text{ mm}$):

  • Hàm truyền trục X: $$G_X(s) = \frac{X(s)}{\theta(s)} = \frac{106.47}{440s^2 + 4004.96s + 669000} = \frac{0.242}{s^2 + 9.102s + 1520.45}$$
  • Hàm truyền trục Y: $$G_Y(s) = \frac{Y(s)}{\theta(s)} = \frac{106.68}{680s^2 + 4485.6s + 500000} = \frac{0.157}{s^2 + 6.596s + 735.29}$$
% Script MATLAB R2021b: Khảo sát ổn định và Thiết kế PID trục X
num_X = 106.47;
den_X = [440, 4004.96, 669000];
Gx = tf(num_X, den_X);

% Kiểm tra nghiệm cực (Routh-Hurwitz)
poles_X = roots(den_X); % s1,2 = -4.5511 +/- 38.726i (Nửa trái mặt phẳng phức)

% Khảo sát Nyquist và Bode
figure; nyquist(Gx); grid on;
figure; bode(Gx); grid on;

% Cấu hình bộ điều khiển PID
% Cấu trúc: C(s) = Kp * (1 + 1/(Ti*s) + Td*s)
Kp_X = 185.4;
Ki_X = 42.1;
Kd_X = 12.8;
C_pid_X = pid(Kp_X, Ki_X, Kd_X);

% Hệ kín phản hồi âm đơn vị
sys_cl_X = feedback(C_pid_X * Gx, 1);
step(sys_cl_X);
           SƠ ĐỒ KHỐI ĐIỀU KHIỂN HỒI TIẾP VÒNG KÍN TRỤC X
           
  Vị trí đặt           Sai lệch e(t)        Tín hiệu u(t)        Vị trí thực
  X_ref(s)    +     +-----------------+     +-------------+      X(s)
 ----------->( + )->|  Bộ điều khiển  |---->| Hàm truyền  |----+---->
              ^ -   |     PID R(s)    |     |  Trục Gx(s) |    |
              |     +-----------------+     +-------------+    |
              |                                                |
              +------------------------------------------------+
                                Hồi tiếp vị trí

Thuật toán nội suy số học DDA (Digital Differential Analyzer)

Để điều khiển chạy dao đồng thời trục X và Y từ điểm $A(x_A, y_A)$ đến $E(x_E, y_E)$ với tốc độ không đổi $u$:

  • Thời gian chạy dao tổng: $T = \frac{L}{u} = \frac{\sqrt{(x_E-x_A)^2 + (y_E-y_A)^2}}{u}$
  • Tọa độ tức thời tại chu kỳ trích mẫu thứ $k$: $$x(k) = x_A + \sum_{i=1}^{k} v_x \cdot \Delta t = x_A + \sum_{i=1}^{k} \frac{x_E - x_A}{T} \cdot \Delta t$$ $$y(k) = y_A + \sum_{i=1}^{k} v_y \cdot \Delta t = y_A + \sum_{i=1}^{k} \frac{y_E - y_A}{T} \cdot \Delta t$$
// Thuật toán nội suy tuyến tính DDA thời gian thực cho bàn CNC
void DDA_Linear_Interpolate(double xA, double yA, double xE, double yE, double feedrate_u, double dt) {
    double L = sqrt(pow(xE - xA, 2) + pow(yE - yA, 2));
    double T = L / feedrate_u;
    double vx = (xE - xA) / T;
    double vy = (yE - yA) / T;
    
    double current_x = xA;
    double current_y = yA;
    double t = 0.0;
    
    while (t <= T) {
        current_x += vx * dt;
        current_y += vy * dt;
        Set_Motor_Position(current_x, current_y); // Xuất lệnh điều khiển vị trí
        t += dt;
    }
}

Kết quả đo kiểm và Đánh giá chất lượng động học

Chỉ số đánh giá Hệ thống hở (Chưa có PID) Hệ kín tinh chỉnh PID (Trục X) Hệ kín tinh chỉnh PID (Trục Y) Yêu cầu kỹ thuật đồ án
Phần thực điểm cực ($s$) $-4.55$ (Trục X) / $-3.29$ (Trục Y) Nằm sâu bên trái mặt phẳng phức Nằm sâu bên trái mặt phẳng phức $\text{Re}(s) < 0$ (Ổn định)
Độ vọt lố ($\alpha_{max}$ / Overshoot) $30.277%$ (Trục X) / $30.331%$ (Trục Y) $0.78%$ $0.642%$ $\le 2.0%$
Thời gian đáp ứng ($T_{rise}$) $0.21\text{ s}$ (Dao động tắt chậm) $0.12\text{ s}$ $0.15\text{ s}$ Tối ưu hóa ($< 0.3\text{ s}$)
Thời gian xác lập ($T_{settling}$) $> 2.5\text{ s}$ $0.41\text{ s}$ $0.472\text{ s}$ Nhanh, không rung lắc
Sai số xác lập tĩnh ($e_{ss}$) Không bám đầu vào ($e_{ss} \ne 0$) $0.000\text{ mm}$ $0.000\text{ mm}$ Triệt tiêu hoàn toàn

Đổi mới và đóng góp

  1. Tích hợp mô hình đàn hồi cơ - điện hoàn chỉnh: Khác với các mô hình điều khiển quy ước giả định cơ cấu truyền động là vật rắn tuyệt đối, đồ án đã tính toán chi tiết độ mềm tổng hợp của 4 cụm chi tiết cơ khí (khớp nối, ổ bi đỡ chặn, trục vít me và đai ốc bi PMI), loại bỏ hiện tượng sai số tích lũy bước vít.
  2. Triệt tiêu dao động cơ học bậc cao: Nhờ khâu vi phân ($K_D$) và tích phân ($K_I$) được tối ưu hóa qua phương pháp Ziegler-Nichols kết hợp đồ thị Bode/Nyquist, độ vọt lố giảm từ $30.28%$ xuống còn $0.78%$ (giảm 97.4% biên độ dao động thừa), loại trừ triệt để nguy cơ sứt mẻ dao phay hợp kim khi tiếp xúc chi tiết ở tốc độ cao.
  3. Thuật toán DDA cải tiến: Triển khai giải thuật DDA cho cả cung tròn ngược và xuôi chiều kim đồng hồ (G02/G03), đảm bảo sai số bán kính khi gia công biên dạng cong luôn nhỏ hơn $3\mu\text{m}$.

Ứng dụng thực tế và triển khai

Tình huống ứng dụng thực tế

  • Nâng cấp (Retrofit) máy công cụ truyền thống: Chuyển đổi các dòng máy phay vạn năng cũ (như 6H82, 6P12) thành máy phay CNC 2 trục hoặc 3 trục với chi phí chỉ bằng 30-35% so với mua máy CNC nguyên chiếc mới.
  • Ứng dụng trong máy gia công tia lửa điện (EDM) & Cắt Laser: Tận dụng tính ổn định cao và đáp ứng bước mượt mà của bàn máy X-Y để đảm bảo khoảng cách khe hở phóng điện hoặc tiêu cự chùm tia laser liên tục.
                      MÔ HÌNH TRIỂN KHAI PHẦN CỨNG
                      
  +-----------------------+              +-----------------------+
  |   IPC / Bộ điều khiển |  Pulse/Dir   |   Bộ Driver AC Servo  |
  |      trung tâm        | -----------> |      Inovance DA180   |
  |  (Chạy nhân NCK/PLC)  |              +-----------------------+
  +-----------------------+                          |
              ^                                      v
              | Cáp Encoder          +-------------------------------+
              +--------------------- | Động cơ AC Servo + Cụm bàn X/Y|
                                     +-------------------------------+

Đánh giá hiệu quả kinh tế và Chi phí đầu tư (ROI)

  • Chi phí dự toán: Bộ điều khiển Driver AC Servo DA180 + Động cơ ($15 - 20\text{ triệu VNĐ/trục}$), Trục vít me bi PMI cấp chính xác C5 ($8 - 12\text{ triệu VNĐ}$), Cảm biến và mạch giao tiếp ($5\text{ triệu VNĐ}$). Tổng chi phí nâng cấp 2 trục X-Y dao động khoảng $45 - 60\text{ triệu VNĐ}$.
  • Thời gian hoàn vốn: Năng suất tăng 35%, giảm thời gian căn chỉnh gá đặt bằng tay, thời gian hoàn vốn đầu tư ước tính từ 6 đến 9 tháng trong môi trường sản xuất gia công phụ tùng xe máy/khuôn mẫu nhỏ.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật

  • Chưa tích hợp thuật toán bù trừ phi tuyến ma sát động (Stribeck effect) và hiện tượng dính trượt (Stick-slip) khi bàn máy chuyển động ở dải vận tốc cực thấp.
  • Mô hình chưa xét đến hiện tượng giãn nở nhiệt của trục vít me bi khi máy vận hành liên tục 3 ca/ngày.

Hướng phát triển tiếp theo

  • Nghiên cứu ứng dụng Bộ điều khiển trượt thích nghi (Adaptive Sliding Mode Control - SMC) hoặc Bộ điều khiển chéo trục (Cross-Coupling Controller - CCC) để bù sai số biên dạng thời gian thực khi gia công các đường cong phức tạp.
  • Triển khai thuật toán DDA và bộ điều khiển PID trực tiếp trên phần cứng vi xử lý ARM Cortex-M7 hoặc chip FPGA nhằm tăng tần số lấy mẫu điều khiển vị trí lên trên $10\text{ kHz}$.

Đối tượng hưởng lợi

  • Sinh viên ngành Cơ điện tử / Tự động hóa: Cung cấp tài liệu mẫu mực về phương pháp xây dựng hàm truyền hệ cơ điện thực tế và quy trình chuẩn khảo sát ổn định hệ thống trên MATLAB.
  • Kỹ sư R&D và Nhà chế tạo máy: Nắm vững công thức xác định độ cứng đàn hồi tổng hợp để lựa chọn thông số động cơ Servo, bước vít me và gối đỡ bi tối ưu.
  • Doanh nghiệp gia công cơ khí vừa và nhỏ: Có cơ sở kỹ thuật tin cậy để triển khai các dự án số hóa, nội địa hóa thiết bị công nghệ cao với chi phí cạnh tranh.

Câu hỏi thường gặp (FAQ)

1. Yêu cầu kỹ thuật phần cứng tối thiểu để triển khai hệ thống này là gì?

Hệ thống đòi hỏi nguồn cấp 3 pha $220\text{V}/380\text{V}$ cho Servo Driver DA180, bộ điều khiển trung tâm (PLC hoặc IPC) hỗ trợ phát xung tần số tối thiểu $200\text{ kHz}$ (dạng Line Driver Pulse/Direction), và động cơ AC Servo có gắn sẵn Encoder phân giải từ 2500 xung/vòng (tương đương 10000 xung/vòng sau nhân 4).

2. Tại sao đồ án không sử dụng động cơ bước (Stepper Motor) để tiết kiệm chi phí?

Động cơ bước hoạt động theo nguyên lý vòng hở, không có phản hồi góc quay thực tế. Với bàn máy có khối lượng tải lớn ($440 - 680\text{ kg}$) và lực cắt phay lớn, động cơ bước rất dễ bị mất bước (stall), gây hỏng chi tiết gia công và không đảm bảo yêu cầu độ chính xác $< 0.01\text{ mm}$.

3. Làm thế nào để loại bỏ hiện tượng rung cơ học khi máy đảo chiều chuyển động?

Hiện tượng này được khắc phục bằng cách thiết lập khâu vi phân ($K_D$) thích hợp trong bộ điều khiển PID nhằm tạo mô-men hãm dập tắt dao động, kết hợp cấu hình thời gian tăng/giảm tốc mềm (S-curve Acc/Dec profile) trong lõi NCK trước khi truyền xung tới driver.

4. Hệ thống giao tiếp giữa PLC và lõi NCK hoạt động như thế nào?

Theo chuẩn thiết kế hệ CNC công nghiệp, NCK và PLC trao đổi dữ liệu thông qua bộ nhớ chia sẻ hai cổng (Dual-port RAM) tốc độ cao. PLC quản lý các tín hiệu số I/O an toàn (công tắc hành trình limit switches, bôi trơn, kẹp phôi), trong khi NCK độc quyền xử lý các vòng lặp vị trí và nội suy DDA.

5. Tiêu chuẩn nào được áp dụng để lập trình chương trình gia công cho hệ thống?

Hệ thống tuân thủ tiêu chuẩn quốc tế ISO 6983 (EIA RS-274-D) về mã lệnh G-code/M-code, cho phép tương thích hoàn toàn với các phần mềm CAD/CAM phổ biến như Mastercam, NX, SolidCAM, Fusion 360.


Kết luận

Đồ án "Thiết kế hệ thống điều khiển bàn máy CNC theo trục X-Y" của tác giả Nguyễn Xuân Thắng đã hoàn thành xuất sắc các nội dung khoa học và ứng dụng cốt lõi của chuyên ngành Cơ điện tử. Bằng việc kết hợp chặt chẽ giữa mô hình hóa cơ học chính xác, lý thuyết điều khiển tự động kinh điển và mô phỏng số trên MATLAB/Simulink, đề tài đã đưa ra giải pháp điều khiển vòng kín có độ tin cậy cao, kiểm soát độ vọt lố dưới $0.78%$ và thời gian xác lập nhanh chóng dưới $0.5\text{s}$. Đây là cơ sở khoa học và thực tiễn vững chắc phục vụ công tác giảng dạy, nghiên cứu chuyên sâu cũng như ứng dụng trực tiếp vào sản xuất công nghiệp tại Việt Nam.