Tính toán các thông số không khí ẩm trong lập trình PLC

Trong các hệ thống điều khiển công nghiệp và HVAC, việc xác định chính xác điểm sương, độ ẩm tuyệt đối và enthalpy của không khí là yêu cầu thiết yếu. Các thuật toán này có thể được triển khai hiệu quả trên PLC bằng cả ngôn ngữ LAD (Ladder Logic) và SCL (Structured Control Language).

Tính điểm sương

Điểm sương là nhiệt độ mà tại đó hơi nước trong không khí bắt đầu ngưng tụ thành dạng lỏng dưới áp suất không đổi.

// Biến đầu vào/ra
VAR_INPUT
    t_air : REAL;   // Nhiệt độ không khí (°C)
    rh_pct : REAL;  // Độ ẩm tương đối (%)
END_VAR
VAR_OUTPUT
    t_dew : REAL;   // Điểm sương (°C)
END_VAR

// Hằng số và biến trung gian
VAR_TEMP
    alpha : REAL := 17.27;
    beta  : REAL := 237.7;
    gamma : REAL;
END_VAR

// Tính toán
gamma := (alpha * t_air) / (beta + t_air) + LN(rh_pct * 0.01);
t_dew := (beta * gamma) / (alpha - gamma);

Thuật toán sử dụng phương trình Magnus-Tetens để suy ra điểm sương từ nhiệt độ và độ ẩm tương đối. Trong sơ đồ thang, từng phép toán (nhân, chia, logarit tự nhiên) sẽ được thực hiện tuần tự qua các khối lệnh toán học.

Tính tỷ lệ ẩm (độ ẩm tuyệt đối)

Đại lượng này biểu thị khối lượng hơi nước (kg) chứa trong mỗi kg không khí khô.

VAR_INPUT
    p_total : REAL;  // Áp suất khí quyển (kPa)
    t_air   : REAL;
    rh_pct  : REAL;
END_VAR
VAR_OUTPUT
    w_ratio : REAL;  // Tỷ lệ ẩm (kg/kg_kk)
END_VAR

VAR_TEMP
    p_sat : REAL;
END_VAR

p_sat := 6.112 * EXP( (17.67 * t_air) / (t_air + 243.5) );
w_ratio := 0.622 * (rh_pct * 0.01 * p_sat) / (p_total - rh_pct * 0.01 * p_sat);

Giá trị áp suất bão hòa p_sat được tính trước, sau đó dùng để suy ra tỷ lệ ẩm. Trên sơ đồ thang, cần đảm bảo thứ tự thực hiện: tính mũ → nhân → chia → trừ → nhân → chia.

Tính enthalpy không khí

Enthalpy phản ánh tổng năng lượng nhiệt (hiển nhiệt + tiềm nhiệt) của hỗn hợp không khí ẩm.

VAR_INPUT
    t_air   : REAL;  // Nhiệt độ (°C)
    w_ratio : REAL;  // Tỷ lệ ẩm (kg/kg_kk)
END_VAR
VAR_OUTPUT
    h_value : REAL;  // Enthalpy (kJ/kg)
END_VAR

h_value := (1.006 * t_air) + w_ratio * (2501.0 + 1.84 * t_air);

Công thức chia thành hai phần: phần đầu là năng lượng làm nóng không khí khô, phần sau là năng lượng làm nóng và hóa hơi nước. Trong LAD, có thể tách riêng hai nhánh tính toán rồi cộng kết quả.

Đóng gói thành Function Block

Mỗi thuật toán nên được đóng gói thành một khối chức năng độc lập để dễ tái sử dụng:

  • FB_DewPoint — nhận nhiệt độ và RH, trả về điểm sương
  • FB_MoistureRatio — nhận áp suất, nhiệt độ, RH, trả về tỷ lệ ẩm
  • FB_AirEnthalpy — nhận nhiệt độ và tỷ lệ ẩm, trả về enthalpy

Ví dụ gọi trong chương trình chính:

FB_DewPoint(
    t_in  := sensor_temp,
    rh_in := sensor_rh,
    t_out => dewpoint_result
);

Cách tổ chức này giúp mã nguồn dễ bảo trì, kiểm thử và tích hợp vào nhiều dự án khác nhau mà không cần viết lại logic tính toán.

Thẻ: PLC SCL LAD HVAC thông_số_không_khí

Đăng vào ngày 9 tháng 6 lúc 20:57