16制冷系统台架

蒸气压缩循环 + 工况输入 + 与 FOC 闭环耦合

本模块主旨
把 P-h 4 状态点 + EEV 过热度控制 + 系统故障特征 + APF 标定串成压缩机变频器的完整工程闭环。

学完应能回答

查看完整 Walkthrough(9 步 + 5 误区)

总览
制冷台架是电机控制工程师最常忽略也最容易被反咬的领域:电机做得多稳都救不了循环本身。掌握 P-h 图 + COP 推导,能让你和系统工程师同频沟通,也能在客户投诉面前一眼看出问题在系统侧还是电机侧。

零基础速入

类比
电机和算法做得再好,最后用户感受到的是"压缩机吹出来的冷风够不够冷、耗电多不多"。这一节把整个制冷系统拉进来——给定室外/室内温度、蒸发/冷凝温度,模拟蒸气压缩循环,看真实的吸排气压力、流量、COP,反过来印证电机需要多大的 Iq。
核心概念
蒸气压缩制冷四步走:① 压缩机把低压气压缩成高压高温气;② 冷凝器把热放给室外;③ 膨胀阀让高压液降到低压两相;④ 蒸发器从室内吸热回到低压气。压差由 T_e/T_c 决定,压差越大 → 压缩功越大 → 电机 Iq 越大、COP 越低。

为什么要学

第一手操作
调蒸发温度 T_e 从 5℃→12℃,看吸气压力如何变化、COP 怎么涨——这是夏天空调"温和模式"和"强劲模式"的真实切换。

学习目标

核心概念

公式

压力-温度对应(Antoine 简化)
ln(P_MPa) = A - B/T_K

A、B 是制冷剂常数。本仿真三种制冷剂的 (A, B):R-32 (8.515, 2382)、R-410A (8.474, 2376)、R-134a (8.505, 2658)。

多变压缩排气温度
T_d = T_s · (P_d/P_s)^((n-1)/n)

n = 多变指数。R-32 取 1.20,R-410A 取 1.18,R-134a 取 1.13。压缩比每翻倍,排气温度涨 ~30%。

容积效率
η_v = 1 - C·((P_d/P_s)^(1/n) - 1)

C 是余隙比,常见 3-8%。压比 5 时容积效率从 95% 跌到 70%。

质量流量
m_dot = ρ_1 · V_disp · η_v · N

ρ_1 是吸气密度(与 T_e 强相关),V_disp 是排量 (m³),N 是转速 (rps)。

COP 与电流耦合
τ = W_comp/ω, Iq = τ / (1.5·Pp·ψ_f)

系统侧算出 W_comp → 机械扭矩 τ,反推 FOC 需要的 Iq。这是闭环耦合的桥梁。

工程意义

STM32 移植指南

常见误区

  • 凭电流大小判断工况,忽略 EEV 是否开够。EEV 卡死小开度时 Iq 会偏大但其实是循环堵塞。
  • EEV 反馈环用蒸发出口温度而不是过热度。一旦 P_s 漂了,温度就没意义。
  • 冷凝风机停转后还在催高频,结果 P_d 飙升触发高压保护。需要先降频再停机。
  • 工况-频率表只标定常温,极端高温(>40℃)和低温(<-5℃)外推会爆。

调试方法

建议实验

STM32 C 代码骨架

/* ============================================
 * 工况采集 + 压缩机变频器主循环(简化)
 * ============================================ */

typedef struct {
    float Te_C, Tc_C;          /* 由饱和压力反算 */
    float Ps_MPa, Pd_MPa;      /* 直读传感器 */
    float Tsuct_C, Tdisch_C;   /* NTC */
    float SH_K, SC_K;          /* 派生 */
    float T_outdoor_C, T_indoor_C;
    uint16_t eev_steps;        /* 0..500 */
} bench_state_t;

/* 1kHz 慢任务:工况采集与保护 */
void bench_slow_task(bench_state_t *s) {
    s->Ps_MPa = adc_to_pressure(adc_low_side_channel);
    s->Pd_MPa = adc_to_pressure(adc_high_side_channel);
    s->Tsuct_C = ntc_to_temp(adc_suction_channel);
    s->Tdisch_C = ntc_to_temp(adc_discharge_channel);

    /* 反查饱和温度(查表 / Antoine 反推) */
    s->Te_C = sat_temp_from_p(s->Ps_MPa, REFRIGERANT);
    s->Tc_C = sat_temp_from_p(s->Pd_MPa, REFRIGERANT);
    s->SH_K = s->Tsuct_C - s->Te_C;
    s->SC_K = s->Tc_C - ntc_to_temp(adc_subcool_channel);

    /* 排气温度保护 */
    if (s->Tdisch_C > 115.0f) {
        emergency_stop("DISCHARGE_OVERTEMP");
    } else if (s->Tdisch_C > 105.0f) {
        derate_rpm_target(0.85f);
    }

    /* 高压保护 */
    if (s->Pd_MPa > pd_threshold_for_outdoor(s->T_outdoor_C)) {
        derate_rpm_target(0.7f);
    }
}

/* 100Hz EEV PI 控制:过热度跟踪 */
void eev_pi_task(bench_state_t *s) {
    static float integ = 0;
    const float SH_TARGET = 5.0f;       /* 5K 过热度 */
    float err = SH_TARGET - s->SH_K;
    integ += err * 0.01f;
    integ = clampf(integ, -50, 50);
    int16_t delta_steps = (int16_t)(2.0f * err + 5.0f * integ);

    /* SH 偏低(过湿)→ 关 EEV;SH 偏高(过干)→ 开 EEV */
    s->eev_steps = clamp_u16(s->eev_steps - delta_steps, 0, 500);
    eev_drive_steps(s->eev_steps);
}

/* 工况→频率映射(三维查表) */
uint16_t lookup_target_rpm(float T_outdoor, float T_indoor, float deltaT_target) {
    /* table[T_out][T_in][dT] → rpm */
    return rpm_lookup_3d(T_outdoor, T_indoor, deltaT_target);
}

/* 主循环 */
void main_loop(void) {
    bench_state_t bench = {0};
    while (1) {
        if (slow_tick_1khz()) bench_slow_task(&bench);
        if (slow_tick_100hz()) eev_pi_task(&bench);
        uint16_t target_rpm = lookup_target_rpm(
            bench.T_outdoor_C, bench.T_indoor_C, get_user_setpoint() - bench.T_indoor_C);
        speed_loop_set_target(target_rpm);
        /* FOC 快环(10kHz)独立由 ADC 中断驱动,不在这里 */
    }
}

下一步

随堂题

室外 35℃→45℃ 时 COP 主要因为什么下降?
  1. 压缩比变大同时容积效率下降 (正确)
  2. 冷媒比热变化
  3. 电机效率变化
  4. 室内温度变化
提示:T_c 升高 → P_d 升高 → 压比变大 → 多变压缩耗功增加 + 容积效率(η_v)下降,单位流量做的有用功更少。
排气温度逼近 110℃ 通常表明:
  1. 冷媒充注过多
  2. 过热度过低且压比过大 (正确)
  3. 冷凝压力偏低
  4. 电机绕组温度偏高
提示:排气温度 = 吸气温度 ×(压比^((n-1)/n))。SH 太高(吸气温度高)+ 高压比是双重原因。
电子膨胀阀 EEV 通常用什么作为反馈量?
  1. 排气温度
  2. 冷凝压力
  3. 吸气过热度 SH (正确)
  4. 吸气压力
提示:EEV 的核心目标是让蒸发器出口处于"刚刚气化干净 + 一点过热",即 SH 控在 3-7K。
工况突然加重(T_c 升高)时,FOC 模块的 Iq 给定应该如何变化?
  1. 不变,电机自动适应
  2. 降低 Iq
  3. 升高 Iq (正确)
  4. 反向 Iq
提示:T_c 升 → 压缩功 W_comp 升 → 机械扭矩升 → FOC 速度环为了维持转速必须增大 Iq。这就是闭环耦合。
COP=3.5 的物理含义是?
  1. 1 kW 电搬走 3.5 kW 的热 (正确)
  2. 电机效率 350%
  3. 冷媒流量是电流的 3.5 倍
  4. 蒸发温度是冷凝温度的 3.5 分之一
提示:COP = Q_c / W_input。注意它是"性能系数"不是"效率"——可以大于 1,因为能量来源还包括从环境吸收的热。